From 8cc2d81264c6089ae86fc25a9f7e6e75114d3590 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Tue, 17 Mar 2026 15:21:14 +0200 Subject: [PATCH] server : fix ctx checkpoint invalidation (#20671) --- tools/server/server-context.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/server/server-context.cpp b/tools/server/server-context.cpp index c47ad876cb..05d6da1006 100644 --- a/tools/server/server-context.cpp +++ b/tools/server/server-context.cpp @@ -2402,11 +2402,11 @@ private: } { - // erase any checkpoints with pos_min > pos_min_thold + // erase any checkpoints with pos_max > pos_next for (auto it = slot.prompt.checkpoints.begin(); it != slot.prompt.checkpoints.end();) { const auto & cur = *it; - if (cur.pos_min > pos_min_thold) { - SLT_WRN(slot, "erased invalidated context checkpoint (pos_min = %d, pos_max = %d, n_tokens = %" PRId64 ", n_swa = %d, size = %.3f MiB)\n", cur.pos_min, cur.pos_max, cur.n_tokens, n_swa, (float) cur.data.size() / 1024 / 1024); + if (cur.pos_max > pos_next) { + SLT_WRN(slot, "erased invalidated context checkpoint (pos_min = %d, pos_max = %d, n_tokens = %" PRId64 ", n_swa = %d, pos_next = %d, size = %.3f MiB)\n", cur.pos_min, cur.pos_max, cur.n_tokens, n_swa, pos_next, (float) cur.data.size() / 1024 / 1024); it = slot.prompt.checkpoints.erase(it); } else { ++it;