Draft
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #4051 +/- ##
==========================================
- Coverage 85.90% 85.71% -0.20%
==========================================
Files 51 51
Lines 3399 3465 +66
Branches 610 612 +2
==========================================
+ Hits 2920 2970 +50
- Misses 477 493 +16
Partials 2 2
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Contributor
|
🏋️ Load test triggered for 38e4688. Results will be posted here when complete. |
Contributor
✅ Deploy Preview for electric-next ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
c7da8bb to
f33c781
Compare
Contributor
|
🏋️ Load test triggered for f33c781. Results will be posted here when complete. |
Contributor
|
🏋️ Load test triggered for 6715aea. Results will be posted here when complete. |
Contributor
Contributor
6669eb8 to
a1e0fc1
Compare
226f9b3 to
203f4fc
Compare
Add active_conditions support to the sync protocol as a backward-compatible change, preparing for OR/NOT in WHERE clauses. Elixir client (from #3791): - Tags become {position, hash} tuples with slash-delimited wire format - active_conditions tracking and DNF visibility evaluation - disjunct_positions derived once per shape, shared across keys Server (minimal changes for simple case): - Add active_conditions field to NewRecord/UpdatedRecord/DeletedRecord - Include active_conditions in JSON headers when present - Compute active_conditions: [true, ...] for shapes with subqueries - Include active_conditions in snapshot SQL queries - Read Electric-Protocol-Version header from HTTP requests Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Make SubqueryIndex ETS table :public and discoverable via persistent_term so consumers can write membership entries. Consumer seeds initial views into the index during initialize_subquery_runtime and marks shapes ready. Dynamic updates are applied by diffing routing views before/after each subquery state transition, with conservative projections during buffering (union for positive, intersection for negated dependencies). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace the unconditional subquery_shape_ids_for_table union in shapes_affected_by_record with reverse-index candidate lookup plus exact WHERE clause verification. Candidate shapes are verified against the full predicate using the SubqueryIndex-backed subquery_member? callback. Fallback shapes (not yet seeded by their consumer) pass through without verification for safety. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…Stage 6) Remove refs_fun from Filter struct and WhereCondition - subquery evaluation now uses SubqueryIndex-backed callbacks exclusively. Replace the unconditional subquery_shape_ids_for_table union with reverse-index candidate lookup in shapes_affected_by_record. Re-enable the previously skipped OR+subquery test which now works correctly with seeded index membership. Update existing tests to clarify they test fallback (unseeded) behavior. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ng move-in The subquery buffering state machine can accumulate transactions indefinitely while waiting for a move-in query to complete. Add a configurable limit (default 1000) that emits a :shutdown action when exceeded, terminating the shape and triggering a 409 must-refetch for clients. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
5999217 to
48f9d65
Compare
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.
No description provided.