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

Clear logic needs to be handled by the store and/or query engine #6454

Closed
teh-cmc opened this issue May 29, 2024 · 0 comments · Fixed by #6586
Closed

Clear logic needs to be handled by the store and/or query engine #6454

teh-cmc opened this issue May 29, 2024 · 0 comments · Fixed by #6586
Assignees
Labels
🔩 data model ⛃ re_datastore affects the datastore itself

Comments

@teh-cmc
Copy link
Member

teh-cmc commented May 29, 2024

Clears (as in log(rr.Clear())) are currently implemented using the very ad-hoc write cascades in EntityDb.

This was never great, and it's likely to become much worse as we move the store to disk, expose APIs to read data back, etc.

I haven't put any thought into it, but it should probably be possible to resolve those clears at query time, directly within re_data_store or re_query, at the cost of a few extra latest-at queries (one per parent in the hierarchy), which really shouldnt be an issue.

Even GC should be manageable by keeping all chunks that contain a Clear component as long as possibly necessary.

@teh-cmc teh-cmc added ⛃ re_datastore affects the datastore itself 🔩 data model labels May 29, 2024
@teh-cmc teh-cmc changed the title Clear logic needs to be handle by the store and/or query engine Clear logic needs to be handled by the store and/or query engine May 29, 2024
@teh-cmc teh-cmc self-assigned this Jun 3, 2024
teh-cmc added a commit that referenced this issue Jul 4, 2024
Resolves pending clears at query time, rather than through write
cascades.

Only works for latest-at queries for now. We'll take care of range
queries once the deserialization cache has been removed, it's just not
worth dealing with all the extra complexity at the moment.
The only visible change for users is that the "scalar plot hole" feature
doesn't work anymore.

- Fixes #6454
- Fixes #4220
- Fixes #3287
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🔩 data model ⛃ re_datastore affects the datastore itself
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant