vinothchandar commented on a change in pull request #623: Hudi Test Suite
URL: https://github.com/apache/incubator-hudi/pull/623#discussion_r276834957
##########
File path:
hoodie-bench/src/main/java/com/uber/hoodie/integrationsuite/configuration/WorkloadOperationConfig.java
##########
@@ -0,0 +1,139 @@
+package com.uber.hoodie.integrationsuite.configuration;
+
+import com.google.common.annotations.VisibleForTesting;
+import com.uber.hoodie.integrationsuite.job.operation.Operation;
+import com.uber.hoodie.integrationsuite.job.operation.OperationActionSequence;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Optional;
+
+/**
+ * Represents any kind of workload operation for new data. Supported ingestion
operations are
+ * at {@link Operation}. Each workload also contains a set of optional
sequence of actions that can be
+ * executed in parallel.
+ */
+public class WorkloadOperationConfig {
+
+ private long numRecordsInsert;
+ private long numRecordsUpsert;
+ private int repeatCount;
+ private int recordSize;
+ private int numInsertPartitions;
+ private Optional<List<OperationActionSequence>> operationActionSequences;
+ private boolean runOperationAndActionsInParallel;
+ private Operation operation;
+
+ @VisibleForTesting
+ public WorkloadOperationConfig(Operation operation, long numRecordsInsert,
long numRecordsUpsert, int repeatCount, int
+ recordSize, int numInsertPartitions,
Optional<List<OperationActionSequence>> executeOperations,
+ boolean runOperationAndActionsInParallel) {
+ this.operation = operation;
+ this.numRecordsInsert = numRecordsInsert;
+ this.numRecordsUpsert = numRecordsUpsert;
+ this.repeatCount = repeatCount;
+ this.recordSize = recordSize;
+ this.numInsertPartitions = numInsertPartitions;
+ this.operationActionSequences = executeOperations;
+ this.runOperationAndActionsInParallel = runOperationAndActionsInParallel;
+ }
+
+ public static Builder newBuilder(Operation operation) {
+ return new Builder(operation);
+ }
+
+ public long getNumRecordsInsert() {
+ return numRecordsInsert;
+ }
+
+ public long getNumRecordsUpsert() {
+ return numRecordsUpsert;
+ }
+
+ public int getRecordSize() {
+ return recordSize;
+ }
+
+ public int getNumInsertPartitions() {
+ return numInsertPartitions;
+ }
+
+ public Optional<List<OperationActionSequence>> getOperationActionSequences()
{
+ return operationActionSequences;
+ }
+
+ public int getRepeatCount() {
+ return repeatCount;
+ }
+
+ public Operation getOperation() {
+ return operation;
+ }
+
+ public boolean isRunOperationAndActionsInParallel() {
+ return runOperationAndActionsInParallel;
+ }
+
+ public static class Builder {
+
+ private static final int DEFAULT_RECORD_SIZE = 1024;
+ private static final int DEFAULT_NUM_PARTITIONS = 1;
Review comment:
nit: DEFAULT_NUM_INSERT_PARTITIONS?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services