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

Static Clear semantics are under-defined and very confusing #7650

Open
teh-cmc opened this issue Oct 9, 2024 · 0 comments
Open

Static Clear semantics are under-defined and very confusing #7650

teh-cmc opened this issue Oct 9, 2024 · 0 comments

Comments

@teh-cmc
Copy link
Member

teh-cmc commented Oct 9, 2024

Take this for example:

import rerun as rr

rr.init("rerun_example_points3d", spawn=True)

rr.log("/", rr.Clear(recursive=True), static=True)

rr.set_time_sequence("frame", 1)
rr.log("/points", rr.Points3D([[0, 0, 0]], radii=0.5))

rr.set_time_sequence("frame", 2)
rr.log("/points", rr.Points3D([[0, 1, 0]], radii=0.5))

rr.set_time_sequence("frame", 3)
rr.log("/points", rr.Points3D([[0, 2, 0]], radii=0.5))

What would you expect to see in the viewer at frame=3?

If you guessed "nothing", you're right (although that doesn't seem very useful...):
image

What about frame=0..3?

If you guessed "3 points", you're right (although at this point you should be frantically scratching your head already):
image

Now what if I asked you about Dataframe(0..3)? What about Dataframe(0..3, SparseFill::LatestAtGlobal)?! 😱

Anyway, it's extremely niche, so definitely not the highest prio right now.

teh-cmc added a commit that referenced this issue Oct 10, 2024
Support clear semantics in the dataframe API.
Tombstones are never visible to end-users, only their effect.

Like every other Dataframe v2 feature PR, and following recommendations
from @jleibs, this prioritizes convenience of implementation over
everything else, for now.
All clear chunks are fetched, post-processed, and re-injected into the
view contents during init(), and then the streaming join runs as usual
after that.

Static clear semantics can get pretty unhinged, but that's A) not
specific to the dataframe API and B) so extremely niche that our time is
better spent on real-world problems right now:
- #7650 
- #7631 

---

- Fixes #7495
- Fixes #7414
- Fixes #7468
- Fixes #7493
- DNM: requires #7649
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant