GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — [connectors] Release the Delta reader permit while paused by swanandx · Pull Request #7749 · feldera/feldera

Conversation

@swanandx

@swanandx swanandx commented Oct 30, 2026

Copy link
Copy Markdown
Member

Linked Issue

Closes #7746

Describe Manual Test Plan

A paused Delta reader now gives up its reader permit until it resumes, so a connector that has voted to commit can no longer block one that has not. The repro from the issue now runs in catchup and always mode; both fail without the fix and pass with it.

Checklist

  • Unit tests added/updated
  • Integration tests added/updated
  • Documentation updated
  • Changelog updated

Breaking Changes?

Mark if you think the answer is yes for any of these components:

  • OpenAPI / REST HTTP API / feldera-types / manager (What is a breaking change?)
  • Feldera SQL (Syntax, Semantics)
  • feldera-sqllib (incl. dependencies fxp, etc.) (What is a breaking change?)
  • Python SDK (What is a breaking change?)
  • fda (CLI arguments)
  • Adapters (including configuration)
  • Storage Format / Checkpoints
  • Others (specify)

Describe Incompatible Changes

None.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@swanandx
swanandx requested a review from ryzhyk October 30, 2026 18:14
ryzhyk
ryzhyk approved these changes Oct 30, 2026
View reviewed changes
@swanandx
swanandx enabled auto-merge October 30, 2026 18:44
@mythical-fred-oss

mythical-fred-oss Bot commented Oct 30, 2026

Copy link
Copy Markdown
Contributor

LGTM. The fix is narrow and correct. A paused reader now releases its DELTA_READER_SEMAPHORE permit while it waits in wait_running and acquires one again when it resumes. execute_df_inner is the only place that acquires the permit, so no other path can deadlock this way.

What I ran Result
cargo test -p static-connectors --test connector_suites paused_reader_holds_permit, debug build, 5 runs ✅ 2/2 every run
The same, with all 80 cores busy, 3 runs ✅ 2/2 every run (~43 s)
The same, release build (as CI runs it), 8 runs ✅ 2/2 every run (~4.6 s)
The same, with the input.rs change reverted ❌ both fail: "transaction did not commit within 60000 ms"
connector_suites integrated::delta_table::, release build ✅ 181 passed, 1 ignored
pre-commit run --files <changed files> ✅

Gates: the PR adds an integration test that fails without the fix. The test showed no flakiness in debug, release or loaded runs. It also has a guard (light_last < light_target) that names the cause if the deadlock setup ever fails to happen. The commit message is good. Nothing is user-visible, so no docs are needed.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@swanandx @anandbraman
[connectors] Release the Delta reader permit while paused
ae7d172
A paused Delta reader kept its reader permit. A connector that voted
to commit is not drained, so it stays paused, and a connector that
still needs a permit waits forever. Both catchup and always modes hang.

Co-authored-by: Anand Raman <[email protected]>
Signed-off-by: Swanand Mulay <[email protected]>
@swanandx
swanandx force-pushed the issue7746 branch from f730f8d to ae7d172 Compare October 30, 2026 18:57
@swanandx
swanandx disabled auto-merge October 30, 2026 19:08
@swanandx
swanandx added this pull request to the merge queue Oct 30, 2026
Merged via the queue into main with commit d0eac3f Oct 31, 2026
1 check passed

Uh oh!

There was an error while loading. Please reload this page.

@swanandx
swanandx deleted the issue7746 branch October 31, 2026 00:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@ryzhyk ryzhyk ryzhyk approved these changes

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

[connectors] Delta catch-up transaction deadlocks when paused readers hold reader permits

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@swanandx @ryzhyk
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.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.