dlmarion commented on PR #3187:
URL: https://github.com/apache/accumulo/pull/3187#issuecomment-1420627043

   > I haven't seen any reason even proposed, least of all a substantially 
compelling one.
   
   This was something that a user noticed their client waiting on, and not 
performing scans, when the user thought scans should have been running.
   
   > My understanding is that the specific use case is consistency from the 
same client, to ensure that a previous write is visible on subsequent scans.
   > I don't believe this was for same client. The wait for write behavior is 
for the following case.
   > client does a write and then the client process dies
   > client process starts again and does a read, expecting to see anything it 
wrote before. However if the write is still in flight on the tserver side it 
may not see it.
   
   My understanding of the use-case for waiting for writes is you have an 
application running on a host, the application 
    dies and is restarted, so you want the application to wait for writes to 
finish before reading. The current implementation makes several assumptions:
   
     1. All user applications both read and write data.
     2. All newly started applications are able to wait for some unknown amount 
of time for writes to complete before their scans can start.
     3. That in an environment where you could be constantly loading data, the 
application performing scans has an understanding of what consistent means.
   
   The thought here was to be able to bypass the wait condition in the client 
for user tables. I have no issue with the implementation being done at the 
table or scanner level. I think doing it as either a client property or scanner 
setting would be easier, as it would not involve any server side code to deal 
with the table property. Doing it at the client seemed sufficient to meet the 
needs of an application running in an environment where 1, 2, and 3 were not 
the case.


-- 
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.

To unsubscribe, e-mail: [email protected]

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

Reply via email to