You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by ct...@apache.org on 2019/07/23 16:12:38 UTC
[accumulo-testing] branch master updated: BulkIngest CI
improvements (#101)
This is an automated email from the ASF dual-hosted git repository.
ctubbsii pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/accumulo-testing.git
The following commit(s) were added to refs/heads/master by this push:
new 99a9a82 BulkIngest CI improvements (#101)
99a9a82 is described below
commit 99a9a8244b1dbd0100cb5913d32460cedcc0961b
Author: Christopher Tubbs <ct...@apache.org>
AuthorDate: Tue Jul 23 12:12:34 2019 -0400
BulkIngest CI improvements (#101)
* Add job name
* Seed Random with strong seed
* Fix linked list to chain adjacent elements, rather than skip over
adjacent elements to link to the next element
---
.../org/apache/accumulo/testing/continuous/BulkIngest.java | 5 +++--
.../accumulo/testing/continuous/ContinuousInputFormat.java | 12 +++++++++---
2 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/src/main/java/org/apache/accumulo/testing/continuous/BulkIngest.java b/src/main/java/org/apache/accumulo/testing/continuous/BulkIngest.java
index 120daa2..93bd9ea 100644
--- a/src/main/java/org/apache/accumulo/testing/continuous/BulkIngest.java
+++ b/src/main/java/org/apache/accumulo/testing/continuous/BulkIngest.java
@@ -49,14 +49,15 @@ public class BulkIngest extends Configured implements Tool {
@Override
public int run(String[] args) throws Exception {
+ String ingestInstanceId = UUID.randomUUID().toString();
+
Job job = Job.getInstance(getConf());
+ job.setJobName("BulkIngest_" + ingestInstanceId);
job.setJarByClass(BulkIngest.class);
// very important to prevent guava conflicts
job.getConfiguration().set("mapreduce.job.classloader", "true");
FileSystem fs = FileSystem.get(job.getConfiguration());
- String ingestInstanceId = UUID.randomUUID().toString();
-
log.info(String.format("UUID %d %s", System.currentTimeMillis(), ingestInstanceId));
job.setInputFormatClass(ContinuousInputFormat.class);
diff --git a/src/main/java/org/apache/accumulo/testing/continuous/ContinuousInputFormat.java b/src/main/java/org/apache/accumulo/testing/continuous/ContinuousInputFormat.java
index 218e1c5..4399e3f 100644
--- a/src/main/java/org/apache/accumulo/testing/continuous/ContinuousInputFormat.java
+++ b/src/main/java/org/apache/accumulo/testing/continuous/ContinuousInputFormat.java
@@ -25,6 +25,8 @@ import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
+import java.security.NoSuchAlgorithmException;
+import java.security.SecureRandom;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
@@ -128,7 +130,12 @@ public class ContinuousInputFormat extends InputFormat<Key,Value> {
maxQual = job.getConfiguration().getInt(PROP_QUAL_MAX, Short.MAX_VALUE);
checksum = job.getConfiguration().getBoolean(PROP_CHECKSUM, false);
- random = new Random();
+ try {
+ random = new Random(SecureRandom.getInstanceStrong().nextLong());
+ } catch (NoSuchAlgorithmException e) {
+ throw new AssertionError(
+ "Seeding random from a strong secure random algorithm should never fail", e);
+ }
nodeCount = 0;
}
@@ -158,9 +165,8 @@ public class ContinuousInputFormat extends InputFormat<Key,Value> {
if (nodeCount < numNodes) {
CRC32 cksum = checksum ? new CRC32() : null;
- byte[] prevRow = prevKey != null ? prevKey.getRowData().toArray() : null;
-
prevKey = currKey;
+ byte[] prevRow = prevKey != null ? prevKey.getRowData().toArray() : null;
currKey = genKey(cksum);
currValue = new Value(createValue(uuid, prevRow, cksum));