Skip to content

Do not clear pending if points to the checkpoint#602

Merged
michaelklishin merged 1 commit intorabbitmq:mainfrom
deadtrickster:patch-1
Mar 26, 2026
Merged

Do not clear pending if points to the checkpoint#602
michaelklishin merged 1 commit intorabbitmq:mainfrom
deadtrickster:patch-1

Conversation

@deadtrickster
Copy link
Copy Markdown
Contributor

With Rav3 Tanzu DQ's log writer errors as soon as snapshot is requested. For example,

2026-03-25 22:50:44.857425+01:00 [warning] <0.1364.0> segment_writer: missing index 313868 in mem table for uid DQ_2F_57D0UL0CNGN2start index 313868 checking to see if UId has been unregistered
2026-03-25 22:50:44.857523+01:00 [error] <0.1364.0> segment_writer: uid <redacted> is registered, exiting...
2026-03-25 22:50:44.857629+01:00 [error] <0.1341.0> segment_writer: 1 failures encountered during segment flush. Errors: [{{<<"redacted">>,
2026-03-25 22:50:44.857629+01:00 [error] <0.1341.0>                                                                         [{#Ref<0.588533474.2887385091.231957>,
2026-03-25 22:50:44.857629+01:00 [error] <0.1341.0>                                                                           [{313868,
2026-03-25 22:50:44.857629+01:00 [error] <0.1341.0>                                                                             699049}]}]},
2026-03-25 22:50:44.857629+01:00 [error] <0.1341.0>                                                                        {missing_index,
2026-03-25 22:50:44.857629+01:00 [error] <0.1341.0>                                                                         <<"redacted">>,
2026-03-25 22:50:44.857629+01:00 [error] <0.1341.0>                                                                         313868}}]

initially I thought it is due to the [] being the default for live indexes, but looks like it is due to some race here, in complete_snapshot.

When a new checkpoint write is in progress and release_cursor fires promote_checkpoint, the pending field gets overwritten, and the subsequent checkpoint completion clobbers the snapshot's pending state.
@michaelklishin michaelklishin added this to the 3.1.1 milestone Mar 25, 2026
@michaelklishin michaelklishin merged commit 36233c1 into rabbitmq:main Mar 26, 2026
7 checks passed
@michaelklishin
Copy link
Copy Markdown
Contributor

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