This is an automated email from the ASF dual-hosted git repository.
kturner pushed a commit to branch elasticity
in repository https://gitbox.apache.org/repos/asf/accumulo.git
The following commit(s) were added to refs/heads/elasticity by this push:
new 3307e97e4f signal event after bulk import to trigger compaction check
(#4618)
3307e97e4f is described below
commit 3307e97e4faafb1173091693cc4c6b94f4f9eb75
Author: Keith Turner <[email protected]>
AuthorDate: Thu May 30 12:13:09 2024 -0400
signal event after bulk import to trigger compaction check (#4618)
Adds a singal event after a tablet successfully bulk imports into a
tablet. This event will tigger the tablet group watcher to check if the
tablet needs a compaction. This change will lower the latency for
compacting
newly arrived bulk import files which can benefit scans.
---
.../src/main/java/org/apache/accumulo/manager/TabletGroupWatcher.java | 2 +-
.../java/org/apache/accumulo/manager/tableOps/bulkVer2/LoadFiles.java | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git
a/server/manager/src/main/java/org/apache/accumulo/manager/TabletGroupWatcher.java
b/server/manager/src/main/java/org/apache/accumulo/manager/TabletGroupWatcher.java
index 9299aab1be..9b65fcdc57 100644
---
a/server/manager/src/main/java/org/apache/accumulo/manager/TabletGroupWatcher.java
+++
b/server/manager/src/main/java/org/apache/accumulo/manager/TabletGroupWatcher.java
@@ -264,7 +264,7 @@ abstract class TabletGroupWatcher extends
AccumuloDaemonThread {
}
EventHandler() {
- rangesToProcess = new ArrayBlockingQueue<>(3000);
+ rangesToProcess = new ArrayBlockingQueue<>(10000);
Threads
.createThread("TGW [" + store.name() + "] event range processor",
new RangeProccessor())
diff --git
a/server/manager/src/main/java/org/apache/accumulo/manager/tableOps/bulkVer2/LoadFiles.java
b/server/manager/src/main/java/org/apache/accumulo/manager/tableOps/bulkVer2/LoadFiles.java
index 1689ae4359..fa657eb9d8 100644
---
a/server/manager/src/main/java/org/apache/accumulo/manager/tableOps/bulkVer2/LoadFiles.java
+++
b/server/manager/src/main/java/org/apache/accumulo/manager/tableOps/bulkVer2/LoadFiles.java
@@ -294,6 +294,8 @@ class LoadFiles extends ManagerRepo {
results.forEach((extent, condResult) -> {
if (condResult.getStatus() == Status.ACCEPTED) {
loadingFiles.get(extent).forEach(file ->
TabletLogger.bulkImported(extent, file));
+ // Trigger a check for compaction now that new files were added via
bulk load
+ manager.getEventCoordinator().event(extent, "Bulk load completed on
tablet %s", extent);
} else {
seenFailure.set(true);
var metadata = condResult.readMetadata();