Skip to content

fix(sqs): do not treat FIFO empty receives as drained under deferred ack - #116

Merged
Divyanshu Tiwari (divyanshu-tiwari) merged 2 commits into
mainfrom
fix/sqs-fifo-exit-on-empty
Sep 8, 2026
Merged

fix(sqs): do not treat FIFO empty receives as drained under deferred ack#116
Divyanshu Tiwari (divyanshu-tiwari) merged 2 commits into
mainfrom
fix/sqs-fifo-exit-on-empty

Conversation

@divyanshu-tiwari

Copy link
Copy Markdown
Contributor

Summary

  • Deferred ack leaves SQS FIFO message groups blocked until receipts are deleted, so the next ReceiveMessage can return nothing while the queue still holds work.
  • exit_on_empty now skips that empty poll on .fifo queues while this task still holds outstanding receipts; after deletes, the next poll either returns the next batch or a true empty.
  • Unbounded join on a FIFO source keeps polling instead of reporting success with leftovers; set a join flush limit as before.

Test plan

  • FIFO queue, one message group, more than max_messages bodies, exit_on_empty: true, downstream that completes (not an unbounded join): run drains the queue instead of stopping after the first batch
  • Standard queue exit_on_empty still stops on the first empty receive
  • Unbounded join on FIFO no longer exits successfully with messages left behind (run keeps polling until a flush limit is set or the process is stopped)

…are outstanding

Deferred ack leaves FIFO message groups blocked until deletes land, so the next ReceiveMessage can return nothing while the queue still holds work. exit_on_empty now waits out those receipts before stopping.
Drop the duplicated outstanding-field note, keep the FIFO constraint on shouldExitOnEmpty, and remove old-vs-new framing from the join README.
@divyanshu-tiwari
Divyanshu Tiwari (divyanshu-tiwari) merged commit 3cded80 into main Sep 8, 2026
7 checks passed
@divyanshu-tiwari
Divyanshu Tiwari (divyanshu-tiwari) deleted the fix/sqs-fifo-exit-on-empty branch September 8, 2026 08:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants