Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Site: parallelise meter reading #15372

Merged
merged 7 commits into from
Oct 3, 2024
Merged

Site: parallelise meter reading #15372

merged 7 commits into from
Oct 3, 2024

Conversation

andig
Copy link
Member

@andig andig commented Aug 13, 2024

/cc @Herbert23 please give it a try, remember to test with the -race build to catch any concurrency problems.

Note this PR might swallow a secondary problem in the the errgroup if more than one error occurs and will only error on required measurements, i.e. power.

@andig andig added the infrastructure Basic functionality label Aug 13, 2024
@Herbert23
Copy link
Contributor

@andig build with race and tested with 6 TQ-EM420, one SMA Inverter and 4 Bender.
In ~10 min testing there was one i/o timeout an no other errors.

As far as i understand this PR "only" parallelises the call to the seperate usages of EMs, but every EM within one usage is still updated synchronously one after each other, isn´t it?

@andig
Copy link
Member Author

andig commented Aug 14, 2024

That's true. Idea was that for the typical modbus meter the measurements would all be collected sequentially as long as you don't need to fallback on backoff. Next step would be parallelising the individual meters per category. For loadpoints that was already done.

@andig andig marked this pull request as draft August 14, 2024 18:42
@andig andig added the backlog Things to do later label Aug 15, 2024
@andig andig marked this pull request as ready for review October 3, 2024 10:50
@andig andig merged commit 31f2df2 into master Oct 3, 2024
7 checks passed
@andig andig deleted the feat/parallel-meter branch October 3, 2024 11:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlog Things to do later infrastructure Basic functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants