Files
EOS/config.yaml
Bobby Noelte 2ed04d5573 fix: db compaction run (#1156)
These fixes were taken from https://github.com/arneman/EOS/tree/refactor/economic-objective.

1. Fix compaction job registration bug in eos.py:
   - compact_eos_database was registered with save_eos_database function
   - Now correctly calls compact_eos_database()
   - Root cause: compaction/vacuum never ran, allowing records to grow unbounded

2. Optimize db_iterate_records() from O(n) to O(log n):
   - Previous: linear scan from index 0 for every key_to_array() call
   - Now: uses bisect_left on _db_sorted_timestamps to skip to start position
   - Critical for large datasets: 9400 measurement records → 94s/call overhead → 5 calls/optimization

3. Reduce compaction_interval_sec default from 604800s (7 days) to 3600s (1 hour):
   - With 7-day interval: 65000 records accumulate before first cleanup
   - Bridge pushes ~1 record/9s (grid_export_emr)
   - Hourly compaction + 2h data window → stable ~950 records

Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
2026-07-20 12:59:08 +02:00

58 lines
1.2 KiB
YAML

# Home Assistant - Add-on Configuration
# -------------------------------------
# https://developers.home-assistant.io/docs/add-ons/configuration#add-on-configuration
#
# The Akkudoktor-EOS add-on repo is special because there is only one add-on and it is in
# the root directory (no add-on folder as usual).
name: "Akkudoktor-EOS"
version: "0.3.0.dev2607200446185246"
slug: "eos"
description: "Akkudoktor-EOS add-on"
url: "https://github.com/Akkudoktor-EOS/EOS"
arch:
- aarch64
- amd64
startup: "application"
init: false
boot: "auto"
# Map home assistant persistent folders
# /data is automatically mapped - do not list here
map:
- share:rw
- config:rw
# API access
homeassistant: true
homeassistant_api: true
# Ports exposed by the add-on
ports:
8503/tcp: 8503
# 8504/tcp: 8504
ports_description:
8503/tcp: "EOS REST server"
# 8504/tcp: "EOSdash dashboard server"
# EOSdash interface (if not ingress)
# webui: "http://[HOST]:[PORT:8504]"
# EOSdash by ingress
ingress: true
ingress_port: 8504
ingress_stream: true
panel_icon: "mdi:web"
# EOS uses several directories under /data - config, cache, output
backup_exclude:
- /data/cache
- /data/output
# We do not use options
options: {}
schema: {}