Repository navigation
Conversation
antiguru
commented
Oct 29, 2026
|
|
||
| /// Sets the tick interval of the introspection collections. | ||
| /// | ||
| /// NOTE: The logging interval is a replica setting, but the collections exist once per |
Member
Author
There was a problem hiding this comment.
The introspection internal can be different between replicas in a cluster, and that's ok. Users should use replica-targeted queries to access the data, which makes the observation independent of other replicas. A per-replica recording of introspection freshness makes sense, but the global aggregation is not meaningful.
This is only a small wrinkle and can be documented as such, but doesn't need to be solved in code.
| shared: SharedCollectionState::new(as_of), | ||
| time_dependence: Some(TimeDependence::default()), | ||
| // Until a replica with logging is added, assume the default interval. | ||
| freshness_tree: Some(logging_freshness_tree(Duration::from_secs(1))), |
Member
Author
There was a problem hiding this comment.
Users the constant we use elsewhere instead of 1.
antiguru
force-pushed
the
freshness/trees
branch
from
October 29, 2026 07:46
cc1cc9a to
ca4e492
Compare
antiguru
force-pushed
the
freshness/trees
branch
2 times, most recently
from
October 29, 2026 20:20
14cda1e to
e3526a9
Compare
antiguru
force-pushed
the
freshness/trees
branch
from
October 30, 2026 09:24
e3526a9 to
057e6ac
Compare
antiguru
force-pushed
the
freshness/trees
branch
from
October 30, 2026 09:51
057e6ac to
f9de38a
Compare
StorageCollections keeps the tick interval of each ingestion, updates it when an ingestion is altered, and exposes it through a live TickerLookup. Storage collections and compute collections carry a FreshnessTree next to their time dependence. Compute builds it with the same import walk as time dependence. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LD5gyKhqBoA2DEzJk8jR1R
Extract the walk of determine_freshness_tree into a pure function over lookups and test used-import filtering, compute-over-storage precedence, introspection leaves, and refresh schedules. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LD5gyKhqBoA2DEzJk8jR1R
…efault Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LD5gyKhqBoA2DEzJk8jR1R
antiguru
force-pushed
the
freshness/trees
branch
from
October 31, 2026 19:53
f9de38a to
a116574
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Builds a freshness tree per collection in both controllers, next to the existing
TimeDependence, which stays byte-identical. Leaves resolve tick intervals live throughStorageCollections, soALTER SOURCE ... TIMESTAMP INTERVALtakes effect at the next observation without rebuilding dependents.Part of P-CPU-328, design in #40320. Recording and reporting are behind
enable_wallclock_freshness_recordingandenable_wallclock_freshness_reporting, both off in production, so this changes nothing users see.🤖 Generated with Claude Code
https://claude.ai/code/session_01LD5gyKhqBoA2DEzJk8jR1R