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

performance degradation LDES Client + Repository materialiser #660

Closed
KVerduyn opened this issue Jul 4, 2024 · 1 comment · Fixed by #666
Closed

performance degradation LDES Client + Repository materialiser #660

KVerduyn opened this issue Jul 4, 2024 · 1 comment · Fixed by #666
Assignees
Labels
bug Something isn't working performance
Milestone

Comments

@KVerduyn
Copy link

KVerduyn commented Jul 4, 2024

Performance of the LDIO docker container is slowing down, with excessive memory consumption (10GB+), resulting in docker container dropping out due to heap space isues. Failure is after +/- 5 hours
Two pipelines are set up, one from geomobility, one from telraam.
Last Logfile is attached.

System is running on a hetzner server with 16GB memory on ubuntu linux, shared cpu.

LDES Client.zip

_LDES_Client_Telraam_logs-2.txt

@rorlic
Copy link
Contributor

rorlic commented Jul 5, 2024

The issue can be reproduced with the attached configuration (gh-issue-660.zip). The problem lies in the repository materializer (Ldio:RepositoryMaterialiser) because the issue is none existing when using a no-op output (Ldio:NoopOut).

The left part of the graph shows the memory usage with the no-op output. On the right is the heap usage when having both pipelines output to a graph DB using the repository materializer:

image

The beahviour is most-likely due to the repository materializer components using the same graph DB connection. This results is one of the pipelines not being able to send the output to the graph DB. The following queries can be used to check the number of received version objects:

select (Count(?S) as ?telling) FROM <http://geomobility.eu/> where { ?S a <https://implementatie.data.vlaanderen.be/ns/vsds-verkeersmetingen#Verkeerstelling> . }
select (Count(?S) as ?telling) FROM <http://telraam.net/> where { ?S a <https://implementatie.data.vlaanderen.be/ns/vsds-verkeersmetingen#Verkeerstelling> . }

We noticed another (smaller) issue while investigating the above: the output counters are incremented before the members are actually received by the graph DB. This results in a mismatch of the above counts and the prometheus ldio_data_out_total counters. See github issue #661.

@Yalz Yalz added bug Something isn't working performance and removed needs triage Issue needs to be evaluated by team labels Jul 5, 2024
@Yalz Yalz linked a pull request Jul 23, 2024 that will close this issue
@Yalz Yalz added this to the LDI 2.9.0 milestone Sep 10, 2024
@Yalz Yalz closed this as completed in 5aa2f97 Sep 20, 2024
@github-project-automation github-project-automation bot moved this from 📋 Backlog to 👀 In review in VSDS Backlog Sep 20, 2024
@Yalz Yalz moved this from 👀 In review to ✅ Done in VSDS Backlog Sep 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working performance
Projects
Archived in project
3 participants