keith-turner commented on code in PR #4761:
URL: https://github.com/apache/accumulo/pull/4761#discussion_r1693270304


##########
core/src/main/java/org/apache/accumulo/core/iterators/SynchronizedServerFilter.java:
##########
@@ -48,13 +49,19 @@ public 
SynchronizedServerFilter(SortedKeyValueIterator<Key,Value> source) {
 
   @Override
   public synchronized void next() throws IOException {
+    if (Thread.interrupted()) {

Review Comment:
   > Looking at NativeMap and SortedMapIterator, it appears the pattern is to 
check the interrupt on every seek and every 100th next.
   
   What about checking the thread interrupt status in those places and in 
RFile?  That same places where the boolean is checked, those places are meant 
to run less frequently.  A long long time ago I did performance test and could 
see differences in the number of key values per second read depending on how 
frequently the volatile was checked (suspected it was interfering w/ the 
processor cache, but was not sure).  The check of the atomic boolean in RFile 
is done when a new data block is read so that is naturally less frequent.  
NativeMap code does the periodic check thing you mentioned.



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