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

keith-turner pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/accumulo.git

commit b51f65155ec624922c099530fa2aa80900bdf925
Merge: 7be0b680e2 4f7bde196a
Author: Keith Turner <[email protected]>
AuthorDate: Wed Oct 28 18:21:38 2026 +0000

    Merge branch '2.1'

 .../apache/accumulo/core/client/rfile/RFileScannerBuilder.java    | 8 --------
 core/src/main/java/org/apache/accumulo/core/conf/Property.java    | 3 ++-
 2 files changed, 2 insertions(+), 9 deletions(-)

diff --cc 
core/src/main/java/org/apache/accumulo/core/client/rfile/RFileScannerBuilder.java
index 4e4966c811,1abb1ddb58..3f029fe3c7
--- 
a/core/src/main/java/org/apache/accumulo/core/client/rfile/RFileScannerBuilder.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/client/rfile/RFileScannerBuilder.java
@@@ -62,31 -58,22 +62,23 @@@ class RFileScannerBuilder implements RF
  
      RFileSource[] getSources() throws IOException {
        if (sources == null) {
 -        sources = new RFileSource[paths.length];
 -        for (int i = 0; i < paths.length; i++) {
 -          FileSystem fs = getFileSystem(paths[i]);
 -          FileStatus status = fs.getFileStatus(paths[i]);
 +        sources = new RFileSource[rFiles.length];
 +        for (int i = 0; i < rFiles.length; i++) {
 +          final Path path = rFiles[i].getPath();
 +          FileSystem fs = getFileSystem(path);
 +          FileStatus status = fs.getFileStatus(path);
            CompletableFuture<FSDataInputStream> future =
 -              fs.openFile(paths[i]).withFileStatus(status).build();
 +              fs.openFile(path).withFileStatus(status).build();
-           while (!future.isDone()) {
-             try {
-               Thread.sleep(10);
-             } catch (InterruptedException e) {
-               Thread.currentThread().interrupt();
-               throw new IOException("Interrupted while opening file: " + 
path, e);
-             }
-           }
            try {
              FSDataInputStream is = future.get();
 -            sources[i] = new RFileSource(is, status.getLen());
 +            sources[i] = new RFileSource(is, status.getLen(), 
rFiles[i].getFence());
            } catch (InterruptedException e) {
              Thread.currentThread().interrupt();
 -            throw new IOException("Interrupted while opening file: " + 
paths[i], e);
 +            throw new IOException("Interrupted while opening file: " + path, 
e);
            } catch (CancellationException e) {
 -            throw new IOException("Cancelled while opening file: " + 
paths[i], e);
 +            throw new IOException("Cancelled while opening file: " + path, e);
            } catch (ExecutionException e) {
 -            throw new IOException("Error trying to open file: " + paths[i], 
e);
 +            throw new IOException("Error trying to open file: " + path, e);
            }
          }
        } else {
diff --cc core/src/main/java/org/apache/accumulo/core/conf/Property.java
index 4c22f3114f,460c2dd0c7..abe0e9e250
--- a/core/src/main/java/org/apache/accumulo/core/conf/Property.java
+++ b/core/src/main/java/org/apache/accumulo/core/conf/Property.java
@@@ -468,10 -402,24 +468,11 @@@ public enum Property 
            + " the storage volumes if there are no other references to the 
files in the "
            + " metadata table. When deleting a lot of tables this optimization 
can be costly. "
            + " Setting this value to false will skip this optimization and the 
table directory "
-           + " cleanup will occur in the Garbage Collector instead.",
+           + " cleanup will occur in the Garbage Collector instead. The value 
should be false  "
+           + " when recursive deletes are not efficient on underlying 
volumes.",
        "2.1.5"),
 -  MANAGER_BULK_RETRIES("manager.bulk.retries", "3", PropertyType.COUNT,
 -      "The number of attempts to bulk import a RFile before giving up.", 
"1.4.0"),
 -  MANAGER_BULK_THREADPOOL_SIZE("manager.bulk.threadpool.size", "5", 
PropertyType.COUNT,
 -      "The number of threads to use when coordinating a bulk import.", 
"1.4.0"),
 -  MANAGER_BULK_THREADPOOL_TIMEOUT("manager.bulk.threadpool.timeout", "0s",
 -      PropertyType.TIMEDURATION,
 -      "The time after which bulk import threads terminate with no work 
available.  Zero (0) will keep the threads alive indefinitely.",
 -      "2.1.0"),
    MANAGER_BULK_TIMEOUT("manager.bulk.timeout", "5m", 
PropertyType.TIMEDURATION,
        "The time to wait for a tablet server to process a bulk import 
request.", "1.4.3"),
 -  MANAGER_BULK_MAX_CONNECTIONS("manager.bulk.connections.max", "8", 
PropertyType.COUNT,
 -      "The maximum number of connections the manager can make to a single 
tablet server for bulkv2 "
 -          + "load request.  For the case where a single tablet server has a 
lot of tablets for a bulk import "
 -          + "increasing this may help lower the time it takes to load those 
tablets.",
 -      "2.1.4"),
    MANAGER_RENAME_THREADS("manager.rename.threadpool.size", "20", 
PropertyType.COUNT,
        "The number of threads to use when renaming user files during table 
import or bulk ingest.",
        "2.1.0"),

Reply via email to