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

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

commit 8ed6dbad90ed9e37e6e33b2676032b5f80dc1ce0
Merge: acc8746d2e 0e7417d036
Author: Keith Turner <ktur...@apache.org>
AuthorDate: Wed Jul 10 15:18:32 2024 -0400

    Merge branch '2.1'

 .../accumulo/core/clientImpl/ClientContext.java    |  4 +--
 .../core/clientImpl/ConditionalWriterImpl.java     | 10 ++++++-
 .../accumulo/tserver/tablet/CompactableImpl.java   |  2 +-
 .../apache/accumulo/test/ConditionalWriterIT.java  | 34 ++++++++++++++++++++++
 4 files changed, 45 insertions(+), 5 deletions(-)

diff --cc 
core/src/main/java/org/apache/accumulo/core/clientImpl/ConditionalWriterImpl.java
index 94e9ff8a73,cb7675196c..654135a852
--- 
a/core/src/main/java/org/apache/accumulo/core/clientImpl/ConditionalWriterImpl.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/clientImpl/ConditionalWriterImpl.java
@@@ -87,24 -90,25 +87,26 @@@ import org.apache.thrift.transport.TTra
  import org.slf4j.Logger;
  import org.slf4j.LoggerFactory;
  
+ import com.google.common.annotations.VisibleForTesting;
 +import com.google.common.net.HostAndPort;
  
- class ConditionalWriterImpl implements ConditionalWriter {
+ public class ConditionalWriterImpl implements ConditionalWriter {
  
    private static final Logger log = 
LoggerFactory.getLogger(ConditionalWriterImpl.class);
  
    private static final int MAX_SLEEP = 30000;
  
 -  private Authorizations auths;
 -  private VisibilityEvaluator ve;
 -  private Map<Text,Boolean> cache = Collections.synchronizedMap(new 
LRUMap<>(1000));
 +  private final Authorizations auths;
 +  private final AccessEvaluator accessEvaluator;
 +  private final Map<Text,Boolean> cache = Collections.synchronizedMap(new 
LRUMap<>(1000));
    private final ClientContext context;
 -  private TabletLocator locator;
 +  private final TabletLocator locator;
    private final TableId tableId;
    private final String tableName;
 -  private long timeout;
 +  private final long timeout;
    private final Durability durability;
    private final String classLoaderContext;
+   private final ConditionalWriterConfig config;
  
    private static class ServerQueue {
      BlockingQueue<TabletServerMutations<QCMutation>> queue = new 
LinkedBlockingQueue<>();
@@@ -370,9 -374,10 +372,10 @@@
  
    ConditionalWriterImpl(ClientContext context, TableId tableId, String 
tableName,
        ConditionalWriterConfig config) {
+     this.config = config;
      this.context = context;
      this.auths = config.getAuthorizations();
 -    this.ve = new VisibilityEvaluator(config.getAuthorizations());
 +    this.accessEvaluator = 
AccessEvaluator.of(config.getAuthorizations().toAccessAuthorizations());
      this.threadPool = context.threadPools().createScheduledExecutorService(
          config.getMaxWriteThreads(), this.getClass().getSimpleName());
      this.locator = new SyncingTabletLocator(context, tableId);

Reply via email to