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

dlmarion 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 07cb0727cf Removed MetadataBulkLoadFilter class, iterator on upgrade 
(#3962)
07cb0727cf is described below

commit 07cb0727cfb7d0a057fef7eea85b18cbffe1c80f
Author: Dave Marion <dlmar...@apache.org>
AuthorDate: Mon Nov 27 11:53:40 2023 -0500

    Removed MetadataBulkLoadFilter class, iterator on upgrade (#3962)
    
    Fixes #3353
---
 .../accumulo/server/init/InitialConfiguration.java |  3 --
 .../server/iterators/MetadataBulkLoadFilter.java   | 62 ----------------------
 .../accumulo/manager/upgrade/Upgrader12to13.java   | 11 ++++
 3 files changed, 11 insertions(+), 65 deletions(-)

diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/init/InitialConfiguration.java
 
b/server/base/src/main/java/org/apache/accumulo/server/init/InitialConfiguration.java
index 9ef4a3f515..bd083b00c2 100644
--- 
a/server/base/src/main/java/org/apache/accumulo/server/init/InitialConfiguration.java
+++ 
b/server/base/src/main/java/org/apache/accumulo/server/init/InitialConfiguration.java
@@ -31,7 +31,6 @@ import 
org.apache.accumulo.core.metadata.schema.MetadataSchema;
 import org.apache.accumulo.core.spi.compaction.SimpleCompactionDispatcher;
 import org.apache.accumulo.core.volume.VolumeConfiguration;
 import org.apache.accumulo.server.constraints.MetadataConstraints;
-import org.apache.accumulo.server.iterators.MetadataBulkLoadFilter;
 import org.apache.hadoop.conf.Configuration;
 
 class InitialConfiguration {
@@ -71,8 +70,6 @@ class InitialConfiguration {
         "10," + VersioningIterator.class.getName());
     initialRootMetaConf.put(Property.TABLE_ITERATOR_PREFIX.getKey() + 
"majc.vers.opt.maxVersions",
         "1");
-    initialRootMetaConf.put(Property.TABLE_ITERATOR_PREFIX.getKey() + 
"majc.bulkLoadFilter",
-        "20," + MetadataBulkLoadFilter.class.getName());
     initialRootMetaConf.put(Property.TABLE_FAILURES_IGNORE.getKey(), "false");
     initialRootMetaConf.put(Property.TABLE_LOCALITY_GROUP_PREFIX.getKey() + 
"tablet",
         String.format("%s,%s", 
MetadataSchema.TabletsSection.TabletColumnFamily.NAME,
diff --git 
a/server/base/src/main/java/org/apache/accumulo/server/iterators/MetadataBulkLoadFilter.java
 
b/server/base/src/main/java/org/apache/accumulo/server/iterators/MetadataBulkLoadFilter.java
deleted file mode 100644
index 7254fc56ac..0000000000
--- 
a/server/base/src/main/java/org/apache/accumulo/server/iterators/MetadataBulkLoadFilter.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.accumulo.server.iterators;
-
-import java.io.IOException;
-import java.util.Map;
-
-import org.apache.accumulo.core.data.Key;
-import org.apache.accumulo.core.data.Value;
-import org.apache.accumulo.core.iterators.Filter;
-import org.apache.accumulo.core.iterators.IteratorEnvironment;
-import org.apache.accumulo.core.iterators.IteratorUtil.IteratorScope;
-import org.apache.accumulo.core.iterators.SortedKeyValueIterator;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * A special iterator for the metadata table that removes inactive bulk load 
flags
- */
-// ELASTICITY_TODO remove this class AND its config from metadata table AND 
handle metadata config
-// in upgrade
-public class MetadataBulkLoadFilter extends Filter {
-  private static final Logger log = 
LoggerFactory.getLogger(MetadataBulkLoadFilter.class);
-
-  enum Status {
-    ACTIVE, INACTIVE
-  }
-
-  Map<Long,Status> bulkTxStatusCache;
-
-  @Override
-  public boolean accept(Key k, Value v) {
-    // this class was turned into a no-op until its removed
-    return true;
-  }
-
-  @Override
-  public void init(SortedKeyValueIterator<Key,Value> source, 
Map<String,String> options,
-      IteratorEnvironment env) throws IOException {
-    super.init(source, options, env);
-
-    if (env.getIteratorScope() == IteratorScope.scan) {
-      throw new IOException("This iterator not intended for use at scan time");
-    }
-  }
-}
diff --git 
a/server/manager/src/main/java/org/apache/accumulo/manager/upgrade/Upgrader12to13.java
 
b/server/manager/src/main/java/org/apache/accumulo/manager/upgrade/Upgrader12to13.java
index 1906d05ae5..be140d845e 100644
--- 
a/server/manager/src/main/java/org/apache/accumulo/manager/upgrade/Upgrader12to13.java
+++ 
b/server/manager/src/main/java/org/apache/accumulo/manager/upgrade/Upgrader12to13.java
@@ -20,9 +20,11 @@ package org.apache.accumulo.manager.upgrade;
 
 import static 
org.apache.accumulo.core.metadata.schema.MetadataSchema.RESERVED_PREFIX;
 
+import java.util.List;
 import java.util.Map;
 
 import org.apache.accumulo.core.client.admin.TabletHostingGoal;
+import org.apache.accumulo.core.conf.Property;
 import org.apache.accumulo.core.data.Key;
 import org.apache.accumulo.core.data.Mutation;
 import org.apache.accumulo.core.data.TableId;
@@ -37,6 +39,8 @@ import 
org.apache.accumulo.core.metadata.schema.TabletMetadata.ColumnType;
 import org.apache.accumulo.core.metadata.schema.TabletsMetadata;
 import org.apache.accumulo.core.schema.Section;
 import org.apache.accumulo.server.ServerContext;
+import org.apache.accumulo.server.conf.store.TablePropKey;
+import org.apache.accumulo.server.util.PropUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -56,6 +60,7 @@ public class Upgrader12to13 implements Upgrader {
   public void upgradeRoot(ServerContext context) {
     LOG.info("setting metadata table hosting goal");
     addHostingGoalToMetadataTable(context);
+    removeMetaDataBulkLoadFilter(context, RootTable.ID);
   }
 
   @Override
@@ -64,6 +69,12 @@ public class Upgrader12to13 implements Upgrader {
     addHostingGoalToUserTables(context);
     deleteExternalCompactionFinalStates(context);
     deleteExternalCompactions(context);
+    removeMetaDataBulkLoadFilter(context, MetadataTable.ID);
+  }
+
+  private void removeMetaDataBulkLoadFilter(ServerContext context, TableId 
tableId) {
+    final String propName = Property.TABLE_ITERATOR_PREFIX.getKey() + 
"majc.bulkLoadFilter";
+    PropUtil.removeProperties(context, TablePropKey.of(context, tableId), 
List.of(propName));
   }
 
   private void deleteExternalCompactionFinalStates(ServerContext context) {

Reply via email to