Sophie Blee-Goldman created KAFKA-7929:
------------------------------------------

             Summary: RocksDB Window Store allows segments to expire out from 
under iterator
                 Key: KAFKA-7929
                 URL: https://issues.apache.org/jira/browse/KAFKA-7929
             Project: Kafka
          Issue Type: Bug
            Reporter: Sophie Blee-Goldman


While we provide no guarantees about returning a snapshot when fetching from 
persistent window stores, we should at least not allow old segments to expire 
while an iterator over them remains open. This can result in unexpected 
behavior as the number of records returned depends on how quickly the results 
are read from an iterator, and you might even end up reading records with a gap 
in the middle.

 

For example, you might fetch records between t1 and t3, then immediately read 
the first record (t1) and do some processing. If enough time advances by the 
time you read the second record from the iterator, record t2 may have expired, 
so the next you would read is t3. Therefore you conclude there were records at 
t1 and t3 but nothing at t2, which is incorrect. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to