merlimat commented on issue #6787:
URL: https://github.com/apache/pulsar/pull/6787#issuecomment-618228354


   > The behavior of a non-durable cursor reading a managed ledger should be 
close to the behavior of a file reader reading a file in the filesystem. If a 
reader is actively reading a file, the file is still accessible even it is 
deleted. If there is a reader active in the manager ledger, the data shouldn't 
be deleted if the reader hasn't read it. Otherwise, it is a violation of the 
correctness of a "distributed log".
   
   There is absolutely no violation of correctness. The contract is clear and 
it's that a reader can read all the data that is being retained based on max 
time and size. 
   
   Above the data retention thresholds, there is no guarantee to be able to 
read the data.
   
   That is very important, because a reader should not under any condition to 
get the backlog quota filled up. In particular a reader should not have impact 
over a producer. If we allow a reader to stay connected and have the data 
retained, then when would that be the limit? and what would be the action after 
the limit? 
   
   The current behavior is an accidental one, that in any case it's not 
something one can rely upon. (eg: a brief disconnection of the reader will 
cause the data to be deleted anyway). 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to