This is an automated email from the ASF dual-hosted git repository.

ctubbsii pushed a commit to branch 2.1
in repository https://gitbox.apache.org/repos/asf/accumulo.git


The following commit(s) were added to refs/heads/2.1 by this push:
     new 8b31b4f905 Revert #3737's EOFException changes (#3789)
8b31b4f905 is described below

commit 8b31b4f905f2c7641e37ce59e2e8d31dc6c31880
Author: Christopher Tubbs <ctubb...@apache.org>
AuthorDate: Thu Sep 28 21:05:14 2023 -0400

    Revert #3737's EOFException changes (#3789)
    
    This commit partially reverts b1b2557f949e9212a1b1ca9b65f2d66c01a69edb
    from #3737, to restore the previous infinite retry behavior when an
    EOFException occurs in the transport. While this EOFException can be an
    indicator of a fatal exception that should not be retried, it also
    occurs during transient network failures, where a retry should occur. It
    is not possible to easily detect which of these two cases is ocurring.
    Since transient network failures are routine, and the fatal exception
    that caused the issue that #3737 tried to address has a workaround via
    configuration, this commit restores the previous behavior that assumes
    the exception is caused by a transient issue.
    
    This fixes #3762
    
    This fixes the issue in #3762, where the ManagerRepairsDualAssignmentIT
    intentionally triggered a transient network failure, and therefore
    triggered a scan to fail, causing the IT as a whole to fail.
---
 .../core/clientImpl/TabletServerBatchReaderIterator.java      | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git 
a/core/src/main/java/org/apache/accumulo/core/clientImpl/TabletServerBatchReaderIterator.java
 
b/core/src/main/java/org/apache/accumulo/core/clientImpl/TabletServerBatchReaderIterator.java
index b937f40a66..963a9f2c4a 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/clientImpl/TabletServerBatchReaderIterator.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/clientImpl/TabletServerBatchReaderIterator.java
@@ -22,7 +22,6 @@ import static java.util.concurrent.TimeUnit.MILLISECONDS;
 import static java.util.concurrent.TimeUnit.MINUTES;
 import static java.util.concurrent.TimeUnit.SECONDS;
 
-import java.io.EOFException;
 import java.io.IOException;
 import java.time.Duration;
 import java.util.AbstractMap.SimpleImmutableEntry;
@@ -408,8 +407,7 @@ public class TabletServerBatchReaderIterator implements 
Iterator<Entry<Key,Value
             failures.putAll(tsFailures);
           }
         }
-      } catch (EOFException e) {
-        fatalException = e;
+
       } catch (IOException e) {
         if 
(!TabletServerBatchReaderIterator.this.queryThreadPool.isShutdown()) {
           synchronized (failures) {
@@ -912,13 +910,6 @@ public class TabletServerBatchReaderIterator implements 
Iterator<Entry<Key,Value
     } catch (TTransportException e) {
       log.debug("Server : {} msg : {}", server, e.getMessage());
       timeoutTracker.errorOccured();
-      if (e.getType() == TTransportException.END_OF_FILE) {
-        // END_OF_FILE is used in TEndpointTransport when the
-        // maxMessageSize has been reached.
-        EOFException eof = new EOFException(e.getMessage());
-        eof.addSuppressed(e);
-        throw eof;
-      }
       throw new IOException(e);
     } catch (ThriftSecurityException e) {
       log.debug("Server : {} msg : {}", server, e.getMessage(), e);

Reply via email to