Skip to content

fix: use currOffset instead of nextOffset when delivery fails (ISSUE #9249)#10117

Open
Senrian wants to merge 3 commits intoapache:developfrom
Senrian:fix/issue-9249
Open

fix: use currOffset instead of nextOffset when delivery fails (ISSUE #9249)#10117
Senrian wants to merge 3 commits intoapache:developfrom
Senrian:fix/issue-9249

Conversation

@Senrian
Copy link

@Senrian Senrian commented Mar 2, 2026

Description

When message delivery fails in ScheduleMessageService.DeliverDelayedMessageTimerTask, the offset parameter passed to scheduleNextTimerTask was incorrect. Using nextOffset would skip the current message and potentially lose messages.

Fix

This fix changes to use currOffset to retry the current message immediately.

Verification

  • Compare with version 4.9.8 which correctly passes currOffset when delivery fails
  • The bug causes message loss when delivery fails

Fixes #9249

Senrian and others added 3 commits March 2, 2026 03:06
…pache#9249)

When message delivery fails in ScheduleMessageService.DeliverDelayedMessageTimerTask,
the offset parameter passed to scheduleNextTimerTask was incorrect.
Using nextOffset would skip the current message and potentially lose messages.
This fix changes to use currOffset to retry the current message immediately.

Compare with version 4.9.8 which uses nextOffset in the loop but correctly
passes currOffset when delivery fails.
@humkum
Copy link
Contributor

humkum commented Mar 3, 2026

The code doesn't match the PR description.

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.

When delivery fails, there is an incorrect start offset in the delivery settings

2 participants