Releases: electric-sql/electric
Releases · electric-sql/electric
@electric-sql/[email protected]
Patch Changes
- Updated dependencies [b377010]
- @electric-sql/[email protected]
@electric-sql/[email protected]
Patch Changes
- Updated dependencies [b377010]
- @electric-sql/[email protected]
@electric-sql/[email protected]
Patch Changes
- Updated dependencies [b377010]
- @electric-sql/[email protected]
@electric-sql/[email protected]
Patch Changes
-
b377010: Fix race condition where collections get stuck and stop reconnecting after rapid tab switching, particularly in Firefox.
Root cause: Two race conditions in the pause/resume state machine:
#resume()only checked forpausedstate, but#pause()sets an intermediatepause-requestedstate. When visibility changes rapidly,#resume()is called before the abort completes, leaving the stream stuck.- Stale abort completions could overwrite the
activestate after#resume()has already started a new request.
State machine flow:
Normal pause: active → pause() → pause-requested → abort completes → paused Interrupted pause (rapid tab switch): active → pause() → pause-requested → resume() → active ↑ ↑ abort starts resumes immediately, prevents stuck stateAdditional fix: Memory leak where visibility change event listeners were never removed, causing listener accumulation and potential interference from stale handlers.
@core/[email protected]
Patch Changes
- 58853d2: Remove shape storage metadata backup mechanism now that shape lazy loading is in place.
- 2747a71: Reduce consumers to a single process instead of a supervisor & children
- 6cbcbd6: Isolate call home reporter HTTP request to avoid interference from HTTP pool messages.
- e04af96: Return 503 instead of 400 in case generated column replication is not enabled for PG >=18.
- c4d0ea4: Update
otel_metric_exporterdependency to fix issues with event handler detachments. - 55c7ca1: Speed up shape metadata removal
- 4036fb6: Ensure per-shape file operations do not go through Erlang file server to avoid bottlenecks.
- 0c619e6: Support externally defined OTEL resource attributes in the metrics exported from ApplicationTelemetry and StackTelemetry
- 4df1fba: Ensure async deletion requests don't clog up as removal is taking place by moving removal to asynchronous task.
- e204906: Simplify API handling of snapshot errors that result in 503 responses.
- 68b686b: Avoid additionaly syscall when asynchronously deleting things by assuming uniqueness with strong fallback.
- d413fc5: Ensure consumer registry does not crash on a lookup when registry table is missing.
- 9eccb89: Allow snapshot query connection pool to queue up requests for connections for longer to smoothen out bursts.
- 526e379: Fix incorrect run_queue_length metric definition that prevented individual scheduler queue lengths from getting exported.
- f1a5f4f: Fix function arguments for ShapeCache.start_consumer_for_handle/2
- 84c7119: Instrument publication relation updates with appropriate telemetry.
- 766a375: Use longer timeout when waiting for snapshots to start in requests.
@electric-sql/[email protected]
Patch Changes
- Updated dependencies [5c24974]
- @electric-sql/[email protected]
@electric-sql/[email protected]
Patch Changes
- Updated dependencies [5c24974]
- @electric-sql/[email protected]
@electric-sql/[email protected]
Patch Changes
- Updated dependencies [5c24974]
- @electric-sql/[email protected]
@electric-sql/[email protected]
Patch Changes
- 5c24974: add
live_sseto ELECTRIC_PROTOCOL_QUERY_PARAMS
@core/[email protected]
Patch Changes
- c7ca1b1: Avoid going through Erlang central file server for deleting shapes through the AsyncDeleter interface.
- e473d16: Parse disk full and duplicate slot file PG errors.
- dab8b15: Guard against missing connection wherever the DB connection pool is used.
- 356b8f6: feat: re-intoroduce admission control
- 7d5da13: Parse Prisma incorrectly formatted Postgres errors into known DB connection errors.