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


The following commit(s) were added to refs/heads/main by this push:
     new 5bea0f6b26 Deprecates per table selector compactions (#4398)
5bea0f6b26 is described below

commit 5bea0f6b2674188b5c242e78e177d1a8c11ba4b7
Author: Keith Turner <ktur...@apache.org>
AuthorDate: Wed Apr 17 15:50:48 2024 -0400

    Deprecates per table selector compactions (#4398)
    
    See #4081 for details
---
 .../admin/compaction/CompactionSelector.java       |  3 +-
 .../org/apache/accumulo/core/conf/Property.java    |  5 ++-
 .../schema/ExternalCompactionMetadata.java         |  3 +-
 .../core/spi/compaction/CompactionKind.java        | 10 ++++++
 .../spi/compaction/DefaultCompactionPlanner.java   |  6 ++--
 .../util/compaction/CompactionJobPrioritizer.java  |  1 +
 .../compaction/DeprecatedCompactionKind.java}      | 25 ++++---------
 .../util/compaction/CompactionPrioritizerTest.java |  4 +--
 .../accumulo/tserver/tablet/CompactableImpl.java   | 41 +++++++++++++---------
 .../accumulo/tserver/tablet/CompactableUtils.java  | 17 +++++----
 .../apache/accumulo/tserver/tablet/MajCEnv.java    |  1 +
 .../tablet/CompactableImplFileManagerTest.java     |  2 +-
 .../tserver/tablet/CompactableImplTest.java        |  9 ++---
 .../test/compaction/CompactionExecutorIT.java      |  1 +
 14 files changed, 75 insertions(+), 53 deletions(-)

diff --git 
a/core/src/main/java/org/apache/accumulo/core/client/admin/compaction/CompactionSelector.java
 
b/core/src/main/java/org/apache/accumulo/core/client/admin/compaction/CompactionSelector.java
index 281372d43d..713a451dc0 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/client/admin/compaction/CompactionSelector.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/client/admin/compaction/CompactionSelector.java
@@ -36,7 +36,8 @@ import 
org.apache.accumulo.core.iterators.SortedKeyValueIterator;
 
 /**
  * This class selects which files a user compaction will compact. It can also 
be configured per
- * table to periodically select files to compact.
+ * table to periodically select files to compact, although per table 
functionality is deprecated.
+ * See {@link org.apache.accumulo.core.spi.compaction.CompactionKind#SELECTOR} 
for details.
  *
  * @since 2.1.0
  */
diff --git a/core/src/main/java/org/apache/accumulo/core/conf/Property.java 
b/core/src/main/java/org/apache/accumulo/core/conf/Property.java
index f86e4cad3b..7d48c05ae1 100644
--- a/core/src/main/java/org/apache/accumulo/core/conf/Property.java
+++ b/core/src/main/java/org/apache/accumulo/core/conf/Property.java
@@ -916,10 +916,13 @@ public enum Property {
           + "specified time.  If a system compaction cancels a hold and runs, 
then the user compaction"
           + " can reselect and hold files after the system compaction runs.",
       "2.1.0"),
+  @Deprecated(since = "3.1")
   TABLE_COMPACTION_SELECTOR("table.compaction.selector", "", 
PropertyType.CLASSNAME,
       "A configurable selector for a table that can periodically select file 
for mandatory "
-          + "compaction, even if the files do not meet the compaction ratio.",
+          + "compaction, even if the files do not meet the compaction ratio. 
This option was deprecated in "
+          + "3.1, see the CompactionKind.SELECTOR enum javadoc for details.",
       "2.1.0"),
+  @Deprecated(since = "3.1")
   TABLE_COMPACTION_SELECTOR_OPTS("table.compaction.selector.opts.", null, 
PropertyType.PREFIX,
       "Options for the table compaction dispatcher.", "2.1.0"),
   TABLE_COMPACTION_CONFIGURER("table.compaction.configurer", "", 
PropertyType.CLASSNAME,
diff --git 
a/core/src/main/java/org/apache/accumulo/core/metadata/schema/ExternalCompactionMetadata.java
 
b/core/src/main/java/org/apache/accumulo/core/metadata/schema/ExternalCompactionMetadata.java
index a5beddd7ad..4c7e4298ff 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/metadata/schema/ExternalCompactionMetadata.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/metadata/schema/ExternalCompactionMetadata.java
@@ -31,6 +31,7 @@ import org.apache.accumulo.core.metadata.StoredTabletFile;
 import org.apache.accumulo.core.spi.compaction.CompactionExecutorId;
 import org.apache.accumulo.core.spi.compaction.CompactionKind;
 import org.apache.accumulo.core.util.compaction.CompactionExecutorIdImpl;
+import org.apache.accumulo.core.util.compaction.DeprecatedCompactionKind;
 
 public class ExternalCompactionMetadata {
 
@@ -50,7 +51,7 @@ public class ExternalCompactionMetadata {
       CompactionExecutorId ceid, boolean propagateDeletes, boolean 
initiallySelectedAll,
       Long compactionId) {
     if (!initiallySelectedAll && !propagateDeletes
-        && (kind == CompactionKind.SELECTOR || kind == CompactionKind.USER)) {
+        && (kind == DeprecatedCompactionKind.SELECTOR || kind == 
CompactionKind.USER)) {
       throw new IllegalArgumentException(
           "When user or selector compactions do not propagate deletes, it's 
expected that all "
               + "files were selected initially.");
diff --git 
a/core/src/main/java/org/apache/accumulo/core/spi/compaction/CompactionKind.java
 
b/core/src/main/java/org/apache/accumulo/core/spi/compaction/CompactionKind.java
index 97e64216fc..32f0deac8f 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/spi/compaction/CompactionKind.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/spi/compaction/CompactionKind.java
@@ -18,6 +18,7 @@
  */
 package org.apache.accumulo.core.spi.compaction;
 
+import org.apache.accumulo.core.client.admin.CompactionConfig;
 import org.apache.accumulo.core.client.admin.compaction.CompactionSelector;
 
 /**
@@ -31,7 +32,16 @@ public enum CompactionKind {
   SYSTEM,
   /**
    * Set of files selected by a {@link CompactionSelector} configured for a 
table.
+   *
+   * @deprecated since 3.1. Use of selector compactions should be replaced 
with user compactions
+   *             initiated via
+   *             {@link 
org.apache.accumulo.core.client.admin.TableOperations#compact(String, 
CompactionConfig)}.
+   *             Everything that can be done with selector compactions can 
also be done with user
+   *             compactions. User compactions offer more control over when 
compactions run, the
+   *             range of data compacted, and the ability to cancel. Selector 
compactions offer none
+   *             of these features and were deprecated in favor of only 
offering user compactions.
    */
+  @Deprecated(since = "3.1")
   SELECTOR,
   /**
    * A user initiated a one time compaction using an Accumulo client.
diff --git 
a/core/src/main/java/org/apache/accumulo/core/spi/compaction/DefaultCompactionPlanner.java
 
b/core/src/main/java/org/apache/accumulo/core/spi/compaction/DefaultCompactionPlanner.java
index 82926c7c3f..ee07bc2fc0 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/spi/compaction/DefaultCompactionPlanner.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/spi/compaction/DefaultCompactionPlanner.java
@@ -39,6 +39,7 @@ import org.apache.accumulo.core.conf.ConfigurationTypeHelper;
 import org.apache.accumulo.core.conf.Property;
 import org.apache.accumulo.core.spi.common.ServiceEnvironment;
 import org.apache.accumulo.core.util.compaction.CompactionJobPrioritizer;
+import org.apache.accumulo.core.util.compaction.DeprecatedCompactionKind;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -339,7 +340,7 @@ public class DefaultCompactionPlanner implements 
CompactionPlanner {
       if (!group.isEmpty() && group.size() < params.getCandidates().size()
           && params.getCandidates().size() <= maxFilesToCompact
           && (params.getKind() == CompactionKind.USER
-              || params.getKind() == CompactionKind.SELECTOR)) {
+              || params.getKind() == DeprecatedCompactionKind.SELECTOR)) {
         // USER and SELECTOR compactions must eventually compact all files. 
When a subset of files
         // that meets the compaction ratio is selected, look ahead and see if 
the next compaction
         // would also meet the compaction ratio. If not then compact 
everything to avoid doing
@@ -384,7 +385,8 @@ public class DefaultCompactionPlanner implements 
CompactionPlanner {
     }
 
     if (group.isEmpty()) {
-      if ((params.getKind() == CompactionKind.USER || params.getKind() == 
CompactionKind.SELECTOR)
+      if ((params.getKind() == CompactionKind.USER
+          || params.getKind() == DeprecatedCompactionKind.SELECTOR)
           && params.getRunningCompactions().stream()
               .noneMatch(job -> job.getKind() == params.getKind())) {
         group = findMaximalRequiredSetToCompact(params.getCandidates(), 
maxFilesToCompact);
diff --git 
a/core/src/main/java/org/apache/accumulo/core/util/compaction/CompactionJobPrioritizer.java
 
b/core/src/main/java/org/apache/accumulo/core/util/compaction/CompactionJobPrioritizer.java
index 261349cb6f..039201b7c0 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/util/compaction/CompactionJobPrioritizer.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/util/compaction/CompactionJobPrioritizer.java
@@ -29,6 +29,7 @@ public class CompactionJobPrioritizer {
       Comparator.comparingInt(CompactionJob::getPriority)
           .thenComparingInt(job -> job.getFiles().size()).reversed();
 
+  @SuppressWarnings("deprecation")
   public static short createPriority(CompactionKind kind, int totalFiles, int 
compactingFiles) {
 
     int prio = totalFiles + compactingFiles;
diff --git 
a/core/src/main/java/org/apache/accumulo/core/spi/compaction/CompactionKind.java
 
b/core/src/main/java/org/apache/accumulo/core/util/compaction/DeprecatedCompactionKind.java
similarity index 62%
copy from 
core/src/main/java/org/apache/accumulo/core/spi/compaction/CompactionKind.java
copy to 
core/src/main/java/org/apache/accumulo/core/util/compaction/DeprecatedCompactionKind.java
index 97e64216fc..8b814b2d32 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/spi/compaction/CompactionKind.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/util/compaction/DeprecatedCompactionKind.java
@@ -16,25 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.accumulo.core.spi.compaction;
+package org.apache.accumulo.core.util.compaction;
 
-import org.apache.accumulo.core.client.admin.compaction.CompactionSelector;
+import org.apache.accumulo.core.spi.compaction.CompactionKind;
 
-/**
- * @since 2.1.0
- * @see org.apache.accumulo.core.spi.compaction
- */
-public enum CompactionKind {
-  /**
-   * A system initiated routine compaction.
-   */
-  SYSTEM,
-  /**
-   * Set of files selected by a {@link CompactionSelector} configured for a 
table.
-   */
-  SELECTOR,
-  /**
-   * A user initiated a one time compaction using an Accumulo client.
-   */
-  USER
+// The purpose of this class is to minimize the amount of code that has to 
suppress deprecation warnings.
+public class DeprecatedCompactionKind {
+  @SuppressWarnings("deprecation")
+  public static final CompactionKind SELECTOR = CompactionKind.SELECTOR;
 }
diff --git 
a/core/src/test/java/org/apache/accumulo/core/util/compaction/CompactionPrioritizerTest.java
 
b/core/src/test/java/org/apache/accumulo/core/util/compaction/CompactionPrioritizerTest.java
index 6d50f8ecb2..5eaad1df0b 100644
--- 
a/core/src/test/java/org/apache/accumulo/core/util/compaction/CompactionPrioritizerTest.java
+++ 
b/core/src/test/java/org/apache/accumulo/core/util/compaction/CompactionPrioritizerTest.java
@@ -74,8 +74,8 @@ public class CompactionPrioritizerTest {
     var j3 = createJob(CompactionKind.USER, "t-011", 11, 20);
     var j4 = createJob(CompactionKind.SYSTEM, "t-012", 11, 30);
     var j5 = createJob(CompactionKind.SYSTEM, "t-013", 5, 10);
-    var j8 = createJob(CompactionKind.SELECTOR, "t-014", 5, 21);
-    var j9 = createJob(CompactionKind.SELECTOR, "t-015", 7, 20);
+    var j8 = createJob(DeprecatedCompactionKind.SELECTOR, "t-014", 5, 21);
+    var j9 = createJob(DeprecatedCompactionKind.SELECTOR, "t-015", 7, 20);
 
     var expected = List.of(j2, j3, j1, j4, j9, j8, j5);
 
diff --git 
a/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/CompactableImpl.java
 
b/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/CompactableImpl.java
index 4d29f953eb..5d8c81ec73 100644
--- 
a/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/CompactableImpl.java
+++ 
b/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/CompactableImpl.java
@@ -65,6 +65,7 @@ import org.apache.accumulo.core.util.Pair;
 import org.apache.accumulo.core.util.compaction.CompactionExecutorIdImpl;
 import org.apache.accumulo.core.util.compaction.CompactionJobImpl;
 import org.apache.accumulo.core.util.compaction.CompactionServicesConfig;
+import org.apache.accumulo.core.util.compaction.DeprecatedCompactionKind;
 import org.apache.accumulo.core.util.ratelimit.RateLimiter;
 import org.apache.accumulo.server.ServiceEnvironmentImpl;
 import org.apache.accumulo.server.compaction.CompactionStats;
@@ -232,11 +233,13 @@ public class CompactableImpl implements Compactable {
 
     boolean initiateSelection(CompactionKind kind) {
 
-      Preconditions.checkArgument(kind == CompactionKind.SELECTOR || kind == 
CompactionKind.USER);
+      Preconditions
+          .checkArgument(kind == DeprecatedCompactionKind.SELECTOR || kind == 
CompactionKind.USER);
 
-      if (selectStatus == FileSelectionStatus.NOT_ACTIVE || (kind == 
CompactionKind.USER
-          && selectKind == CompactionKind.SELECTOR && 
noneRunning(CompactionKind.SELECTOR)
-          && selectStatus != FileSelectionStatus.SELECTING)) {
+      if (selectStatus == FileSelectionStatus.NOT_ACTIVE
+          || (kind == CompactionKind.USER && selectKind == 
DeprecatedCompactionKind.SELECTOR
+              && noneRunning(DeprecatedCompactionKind.SELECTOR)
+              && selectStatus != FileSelectionStatus.SELECTING)) {
         selectStatus = FileSelectionStatus.NEW;
         selectKind = kind;
         selectedFiles.clear();
@@ -299,6 +302,7 @@ public class CompactableImpl implements Compactable {
     /**
      * @return The set of tablet files that are candidates for compaction
      */
+    @SuppressWarnings("deprecation")
     Set<StoredTabletFile> getCandidates(Set<StoredTabletFile> currFiles, 
CompactionKind kind) {
 
       if (!currFiles.containsAll(allCompactingFiles)) {
@@ -411,7 +415,8 @@ public class CompactableImpl implements Compactable {
           return false;
         case SELECTED:
         case RESERVED: {
-          if (job.getKind() == CompactionKind.USER || job.getKind() == 
CompactionKind.SELECTOR) {
+          if (job.getKind() == CompactionKind.USER
+              || job.getKind() == DeprecatedCompactionKind.SELECTOR) {
             if (selectKind == job.getKind()) {
               if (!selectedFiles.containsAll(jobFiles)) {
                 log.trace("Ignoring {} compaction that does not contain 
selected files {} {} {}",
@@ -433,7 +438,8 @@ public class CompactableImpl implements Compactable {
         }
         case CANCELED:
         case NOT_ACTIVE: {
-          if (job.getKind() == CompactionKind.USER || job.getKind() == 
CompactionKind.SELECTOR) {
+          if (job.getKind() == CompactionKind.USER
+              || job.getKind() == DeprecatedCompactionKind.SELECTOR) {
             log.trace("Ignoring {} compaction because selectStatus is {} for 
{}", job.getKind(),
                 selectStatus, getExtent());
             return false;
@@ -470,16 +476,16 @@ public class CompactableImpl implements Compactable {
       Preconditions.checkArgument(!jobFiles.isEmpty());
       Preconditions.checkState(allCompactingFiles.removeAll(jobFiles));
 
-      if (successful
-          && (job.getKind() == CompactionKind.USER || job.getKind() == 
CompactionKind.SELECTOR)) {
+      if (successful && (job.getKind() == CompactionKind.USER
+          || job.getKind() == DeprecatedCompactionKind.SELECTOR)) {
         selectedCompactionCompleted(job, jobFiles, newFile);
       }
     }
 
     private void selectedCompactionCompleted(CompactionJob job, 
Set<StoredTabletFile> jobFiles,
         Optional<StoredTabletFile> newFile) {
-      Preconditions.checkArgument(
-          job.getKind() == CompactionKind.USER || job.getKind() == 
CompactionKind.SELECTOR);
+      Preconditions.checkArgument(job.getKind() == CompactionKind.USER
+          || job.getKind() == DeprecatedCompactionKind.SELECTOR);
       Preconditions.checkState(selectedFiles.containsAll(jobFiles));
       Preconditions.checkState((selectStatus == FileSelectionStatus.RESERVED
           || selectStatus == FileSelectionStatus.CANCELED) && selectKind == 
job.getKind());
@@ -536,7 +542,7 @@ public class CompactableImpl implements Compactable {
             tabletCompactionId.get().orElseThrow().getSecond());
         this.compactionConfig = 
tabletCompactionId.get().orElseThrow().getSecond();
         this.compactionId = tabletCompactionId.get().orElseThrow().getFirst();
-      } else if (extSelInfo.orElseThrow().selectKind == 
CompactionKind.SELECTOR) {
+      } else if (extSelInfo.orElseThrow().selectKind == 
DeprecatedCompactionKind.SELECTOR) {
         this.chelper =
             CompactableUtils.getHelper(extSelInfo.orElseThrow().selectKind, 
tablet, null, null);
       }
@@ -636,11 +642,11 @@ public class CompactableImpl implements Compactable {
   }
 
   private void initiateSelection(CompactionKind kind) {
-    if (kind != CompactionKind.SELECTOR) {
+    if (kind != DeprecatedCompactionKind.SELECTOR) {
       return;
     }
 
-    initiateSelection(CompactionKind.SELECTOR, null, null);
+    initiateSelection(DeprecatedCompactionKind.SELECTOR, null, null);
   }
 
   private void checkIfUserCompactionCanceled() {
@@ -721,7 +727,8 @@ public class CompactableImpl implements Compactable {
     for (Entry<ExternalCompactionId,ExternalCompactionMetadata> entry : 
extCompactions.entrySet()) {
       var ecMeta = entry.getValue();
 
-      if (ecMeta.getKind() != CompactionKind.USER && ecMeta.getKind() != 
CompactionKind.SELECTOR) {
+      if (ecMeta.getKind() != CompactionKind.USER
+          && ecMeta.getKind() != DeprecatedCompactionKind.SELECTOR) {
         continue;
       }
 
@@ -800,7 +807,7 @@ public class CompactableImpl implements Compactable {
       String reason = reasons.toString();
       extCompactions.entrySet().stream().filter(e -> {
         var kind = e.getValue().getKind();
-        return kind == CompactionKind.SELECTOR || kind == CompactionKind.USER;
+        return kind == DeprecatedCompactionKind.SELECTOR || kind == 
CompactionKind.USER;
       }).map(Entry::getKey).forEach(ecid -> 
externalCompactionsToRemove.putIfAbsent(ecid, reason));
       return Optional.empty();
     }
@@ -814,7 +821,8 @@ public class CompactableImpl implements Compactable {
 
   private void initiateSelection(CompactionKind kind, Long compactionId,
       CompactionConfig compactionConfig) {
-    Preconditions.checkArgument(kind == CompactionKind.USER || kind == 
CompactionKind.SELECTOR);
+    Preconditions
+        .checkArgument(kind == CompactionKind.USER || kind == 
DeprecatedCompactionKind.SELECTOR);
 
     var localHelper = CompactableUtils.getHelper(kind, tablet, compactionId, 
compactionConfig);
 
@@ -975,6 +983,7 @@ public class CompactableImpl implements Compactable {
    * that things have changed and there is no longer anything to do for the 
job. In this case
    * Optional.empty() is returned.
    */
+  @SuppressWarnings("deprecation")
   private Optional<CompactionInfo> 
reserveFilesForCompaction(CompactionServiceId service,
       CompactionJob job) {
     CompactionInfo cInfo = new CompactionInfo();
diff --git 
a/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/CompactableUtils.java
 
b/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/CompactableUtils.java
index c1d2a2c8a0..0cff077fbc 100644
--- 
a/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/CompactableUtils.java
+++ 
b/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/CompactableUtils.java
@@ -65,6 +65,7 @@ import org.apache.accumulo.core.summary.Gatherer;
 import org.apache.accumulo.core.summary.SummarizerFactory;
 import org.apache.accumulo.core.summary.SummaryCollection;
 import org.apache.accumulo.core.summary.SummaryReader;
+import org.apache.accumulo.core.util.compaction.DeprecatedCompactionKind;
 import org.apache.accumulo.server.ServiceEnvironmentImpl;
 import org.apache.accumulo.server.compaction.CompactionStats;
 import org.apache.accumulo.server.compaction.FileCompactor;
@@ -128,7 +129,7 @@ public class CompactableUtils {
 
       @Override
       public Set<CompactableFile> getSelectedFiles() {
-        if (kind == CompactionKind.USER || kind == CompactionKind.SELECTOR) {
+        if (kind == CompactionKind.USER || kind == 
DeprecatedCompactionKind.SELECTOR) {
           var dataFileSizes = tablet.getDatafileManager().getDatafileSizes();
           return selectedFiles.stream().map(f -> new CompactableFileImpl(f, 
dataFileSizes.get(f)))
               .collect(Collectors.toSet());
@@ -331,19 +332,23 @@ public class CompactableUtils {
     }
   }
 
+  @SuppressWarnings("deprecation")
+  private static final Property SELECTOR_PROP = 
Property.TABLE_COMPACTION_SELECTOR;
+  @SuppressWarnings("deprecation")
+  private static final Property SELECTOR_OPTS_PROP = 
Property.TABLE_COMPACTION_SELECTOR_OPTS;
+
   public static CompactionHelper getHelper(CompactionKind kind, Tablet tablet, 
Long compactionId,
       CompactionConfig compactionConfig) {
     if (kind == CompactionKind.USER) {
       return new UserCompactionHelper(compactionConfig, tablet, compactionId);
-    } else if (kind == CompactionKind.SELECTOR) {
+    } else if (kind == DeprecatedCompactionKind.SELECTOR) {
       var tconf = tablet.getTableConfiguration();
-      var selectorClassName = tconf.get(Property.TABLE_COMPACTION_SELECTOR);
+      var selectorClassName = tconf.get(SELECTOR_PROP);
 
       PluginConfig cselCfg = null;
 
       if (selectorClassName != null && !selectorClassName.isBlank()) {
-        var opts =
-            
tconf.getAllPropertiesWithPrefixStripped(Property.TABLE_COMPACTION_SELECTOR_OPTS);
+        var opts = 
tconf.getAllPropertiesWithPrefixStripped(SELECTOR_OPTS_PROP);
         cselCfg = new PluginConfig(selectorClassName, opts);
       }
 
@@ -361,7 +366,7 @@ public class CompactableUtils {
 
     Map<String,String> overrides = null;
 
-    if (kind == CompactionKind.USER || kind == CompactionKind.SELECTOR) {
+    if (kind == CompactionKind.USER || kind == 
DeprecatedCompactionKind.SELECTOR) {
       overrides = driver.getConfigOverrides(inputFiles, selectedFiles, kind);
     }
 
diff --git 
a/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/MajCEnv.java 
b/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/MajCEnv.java
index 8e2971da69..e81f98d3e9 100644
--- 
a/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/MajCEnv.java
+++ 
b/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/MajCEnv.java
@@ -81,6 +81,7 @@ public class MajCEnv implements FileCompactor.CompactionEnv {
   }
 
   @Override
+  @SuppressWarnings("deprecation")
   public TCompactionReason getReason() {
     switch (kind) {
       case USER:
diff --git 
a/server/tserver/src/test/java/org/apache/accumulo/tserver/tablet/CompactableImplFileManagerTest.java
 
b/server/tserver/src/test/java/org/apache/accumulo/tserver/tablet/CompactableImplFileManagerTest.java
index 3de380df9e..35d5119dfa 100644
--- 
a/server/tserver/src/test/java/org/apache/accumulo/tserver/tablet/CompactableImplFileManagerTest.java
+++ 
b/server/tserver/src/test/java/org/apache/accumulo/tserver/tablet/CompactableImplFileManagerTest.java
@@ -18,9 +18,9 @@
  */
 package org.apache.accumulo.tserver.tablet;
 
-import static org.apache.accumulo.core.spi.compaction.CompactionKind.SELECTOR;
 import static org.apache.accumulo.core.spi.compaction.CompactionKind.SYSTEM;
 import static org.apache.accumulo.core.spi.compaction.CompactionKind.USER;
+import static 
org.apache.accumulo.core.util.compaction.DeprecatedCompactionKind.SELECTOR;
 import static 
org.apache.accumulo.tserver.tablet.CompactableImplFileManagerTest.TestFileManager.SELECTION_EXPIRATION;
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
diff --git 
a/server/tserver/src/test/java/org/apache/accumulo/tserver/tablet/CompactableImplTest.java
 
b/server/tserver/src/test/java/org/apache/accumulo/tserver/tablet/CompactableImplTest.java
index ee6ac0a9b2..cddd2e1f03 100644
--- 
a/server/tserver/src/test/java/org/apache/accumulo/tserver/tablet/CompactableImplTest.java
+++ 
b/server/tserver/src/test/java/org/apache/accumulo/tserver/tablet/CompactableImplTest.java
@@ -35,6 +35,7 @@ import 
org.apache.accumulo.core.metadata.schema.ExternalCompactionMetadata;
 import org.apache.accumulo.core.spi.compaction.CompactionExecutorId;
 import org.apache.accumulo.core.spi.compaction.CompactionKind;
 import org.apache.accumulo.core.util.compaction.CompactionExecutorIdImpl;
+import org.apache.accumulo.core.util.compaction.DeprecatedCompactionKind;
 import org.junit.jupiter.api.Test;
 
 public class CompactableImplTest {
@@ -305,8 +306,8 @@ public class CompactableImplTest {
     var ecm1 = newECM(fileSet1, newFiles("F00003", "F00004"), 
CompactionKind.USER, true, true);
 
     var fileSet2 = newFiles("F00003", "F00004");
-    var ecm2 =
-        newECM(fileSet2, newFiles("F00001", "F00002"), 
CompactionKind.SELECTOR, true, true, null);
+    var ecm2 = newECM(fileSet2, newFiles("F00001", "F00002"), 
DeprecatedCompactionKind.SELECTOR,
+        true, true, null);
 
     var ecid1 = newEcid();
     var ecid2 = newEcid();
@@ -326,8 +327,8 @@ public class CompactableImplTest {
   @Test
   public void testSelectorWithCompactionId() {
     var fileSet1 = newFiles("F00001", "F00002");
-    var ecm1 =
-        newECM(fileSet1, newFiles("F00003", "F00004"), 
CompactionKind.SELECTOR, true, true, 5L);
+    var ecm1 = newECM(fileSet1, newFiles("F00003", "F00004"), 
DeprecatedCompactionKind.SELECTOR,
+        true, true, 5L);
 
     var ecid1 = newEcid();
 
diff --git 
a/test/src/main/java/org/apache/accumulo/test/compaction/CompactionExecutorIT.java
 
b/test/src/main/java/org/apache/accumulo/test/compaction/CompactionExecutorIT.java
index 45e0b20d08..ec9b22f25c 100644
--- 
a/test/src/main/java/org/apache/accumulo/test/compaction/CompactionExecutorIT.java
+++ 
b/test/src/main/java/org/apache/accumulo/test/compaction/CompactionExecutorIT.java
@@ -323,6 +323,7 @@ public class CompactionExecutorIT extends 
SharedMiniClusterBase {
   }
 
   @Test
+  @SuppressWarnings("deprecation")
   public void testTooManyDeletes() throws Exception {
     try (AccumuloClient client = 
Accumulo.newClient().from(getClientProps()).build()) {
       Map<String,

Reply via email to