If reader's buffer is small enough, or preemption happens often enough, fill_buffer() may not make enough progress to advance _lower_bound. If also iteartors are constantly invalidated across fill_buffer() calls, the reader will not be able to make progress. See row_cache_test.cc::test_reading_progress_with_small_buffer_and_invalidation() for an examplary scenario. Also reproduced in debug-mode row_cache_test.cc::test_concurrent_reads_and_eviction Message-Id: <1528283957-16696-1-git-send-email-tgrabiec@scylladb.com>
29 KiB
29 KiB