mirror of
https://github.com/hanzoai/kafka.git
synced 2026-10-30 14:48:25 +00:00
The tail was read at the stream's LastSeq, which keeps naming the last message after it is deleted. Deleting a partition's last record set sent every bounds read into a forward scan capped at 10,000 messages, on every fetch, and past that cap the scan stopped short and produced a high watermark below the log's end. The tail is now asked for by subject, which returns the last message actually stored. A read that fails is now an error rather than a guess. Bounds the store did not answer for sent consumers to reset with OFFSET_OUT_OF_RANGE and let produce stamp offsets that already exist; now the fetch, list or produce reports the partition error and the client retries. The head is read with the same next-by-subject request as the scan behind it. Co-authored-by: Hanzo Dev <[email protected]>