summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/rabbit_variable_queue.erl5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/rabbit_variable_queue.erl b/src/rabbit_variable_queue.erl
index 7c5e527fdd..a3a33377cc 100644
--- a/src/rabbit_variable_queue.erl
+++ b/src/rabbit_variable_queue.erl
@@ -1269,8 +1269,11 @@ maybe_deltas_to_betas(State = #vqstate {
#delta { start_seq_id = DeltaSeqId,
count = DeltaCount,
end_seq_id = DeltaSeqIdEnd } = Delta,
+ DeltaSeqIdEnd1 =
+ lists:min([rabbit_queue_index:next_segment_boundary(DeltaSeqId),
+ DeltaSeqIdEnd]),
{List, DeltaSeqId1, IndexState1} =
- rabbit_queue_index:read(DeltaSeqId, DeltaSeqIdEnd, IndexState),
+ rabbit_queue_index:read(DeltaSeqId, DeltaSeqIdEnd1, IndexState),
{Q3a, IndexState2} = betas_from_index_entries(
List, TransientThreshold, IndexState1),
State1 = State #vqstate { index_state = IndexState2 },