-
Notifications
You must be signed in to change notification settings - Fork 2k
fix(blackhole sink): implement end-to-end acknowledgements #24283
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Addresses vectordotdev#24281 The blackhole sink was consuming events without updating finalizer status, causing sources that depend on acknowledgements (like aws_s3 with SQS) to never receive delivery confirmation. This resulted in SQS messages never being deleted and queue depth growing indefinitely. Added proper finalizer handling by taking finalizers from events and marking them as delivered after processing, matching the pattern used by other sinks like console.
|
All contributors have signed the CLA ✍️ ✅ |
|
I have read the CLA Document and I hereby sign the CLA |
|
recheck |
1 similar comment
|
recheck |
|
When could this be merged and a new version released? We're also affected by this issue and would hope for a fix soon. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice, thanks for this! Once merged we can also remove run_and_assert_nonsending_sink_compliance. I'll follow up in a separate PR
|
@Mr-iX Vector adheres to the release schedule tracked by https://calendar.vector.dev. In the meantime, you could always use nightlies (once this is merged). |
Summary
Addresses #24281
The blackhole sink was consuming events without updating finalizer status, causing sources that depend on acknowledgements (like aws_s3 with SQS) to never receive delivery confirmation. This resulted in SQS messages never being deleted and queue depth growing indefinitely.
Added proper finalizer handling by taking finalizers from events and marking them as delivered after processing, matching the pattern used by other sinks like console.
Vector configuration
How did you test this PR?
Change Type
Is this a breaking change?
Does this PR include user facing changes?
no-changeloglabel to this PR.References
Notes
@vectordotdev/vectorto reach out to us regarding this PR.pre-pushhook, please see this template.make fmtmake check-clippy(if there are failures it's possible some of them can be fixed withmake clippy-fix)make testgit merge origin masterandgit push.Cargo.lock), pleaserun
make build-licensesto regenerate the license inventory and commit the changes (if any). More details here.