Fix warnings and clean up pom.xml
POM updates:
* Update plugins
* Add m2e profile for ensuring compiler compliance and ignoring plugins
in Eclipse that Eclipse doesn't understand
* Require minimum java version of 1.8 and Maven 3.5
* Remove unneeded plugins (felix bundle and exec-maven-plugin)
Fix warnings in code:
* Use try-with-resources for TestEnv
* Use Double.parseDouble instead of new Double
* Compute iterable sizes from scanners without unused variables
* Suppress deprecation warnings where needed
* Update BulkPlusOne RW test to use new bulk import API
* Add missing case statement for GET_SUMMARIES in TableOp
* Remove unused variables
diff --git a/pom.xml b/pom.xml
index 79463d0..9f53552 100644
--- a/pom.xml
+++ b/pom.xml
@@ -126,15 +126,19 @@
<pluginManagement>
<plugins>
<plugin>
- <!-- Allows us to get the apache-ds bundle artifacts -->
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <version>3.0.1</version>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.8.1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <version>3.2.1</version>
</plugin>
<plugin>
<groupId>com.github.ekryd.sortpom</groupId>
<artifactId>sortpom-maven-plugin</artifactId>
- <version>2.8.0</version>
+ <version>2.10.0</version>
<configuration>
<predefinedSortOrder>recommended_2008_06</predefinedSortOrder>
<createBackupFile>false</createBackupFile>
@@ -149,7 +153,7 @@
<plugin>
<groupId>net.revelc.code.formatter</groupId>
<artifactId>formatter-maven-plugin</artifactId>
- <version>2.8.1</version>
+ <version>2.10.0</version>
<configuration>
<configFile>${eclipseFormatterStyle}</configFile>
<compilerCompliance>${maven.compiler.source}</compilerCompliance>
@@ -171,7 +175,7 @@
<plugin>
<groupId>net.revelc.code</groupId>
<artifactId>impsort-maven-plugin</artifactId>
- <version>1.2.0</version>
+ <version>1.3.0</version>
<configuration>
<removeUnused>true</removeUnused>
<groups>java.,javax.,org.,com.</groups>
@@ -185,6 +189,30 @@
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <executions>
+ <execution>
+ <!-- must be same id as in the apache parent pom, to override the version -->
+ <id>enforce-maven-version</id>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ <phase>validate</phase>
+ <configuration>
+ <rules>
+ <requireMavenVersion>
+ <version>[3.5.0,)</version>
+ </requireMavenVersion>
+ <requireJavaVersion>
+ <version>[${maven.compiler.target},)</version>
+ </requireJavaVersion>
+ </rules>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<optimize>true</optimize>
@@ -201,13 +229,6 @@
</configuration>
</plugin>
<plugin>
- <!-- Allows us to get the apache-ds bundle artifacts -->
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <extensions>true</extensions>
- <inherited>true</inherited>
- </plugin>
- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<executions>
@@ -221,18 +242,10 @@
</executions>
</plugin>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>exec-maven-plugin</artifactId>
- <version>1.5.0</version>
- <configuration>
- <cleanupDaemonThreads>false</cleanupDaemonThreads>
- </configuration>
- </plugin>
- <plugin>
<!-- This was added to ensure project only uses public API -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
- <version>3.0.0</version>
+ <version>3.1.0</version>
<configuration>
<configLocation>contrib/checkstyle.xml</configLocation>
</configuration>
@@ -240,7 +253,7 @@
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
- <version>8.18</version>
+ <version>8.23</version>
</dependency>
</dependencies>
<executions>
@@ -351,6 +364,48 @@
</build>
</profile>
<profile>
+ <id>m2e</id>
+ <activation>
+ <property>
+ <name>m2e.version</name>
+ </property>
+ </activation>
+ <properties>
+ <maven.compiler.release>8</maven.compiler.release>
+ </properties>
+ <build>
+ <pluginManagement>
+ <plugins>
+ <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
+ <plugin>
+ <groupId>org.eclipse.m2e</groupId>
+ <artifactId>lifecycle-mapping</artifactId>
+ <version>1.0.0</version>
+ <configuration>
+ <lifecycleMappingMetadata>
+ <pluginExecutions>
+ <pluginExecution>
+ <pluginExecutionFilter>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-remote-resources-plugin</artifactId>
+ <versionRange>[0,)</versionRange>
+ <goals>
+ <goal>process</goal>
+ </goals>
+ </pluginExecutionFilter>
+ <action>
+ <ignore />
+ </action>
+ </pluginExecution>
+ </pluginExecutions>
+ </lifecycleMappingMetadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+ </profile>
+ <profile>
<id>jdk-release-flag</id>
<activation>
<jdk>[9,)</jdk>
diff --git a/src/main/java/org/apache/accumulo/testing/continuous/ContinuousMoru.java b/src/main/java/org/apache/accumulo/testing/continuous/ContinuousMoru.java
index c7d102c..99e2fdf 100644
--- a/src/main/java/org/apache/accumulo/testing/continuous/ContinuousMoru.java
+++ b/src/main/java/org/apache/accumulo/testing/continuous/ContinuousMoru.java
@@ -112,44 +112,45 @@
@Override
public int run(String[] args) throws Exception {
+ try (ContinuousEnv env = new ContinuousEnv(args)) {
- ContinuousEnv env = new ContinuousEnv(args);
+ Job job = Job.getInstance(getConf(),
+ this.getClass().getSimpleName() + "_" + System.currentTimeMillis());
+ job.setJarByClass(this.getClass());
+ job.setInputFormatClass(AccumuloInputFormat.class);
- Job job = Job.getInstance(getConf(),
- this.getClass().getSimpleName() + "_" + System.currentTimeMillis());
- job.setJarByClass(this.getClass());
- job.setInputFormatClass(AccumuloInputFormat.class);
+ int maxMaps = Integer.parseInt(env.getTestProperty(TestProps.CI_VERIFY_MAX_MAPS));
+ Set<Range> ranges = env.getAccumuloClient().tableOperations()
+ .splitRangeByTablets(env.getAccumuloTableName(), new Range(), maxMaps);
- int maxMaps = Integer.parseInt(env.getTestProperty(TestProps.CI_VERIFY_MAX_MAPS));
- Set<Range> ranges = env.getAccumuloClient().tableOperations()
- .splitRangeByTablets(env.getAccumuloTableName(), new Range(), maxMaps);
+ AccumuloInputFormat.configure().clientProperties(env.getClientProps())
+ .table(env.getAccumuloTableName()).ranges(ranges).autoAdjustRanges(false).store(job);
- AccumuloInputFormat.configure().clientProperties(env.getClientProps())
- .table(env.getAccumuloTableName()).ranges(ranges).autoAdjustRanges(false).store(job);
+ job.setMapperClass(CMapper.class);
+ job.setNumReduceTasks(0);
+ job.setOutputFormatClass(AccumuloOutputFormat.class);
- job.setMapperClass(CMapper.class);
- job.setNumReduceTasks(0);
- job.setOutputFormatClass(AccumuloOutputFormat.class);
+ AccumuloOutputFormat.configure().clientProperties(env.getClientProps()).createTables(true)
+ .defaultTable(env.getAccumuloTableName()).store(job);
- AccumuloOutputFormat.configure().clientProperties(env.getClientProps()).createTables(true)
- .defaultTable(env.getAccumuloTableName()).store(job);
+ Configuration conf = job.getConfiguration();
+ conf.setLong(MIN, env.getRowMin());
+ conf.setLong(MAX, env.getRowMax());
+ conf.setInt(MAX_CF, env.getMaxColF());
+ conf.setInt(MAX_CQ, env.getMaxColQ());
+ conf.set(CI_ID, UUID.randomUUID().toString());
+ conf.set("mapreduce.job.classloader", "true");
- Configuration conf = job.getConfiguration();
- conf.setLong(MIN, env.getRowMin());
- conf.setLong(MAX, env.getRowMax());
- conf.setInt(MAX_CF, env.getMaxColF());
- conf.setInt(MAX_CQ, env.getMaxColQ());
- conf.set(CI_ID, UUID.randomUUID().toString());
- conf.set("mapreduce.job.classloader", "true");
-
- job.waitForCompletion(true);
- return job.isSuccessful() ? 0 : 1;
+ job.waitForCompletion(true);
+ return job.isSuccessful() ? 0 : 1;
+ }
}
public static void main(String[] args) throws Exception {
- ContinuousEnv env = new ContinuousEnv(args);
- int res = ToolRunner.run(env.getHadoopConfiguration(), new ContinuousMoru(), args);
- if (res != 0)
- System.exit(res);
+ try (ContinuousEnv env = new ContinuousEnv(args)) {
+ int res = ToolRunner.run(env.getHadoopConfiguration(), new ContinuousMoru(), args);
+ if (res != 0)
+ System.exit(res);
+ }
}
}
diff --git a/src/main/java/org/apache/accumulo/testing/continuous/ContinuousVerify.java b/src/main/java/org/apache/accumulo/testing/continuous/ContinuousVerify.java
index 14015e3..5db4350 100644
--- a/src/main/java/org/apache/accumulo/testing/continuous/ContinuousVerify.java
+++ b/src/main/java/org/apache/accumulo/testing/continuous/ContinuousVerify.java
@@ -140,69 +140,71 @@
@Override
public int run(String[] args) throws Exception {
- ContinuousEnv env = new ContinuousEnv(args);
+ try (ContinuousEnv env = new ContinuousEnv(args)) {
- String tableName = env.getAccumuloTableName();
+ String tableName = env.getAccumuloTableName();
- Job job = Job.getInstance(getConf(),
- this.getClass().getSimpleName() + "_" + tableName + "_" + System.currentTimeMillis());
- job.setJarByClass(this.getClass());
+ Job job = Job.getInstance(getConf(),
+ this.getClass().getSimpleName() + "_" + tableName + "_" + System.currentTimeMillis());
+ job.setJarByClass(this.getClass());
- job.setInputFormatClass(AccumuloInputFormat.class);
+ job.setInputFormatClass(AccumuloInputFormat.class);
- boolean scanOffline = Boolean
- .parseBoolean(env.getTestProperty(TestProps.CI_VERIFY_SCAN_OFFLINE));
- int maxMaps = Integer.parseInt(env.getTestProperty(TestProps.CI_VERIFY_MAX_MAPS));
- int reducers = Integer.parseInt(env.getTestProperty(TestProps.CI_VERIFY_REDUCERS));
- String outputDir = env.getTestProperty(TestProps.CI_VERIFY_OUTPUT_DIR);
+ boolean scanOffline = Boolean
+ .parseBoolean(env.getTestProperty(TestProps.CI_VERIFY_SCAN_OFFLINE));
+ int maxMaps = Integer.parseInt(env.getTestProperty(TestProps.CI_VERIFY_MAX_MAPS));
+ int reducers = Integer.parseInt(env.getTestProperty(TestProps.CI_VERIFY_REDUCERS));
+ String outputDir = env.getTestProperty(TestProps.CI_VERIFY_OUTPUT_DIR);
- Set<Range> ranges;
- String clone = "";
- AccumuloClient client = env.getAccumuloClient();
- String table;
+ Set<Range> ranges;
+ String clone = "";
+ AccumuloClient client = env.getAccumuloClient();
+ String table;
- if (scanOffline) {
- Random random = new Random();
- clone = tableName + "_" + String.format("%016x", (random.nextLong() & 0x7fffffffffffffffL));
- client.tableOperations().clone(tableName, clone, true, new HashMap<>(), new HashSet<>());
- ranges = client.tableOperations().splitRangeByTablets(tableName, new Range(), maxMaps);
- client.tableOperations().offline(clone);
- table = clone;
- } else {
- ranges = client.tableOperations().splitRangeByTablets(tableName, new Range(), maxMaps);
- table = tableName;
+ if (scanOffline) {
+ Random random = new Random();
+ clone = tableName + "_" + String.format("%016x", (random.nextLong() & 0x7fffffffffffffffL));
+ client.tableOperations().clone(tableName, clone, true, new HashMap<>(), new HashSet<>());
+ ranges = client.tableOperations().splitRangeByTablets(tableName, new Range(), maxMaps);
+ client.tableOperations().offline(clone);
+ table = clone;
+ } else {
+ ranges = client.tableOperations().splitRangeByTablets(tableName, new Range(), maxMaps);
+ table = tableName;
+ }
+
+ AccumuloInputFormat.configure().clientProperties(env.getClientProps()).table(table)
+ .ranges(ranges).autoAdjustRanges(false).offlineScan(scanOffline).store(job);
+
+ job.setMapperClass(CMapper.class);
+ job.setMapOutputKeyClass(LongWritable.class);
+ job.setMapOutputValueClass(VLongWritable.class);
+
+ job.setReducerClass(CReducer.class);
+ job.setNumReduceTasks(reducers);
+
+ job.setOutputFormatClass(TextOutputFormat.class);
+
+ job.getConfiguration().setBoolean("mapred.map.tasks.speculative.execution", scanOffline);
+ job.getConfiguration().set("mapreduce.job.classloader", "true");
+
+ TextOutputFormat.setOutputPath(job, new Path(outputDir));
+
+ job.waitForCompletion(true);
+
+ if (scanOffline) {
+ client.tableOperations().delete(clone);
+ }
+ return job.isSuccessful() ? 0 : 1;
}
-
- AccumuloInputFormat.configure().clientProperties(env.getClientProps()).table(table)
- .ranges(ranges).autoAdjustRanges(false).offlineScan(scanOffline).store(job);
-
- job.setMapperClass(CMapper.class);
- job.setMapOutputKeyClass(LongWritable.class);
- job.setMapOutputValueClass(VLongWritable.class);
-
- job.setReducerClass(CReducer.class);
- job.setNumReduceTasks(reducers);
-
- job.setOutputFormatClass(TextOutputFormat.class);
-
- job.getConfiguration().setBoolean("mapred.map.tasks.speculative.execution", scanOffline);
- job.getConfiguration().set("mapreduce.job.classloader", "true");
-
- TextOutputFormat.setOutputPath(job, new Path(outputDir));
-
- job.waitForCompletion(true);
-
- if (scanOffline) {
- client.tableOperations().delete(clone);
- }
- return job.isSuccessful() ? 0 : 1;
}
public static void main(String[] args) throws Exception {
- ContinuousEnv env = new ContinuousEnv(args);
+ try (ContinuousEnv env = new ContinuousEnv(args)) {
- int res = ToolRunner.run(env.getHadoopConfiguration(), new ContinuousVerify(), args);
- if (res != 0)
- System.exit(res);
+ int res = ToolRunner.run(env.getHadoopConfiguration(), new ContinuousVerify(), args);
+ if (res != 0)
+ System.exit(res);
+ }
}
}
diff --git a/src/main/java/org/apache/accumulo/testing/ingest/BulkImportDirectory.java b/src/main/java/org/apache/accumulo/testing/ingest/BulkImportDirectory.java
index 2b3a2c3..2da2c62 100644
--- a/src/main/java/org/apache/accumulo/testing/ingest/BulkImportDirectory.java
+++ b/src/main/java/org/apache/accumulo/testing/ingest/BulkImportDirectory.java
@@ -41,6 +41,7 @@
String failures = null;
}
+ @SuppressWarnings("deprecation")
public static void main(String[] args)
throws IOException, AccumuloException, AccumuloSecurityException, TableNotFoundException {
final FileSystem fs = FileSystem.get(new Configuration());
diff --git a/src/main/java/org/apache/accumulo/testing/ingest/VerifyIngest.java b/src/main/java/org/apache/accumulo/testing/ingest/VerifyIngest.java
index 992a982..b783e8c 100644
--- a/src/main/java/org/apache/accumulo/testing/ingest/VerifyIngest.java
+++ b/src/main/java/org/apache/accumulo/testing/ingest/VerifyIngest.java
@@ -62,10 +62,9 @@
opts.parseArgs(VerifyIngest.class.getName(), args);
try (AccumuloClient client = Accumulo.newClient().from(opts.getClientProps()).build()) {
if (opts.trace) {
- String name = VerifyIngest.class.getSimpleName();
/*
- * DistributedTrace.enable(); Trace.on(name); Trace.data("cmdLine",
- * Arrays.asList(args).toString());
+ * String name = VerifyIngest.class.getSimpleName(); DistributedTrace.enable();
+ * Trace.on(name); Trace.data("cmdLine", Arrays.asList(args).toString());
*/
}
diff --git a/src/main/java/org/apache/accumulo/testing/mapreduce/RowHash.java b/src/main/java/org/apache/accumulo/testing/mapreduce/RowHash.java
index 4722799..45e24f0 100644
--- a/src/main/java/org/apache/accumulo/testing/mapreduce/RowHash.java
+++ b/src/main/java/org/apache/accumulo/testing/mapreduce/RowHash.java
@@ -58,44 +58,46 @@
@Override
public int run(String[] args) throws Exception {
- TestEnv env = new TestEnv(args);
- Job job = Job.getInstance(getConf());
- job.setJobName(this.getClass().getName());
- job.setJarByClass(this.getClass());
- job.setInputFormatClass(AccumuloInputFormat.class);
+ try (TestEnv env = new TestEnv(args)) {
+ Job job = Job.getInstance(getConf());
+ job.setJobName(this.getClass().getName());
+ job.setJarByClass(this.getClass());
+ job.setInputFormatClass(AccumuloInputFormat.class);
- Properties props = env.getTestProperties();
- String col = props.getProperty(TestProps.ROWHASH_COLUMN);
- int idx = col.indexOf(":");
- Text cf = new Text(idx < 0 ? col : col.substring(0, idx));
- Text cq = idx < 0 ? null : new Text(col.substring(idx + 1));
- Collection<IteratorSetting.Column> cols = Collections.emptyList();
- if (cf.getLength() > 0)
- cols = Collections.singleton(new IteratorSetting.Column(cf, cq));
+ Properties props = env.getTestProperties();
+ String col = props.getProperty(TestProps.ROWHASH_COLUMN);
+ int idx = col.indexOf(":");
+ Text cf = new Text(idx < 0 ? col : col.substring(0, idx));
+ Text cq = idx < 0 ? null : new Text(col.substring(idx + 1));
+ Collection<IteratorSetting.Column> cols = Collections.emptyList();
+ if (cf.getLength() > 0)
+ cols = Collections.singleton(new IteratorSetting.Column(cf, cq));
- String inputTable = props.getProperty(TestProps.ROWHASH_INPUT_TABLE);
- String outputTable = props.getProperty(TestProps.ROWHASH_OUTPUT_TABLE);
+ String inputTable = props.getProperty(TestProps.ROWHASH_INPUT_TABLE);
+ String outputTable = props.getProperty(TestProps.ROWHASH_OUTPUT_TABLE);
- AccumuloInputFormat.configure().clientProperties(env.getClientProps()).table(inputTable)
- .fetchColumns(cols).store(job);
- AccumuloOutputFormat.configure().clientProperties(env.getClientProps())
- .defaultTable(outputTable).createTables(true).store(job);
+ AccumuloInputFormat.configure().clientProperties(env.getClientProps()).table(inputTable)
+ .fetchColumns(cols).store(job);
+ AccumuloOutputFormat.configure().clientProperties(env.getClientProps())
+ .defaultTable(outputTable).createTables(true).store(job);
- job.getConfiguration().set("mapreduce.job.classloader", "true");
- job.setMapperClass(HashDataMapper.class);
- job.setMapOutputKeyClass(Text.class);
- job.setMapOutputValueClass(Mutation.class);
+ job.getConfiguration().set("mapreduce.job.classloader", "true");
+ job.setMapperClass(HashDataMapper.class);
+ job.setMapOutputKeyClass(Text.class);
+ job.setMapOutputValueClass(Mutation.class);
- job.setNumReduceTasks(0);
+ job.setNumReduceTasks(0);
- job.setOutputFormatClass(AccumuloOutputFormat.class);
+ job.setOutputFormatClass(AccumuloOutputFormat.class);
- job.waitForCompletion(true);
- return job.isSuccessful() ? 0 : 1;
+ job.waitForCompletion(true);
+ return job.isSuccessful() ? 0 : 1;
+ }
}
public static void main(String[] args) throws Exception {
- TestEnv env = new TestEnv(args);
- ToolRunner.run(env.getHadoopConfiguration(), new RowHash(), args);
+ try (TestEnv env = new TestEnv(args)) {
+ ToolRunner.run(env.getHadoopConfiguration(), new RowHash(), args);
+ }
}
}
diff --git a/src/main/java/org/apache/accumulo/testing/mapreduce/TeraSortIngest.java b/src/main/java/org/apache/accumulo/testing/mapreduce/TeraSortIngest.java
index ee2b5d0..1961b93 100644
--- a/src/main/java/org/apache/accumulo/testing/mapreduce/TeraSortIngest.java
+++ b/src/main/java/org/apache/accumulo/testing/mapreduce/TeraSortIngest.java
@@ -352,42 +352,44 @@
}
public static void main(String[] args) throws Exception {
- TestEnv env = new TestEnv(args);
- ToolRunner.run(env.getHadoopConfiguration(), new TeraSortIngest(), args);
+ try (TestEnv env = new TestEnv(args)) {
+ ToolRunner.run(env.getHadoopConfiguration(), new TeraSortIngest(), args);
+ }
}
@Override
public int run(String[] args) throws Exception {
- TestEnv env = new TestEnv(args);
+ try (TestEnv env = new TestEnv(args)) {
- Job job = Job.getInstance(getConf());
- job.setJobName("TeraSortIngest");
- job.setJarByClass(this.getClass());
- job.setInputFormatClass(RangeInputFormat.class);
- job.setMapperClass(SortGenMapper.class);
- job.setMapOutputKeyClass(Text.class);
- job.setMapOutputValueClass(Mutation.class);
- job.setNumReduceTasks(0);
- job.setOutputFormatClass(AccumuloOutputFormat.class);
+ Job job = Job.getInstance(getConf());
+ job.setJobName("TeraSortIngest");
+ job.setJarByClass(this.getClass());
+ job.setInputFormatClass(RangeInputFormat.class);
+ job.setMapperClass(SortGenMapper.class);
+ job.setMapOutputKeyClass(Text.class);
+ job.setMapOutputValueClass(Mutation.class);
+ job.setNumReduceTasks(0);
+ job.setOutputFormatClass(AccumuloOutputFormat.class);
- Properties testProps = env.getTestProperties();
- String tableName = testProps.getProperty(TestProps.TERASORT_TABLE);
- Objects.requireNonNull(tableName);
+ Properties testProps = env.getTestProperties();
+ String tableName = testProps.getProperty(TestProps.TERASORT_TABLE);
+ Objects.requireNonNull(tableName);
- AccumuloOutputFormat.configure().clientProperties(env.getClientProps()).createTables(true)
- .defaultTable(tableName).store(job);
+ AccumuloOutputFormat.configure().clientProperties(env.getClientProps()).createTables(true)
+ .defaultTable(tableName).store(job);
- Configuration conf = job.getConfiguration();
- conf.set("mapreduce.job.classloader", "true");
- for (Object keyObj : testProps.keySet()) {
- String key = (String) keyObj;
- if (key.startsWith(TestProps.TERASORT)) {
- conf.set(key, testProps.getProperty(key));
+ Configuration conf = job.getConfiguration();
+ conf.set("mapreduce.job.classloader", "true");
+ for (Object keyObj : testProps.keySet()) {
+ String key = (String) keyObj;
+ if (key.startsWith(TestProps.TERASORT)) {
+ conf.set(key, testProps.getProperty(key));
+ }
}
- }
- job.waitForCompletion(true);
- return job.isSuccessful() ? 0 : 1;
+ job.waitForCompletion(true);
+ return job.isSuccessful() ? 0 : 1;
+ }
}
}
diff --git a/src/main/java/org/apache/accumulo/testing/performance/tests/ConditionalMutationsPT.java b/src/main/java/org/apache/accumulo/testing/performance/tests/ConditionalMutationsPT.java
index 2d4f8b1..bf86a6a 100644
--- a/src/main/java/org/apache/accumulo/testing/performance/tests/ConditionalMutationsPT.java
+++ b/src/main/java/org/apache/accumulo/testing/performance/tests/ConditionalMutationsPT.java
@@ -22,10 +22,8 @@
import org.apache.accumulo.core.conf.Property;
import org.apache.accumulo.core.data.Condition;
import org.apache.accumulo.core.data.ConditionalMutation;
-import org.apache.accumulo.core.data.Key;
import org.apache.accumulo.core.data.Mutation;
import org.apache.accumulo.core.data.Range;
-import org.apache.accumulo.core.data.Value;
import org.apache.accumulo.core.security.Authorizations;
import org.apache.accumulo.testing.performance.Environment;
import org.apache.accumulo.testing.performance.PerformanceTest;
@@ -35,6 +33,7 @@
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Iterables;
import com.google.common.hash.Hashing;
public class ConditionalMutationsPT implements PerformanceTest {
@@ -85,7 +84,7 @@
}
reportBuilder.result("avgRate: 1-19",
- new Double(new DecimalFormat("#0.00").format(rateSum / 20)),
+ Double.parseDouble(new DecimalFormat("#0.00").format(rateSum / 20)),
"ConditionalMutationsTest: average rate (conditions/sec) to run sequence 1-19");
env.getClient().tableOperations().flush(tableName, null, null, true);
@@ -96,7 +95,7 @@
}
reportBuilder.result("avgRate: 20-39",
- new Double(new DecimalFormat("#0.00").format(rateSum / 20)),
+ Double.parseDouble(new DecimalFormat("#0.00").format(rateSum / 20)),
"ConditionalMutationsTest: average rate (conditions/sec) to run sequence 20-39");
}
@@ -157,7 +156,7 @@
}
reportBuilder.result("avgRate: 1-19",
- new Double(new DecimalFormat("#0.00").format(rateSum / 20)),
+ Double.parseDouble(new DecimalFormat("#0.00").format(rateSum / 20)),
"RandomizeConditionalMutationsTest: average rate (conditions/sec) to run sequence 1-19");
env.getClient().tableOperations().flush(tableName, null, null, true);
@@ -168,7 +167,7 @@
}
reportBuilder.result("avgRate: 20-39",
- new Double(new DecimalFormat("#0.00").format(rateSum / 20)),
+ Double.parseDouble(new DecimalFormat("#0.00").format(rateSum / 20)),
"RandomizeConditionalMutationsTest: average rate (conditions/sec) to run sequence 20-39");
}
@@ -241,7 +240,7 @@
}
reportBuilder.result("avgRate: 1-19",
- new Double(new DecimalFormat("#0.00").format(rateSum / 20)),
+ Double.parseDouble(new DecimalFormat("#0.00").format(rateSum / 20)),
"RandomizeBatchScanAndWriteTest: average rate (conditions/sec) to write and scan sequence 1-19");
env.getClient().tableOperations().flush(tableName, null, null, true);
@@ -252,7 +251,7 @@
}
reportBuilder.result("avgRate: 20-39",
- new Double(new DecimalFormat("#0.00").format(rateSum / 20)),
+ Double.parseDouble(new DecimalFormat("#0.00").format(rateSum / 20)),
"RandomizeBatchScanAndWriteTest: average rate (conditions/sec) to write and scan sequence 20-39 post flush");
}
@@ -282,10 +281,7 @@
bs.setRanges(ranges);
- int count = 0;
- for (Map.Entry<Key,Value> entry : bs) {
- count++;
- }
+ int count = Iterables.size(bs);
if (0 != count) {
throw new RuntimeException("count = " + count);
}
@@ -324,7 +320,7 @@
}
reportBuilder.result("avgRate1",
- new Double(new DecimalFormat("#0.00").format(rateSum / numTest)),
+ Double.parseDouble(new DecimalFormat("#0.00").format(rateSum / numTest)),
"SetBlockSizeTest: average rate in conditions/sec");
env.getClient().tableOperations().flush(tableName, null, null, true);
@@ -335,7 +331,7 @@
}
reportBuilder.result("avgRate2",
- new Double(new DecimalFormat("#0.00").format(rateSum / numTest)),
+ Double.parseDouble(new DecimalFormat("#0.00").format(rateSum / numTest)),
"SetBlockSizeTest: average rate in conditions/sec post flush");
env.getClient().tableOperations().compact(tableName, null, null, true, true);
@@ -345,7 +341,8 @@
rateSum += setBlockSizeTime(cw, numRows, numCols);
}
- reportBuilder.result("avgRate3", new Double(new DecimalFormat("#0.00").format(rateSum / 20)),
+ reportBuilder.result("avgRate3",
+ Double.parseDouble(new DecimalFormat("#0.00").format(rateSum / 20)),
"SetBlockSizeTest: average rate in conditions/sec post compaction");
reportBuilder.parameter("numRows", numRows, "SetBlockSizeTest: The number of rows");
reportBuilder.parameter("numCols", numCols, "SetBlockSizeTest: The number of columns");
diff --git a/src/main/java/org/apache/accumulo/testing/performance/tests/ScanExecutorPT.java b/src/main/java/org/apache/accumulo/testing/performance/tests/ScanExecutorPT.java
index 20911cc..ae9b8c0 100644
--- a/src/main/java/org/apache/accumulo/testing/performance/tests/ScanExecutorPT.java
+++ b/src/main/java/org/apache/accumulo/testing/performance/tests/ScanExecutorPT.java
@@ -18,6 +18,7 @@
package org.apache.accumulo.testing.performance.tests;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.LongSummaryStatistics;
import java.util.Map;
import java.util.Map.Entry;
@@ -161,7 +162,7 @@
while (!stop.get()) {
try (Scanner scanner = c.createScanner(tableName, Authorizations.EMPTY)) {
scanner.setExecutionHints(hints);
- for (Entry<Key,Value> entry : scanner) {
+ for (Iterator<Entry<Key,Value>> iter = scanner.iterator(); iter.hasNext(); iter.next()) {
count++;
if (stop.get()) {
return count;
diff --git a/src/main/java/org/apache/accumulo/testing/performance/tests/YieldingScanExecutorPT.java b/src/main/java/org/apache/accumulo/testing/performance/tests/YieldingScanExecutorPT.java
index 59571fb..8fe424f 100644
--- a/src/main/java/org/apache/accumulo/testing/performance/tests/YieldingScanExecutorPT.java
+++ b/src/main/java/org/apache/accumulo/testing/performance/tests/YieldingScanExecutorPT.java
@@ -182,7 +182,7 @@
scanner.addScanIterator(is);
// scanner.setExecutionHints(hints);
- for (Entry<Key,Value> entry : scanner) {
+ for (Iterator<Entry<Key,Value>> iter = scanner.iterator(); iter.hasNext(); iter.next()) {
count++;
if (stop.get()) {
return count;
diff --git a/src/main/java/org/apache/accumulo/testing/randomwalk/bulk/BulkPlusOne.java b/src/main/java/org/apache/accumulo/testing/randomwalk/bulk/BulkPlusOne.java
index 60821e2..55d81c1 100644
--- a/src/main/java/org/apache/accumulo/testing/randomwalk/bulk/BulkPlusOne.java
+++ b/src/main/java/org/apache/accumulo/testing/randomwalk/bulk/BulkPlusOne.java
@@ -30,7 +30,6 @@
import org.apache.accumulo.core.data.Value;
import org.apache.accumulo.testing.randomwalk.RandWalkEnv;
import org.apache.accumulo.testing.randomwalk.State;
-import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.Text;
@@ -58,9 +57,7 @@
final FileSystem fs = (FileSystem) state.get("fs");
final Path dir = new Path(fs.getUri() + "/tmp", "bulk_" + UUID.randomUUID().toString());
log.debug("Bulk loading from {}", dir);
- final Path fail = new Path(dir.toString() + "_fail");
final Random rand = state.getRandom();
- fs.mkdirs(fail);
final int parts = rand.nextInt(10) + 1;
TreeSet<Integer> startRows = new TreeSet<>();
@@ -96,15 +93,9 @@
}
writer.close();
}
- env.getAccumuloClient().tableOperations().importDirectory(Setup.getTableName(), dir.toString(),
- fail.toString(), true);
+ env.getAccumuloClient().tableOperations().importDirectory(dir.toString())
+ .to(Setup.getTableName()).tableTime(true);
fs.delete(dir, true);
- FileStatus[] failures = fs.listStatus(fail);
- if (failures != null && failures.length > 0) {
- state.set("bulkImportSuccess", "false");
- throw new Exception(failures.length + " failure files found importing files from " + dir);
- }
- fs.delete(fail, true);
log.debug("Finished bulk import, start rows " + printRows + " last row "
+ String.format(FMT, LOTS - 1) + " marker " + markerColumnQualifier);
}
diff --git a/src/main/java/org/apache/accumulo/testing/randomwalk/concurrent/BulkImport.java b/src/main/java/org/apache/accumulo/testing/randomwalk/concurrent/BulkImport.java
index 1d1d0c1..4dd9736 100644
--- a/src/main/java/org/apache/accumulo/testing/randomwalk/concurrent/BulkImport.java
+++ b/src/main/java/org/apache/accumulo/testing/randomwalk/concurrent/BulkImport.java
@@ -126,8 +126,8 @@
bw.close();
}
- client.tableOperations().importDirectory(tableName, bulkDir, bulkDir + "_f",
- rand.nextBoolean());
+ client.tableOperations().importDirectory(bulkDir).to(tableName).tableTime(rand.nextBoolean())
+ .load();
log.debug("BulkImported to " + tableName);
} catch (TableNotFoundException e) {
diff --git a/src/main/java/org/apache/accumulo/testing/randomwalk/concurrent/Config.java b/src/main/java/org/apache/accumulo/testing/randomwalk/concurrent/Config.java
index b209d33..992fad6 100644
--- a/src/main/java/org/apache/accumulo/testing/randomwalk/concurrent/Config.java
+++ b/src/main/java/org/apache/accumulo/testing/randomwalk/concurrent/Config.java
@@ -52,6 +52,8 @@
return new Setting(property, min, max);
}
+ @SuppressWarnings("deprecation")
+ Property TSERV_READ_AHEAD_MAXCONCURRENT_deprecated = Property.TSERV_READ_AHEAD_MAXCONCURRENT;
// @formatter:off
Setting[] settings = {
s(Property.TSERV_BLOOM_LOAD_MAXCONCURRENT, 1, 10),
@@ -69,7 +71,7 @@
s(Property.TSERV_DEFAULT_BLOCKSIZE, 100000, 10000000L),
s(Property.TSERV_MAX_IDLE, 10000, 500 * 1000),
s(Property.TSERV_MAXMEM, 1000000, 3 * 1024 * 1024 * 1024L),
- s(Property.TSERV_READ_AHEAD_MAXCONCURRENT, 1, 25),
+ s(TSERV_READ_AHEAD_MAXCONCURRENT_deprecated, 1, 25),
s(Property.TSERV_MIGRATE_MAXCONCURRENT, 1, 10),
s(Property.TSERV_TOTAL_MUTATION_QUEUE_MAX, 10000, 1024 * 1024),
s(Property.TSERV_RECOVERY_MAX_CONCURRENT, 1, 100),
diff --git a/src/main/java/org/apache/accumulo/testing/randomwalk/security/SecurityHelper.java b/src/main/java/org/apache/accumulo/testing/randomwalk/security/SecurityHelper.java
index b632249..0c8c474 100644
--- a/src/main/java/org/apache/accumulo/testing/randomwalk/security/SecurityHelper.java
+++ b/src/main/java/org/apache/accumulo/testing/randomwalk/security/SecurityHelper.java
@@ -45,7 +45,6 @@
private static final String authsMap = "authorizationsCountMap";
private static final String lastKey = "lastMutationKey";
- private static final String filesystem = "securityFileSystem";
public static String getTableName(State state) {
return state.getString(tableName);
diff --git a/src/main/java/org/apache/accumulo/testing/randomwalk/security/TableOp.java b/src/main/java/org/apache/accumulo/testing/randomwalk/security/TableOp.java
index 7e217c3..bf58fdb 100644
--- a/src/main/java/org/apache/accumulo/testing/randomwalk/security/TableOp.java
+++ b/src/main/java/org/apache/accumulo/testing/randomwalk/security/TableOp.java
@@ -240,7 +240,7 @@
rFileWriter.append(k, new Value("Value".getBytes(UTF_8)));
rFileWriter.close();
try {
- tableOps.importDirectory(tableName, dir.toString(), fail.toString(), true);
+ tableOps.importDirectory(dir.toString()).to(tableName).tableTime(true).load();
} catch (TableNotFoundException tnfe) {
if (tableExists)
throw new AccumuloException("Table didn't exist when it should have: " + tableName);
@@ -293,6 +293,9 @@
props.setProperty("source", "table");
DropTable.dropTable(state, env, props);
break;
+
+ case GET_SUMMARIES:
+ throw new UnsupportedOperationException("GET_SUMMARIES not implemented");
}
}
}
diff --git a/src/main/java/org/apache/accumulo/testing/randomwalk/shard/BulkInsert.java b/src/main/java/org/apache/accumulo/testing/randomwalk/shard/BulkInsert.java
index e1c377a..1916e57 100644
--- a/src/main/java/org/apache/accumulo/testing/randomwalk/shard/BulkInsert.java
+++ b/src/main/java/org/apache/accumulo/testing/randomwalk/shard/BulkInsert.java
@@ -142,6 +142,7 @@
fs.delete(new Path(rootDir), true);
}
+ @SuppressWarnings("deprecation")
private void bulkImport(FileSystem fs, State state, RandWalkEnv env, String tableName,
String rootDir, String prefix) throws Exception {
while (true) {
diff --git a/src/main/java/org/apache/accumulo/testing/randomwalk/shard/SortTool.java b/src/main/java/org/apache/accumulo/testing/randomwalk/shard/SortTool.java
index 5206417..91ff5eb 100644
--- a/src/main/java/org/apache/accumulo/testing/randomwalk/shard/SortTool.java
+++ b/src/main/java/org/apache/accumulo/testing/randomwalk/shard/SortTool.java
@@ -18,8 +18,6 @@
import java.util.Collection;
-import org.apache.accumulo.core.client.mapreduce.AccumuloFileOutputFormat;
-import org.apache.accumulo.core.client.mapreduce.lib.partition.KeyRangePartitioner;
import org.apache.accumulo.core.data.Key;
import org.apache.accumulo.core.data.Value;
import org.apache.hadoop.conf.Configured;
@@ -45,6 +43,7 @@
this.splits = splits;
}
+ @SuppressWarnings("deprecation")
@Override
public int run(String[] args) throws Exception {
Job job = Job.getInstance(getConf(), this.getClass().getSimpleName());
@@ -58,16 +57,20 @@
job.setInputFormatClass(SequenceFileInputFormat.class);
SequenceFileInputFormat.setInputPaths(job, seqFile);
- job.setPartitionerClass(KeyRangePartitioner.class);
- KeyRangePartitioner.setSplitFile(job, splitFile);
+ job.setPartitionerClass(
+ org.apache.accumulo.core.client.mapreduce.lib.partition.KeyRangePartitioner.class);
+ org.apache.accumulo.core.client.mapreduce.lib.partition.KeyRangePartitioner.setSplitFile(job,
+ splitFile);
job.setMapOutputKeyClass(Key.class);
job.setMapOutputValueClass(Value.class);
job.setNumReduceTasks(splits.size() + 1);
- job.setOutputFormatClass(AccumuloFileOutputFormat.class);
- AccumuloFileOutputFormat.setOutputPath(job, new Path(outputDir));
+ job.setOutputFormatClass(
+ org.apache.accumulo.core.client.mapreduce.AccumuloFileOutputFormat.class);
+ org.apache.accumulo.core.client.mapreduce.AccumuloFileOutputFormat.setOutputPath(job,
+ new Path(outputDir));
job.waitForCompletion(true);
return job.isSuccessful() ? 0 : 1;