diff --git a/adapters-api/src/main/java/io/nosqlbench/engine/api/activityimpl/OpMapper.java b/adapters-api/src/main/java/io/nosqlbench/engine/api/activityimpl/OpMapper.java index 93a09a086..268647cb4 100644 --- a/adapters-api/src/main/java/io/nosqlbench/engine/api/activityimpl/OpMapper.java +++ b/adapters-api/src/main/java/io/nosqlbench/engine/api/activityimpl/OpMapper.java @@ -53,7 +53,7 @@ import java.util.function.Function; * rules provided to the user. Conversely, the driver maintainer should take care to provide * rules of construction and examples in the documentation. * Each {@link io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter} has a unique - * name, just as with {@link io.nosqlbench.engine.api.activityapi.core.ActivityType}s. The documentation + * name. The documentation * for each of these should be kept in the bundled resources in a top-level markdown file that * matches the driver name. *

@@ -62,7 +62,7 @@ import java.util.function.Function; * to hold all the details for executing an operation, * generally something that implements {@link Runnable}. */ -public interface OpMapper extends Function> { +public interface OpMapper extends Function> { /** * Interrogate the parsed command, and provide a new @@ -73,5 +73,5 @@ public interface OpMapper extends Function apply(ParsedOp cmd); + OpDispenser apply(ParsedOp cmd); } diff --git a/driver-http/src/main/java/io/nosqlbench/activitytype/cmds/HttpAsyncOp.java b/driver-http/src/main/java/io/nosqlbench/activitytype/cmds/HttpAsyncOp.java index 55f2afff5..99c15a252 100644 --- a/driver-http/src/main/java/io/nosqlbench/activitytype/cmds/HttpAsyncOp.java +++ b/driver-http/src/main/java/io/nosqlbench/activitytype/cmds/HttpAsyncOp.java @@ -7,13 +7,13 @@ import java.util.function.LongFunction; public class HttpAsyncOp { public final HttpAsyncAction action; - public final LongFunction op; + public final LongFunction op; public final long cycle; private final HttpOp httpOp; private final HttpClient client; - public HttpAsyncOp(HttpAsyncAction action, LongFunction op, long cycle, HttpClient client) { + public HttpAsyncOp(HttpAsyncAction action, LongFunction op, long cycle, HttpClient client) { this.action = action; this.op = op; this.cycle = cycle; diff --git a/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpAction.java b/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpAction.java index 0ab9c7265..804de49cf 100644 --- a/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpAction.java +++ b/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpAction.java @@ -30,7 +30,7 @@ public class HttpAction implements SyncAction { private final int slot; private int maxTries = 1; - private OpSequence> sequencer; + private OpSequence> sequencer; private HttpClient client; private final HttpResponse.BodyHandler bodyreader = HttpResponse.BodyHandlers.ofString(); @@ -62,7 +62,7 @@ public class HttpAction implements SyncAction { // operation for execution, including data generation as well as // op construction try (Timer.Context bindTime = httpActivity.bindTimer.time()) { - LongFunction readyOp = sequencer.apply(cycle); + LongFunction readyOp = sequencer.apply(cycle); httpOp = readyOp.apply(cycle); } catch (Exception e) { if (httpActivity.isDiagnosticMode()) { diff --git a/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpActivity.java b/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpActivity.java index 0c3b1267d..e159ff3ea 100644 --- a/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpActivity.java +++ b/driver-http/src/main/java/io/nosqlbench/activitytype/http/HttpActivity.java @@ -37,7 +37,7 @@ public class HttpActivity extends SimpleActivity implements Activity, ActivityDe public Timer resultSuccessTimer; public Histogram statusCodeHisto; - private OpSequence> sequencer; + private OpSequence> sequencer; private boolean diagnosticsEnabled; private long timeout = Long.MAX_VALUE; private NBErrorHandler errorhandler; @@ -121,7 +121,7 @@ public class HttpActivity extends SimpleActivity implements Activity, ActivityDe return builder.build(); } - public OpSequence> getSequencer() { + public OpSequence> getSequencer() { return sequencer; } diff --git a/driver-http/src/main/java/io/nosqlbench/activitytype/http/async/HttpAsyncAction.java b/driver-http/src/main/java/io/nosqlbench/activitytype/http/async/HttpAsyncAction.java index 2fbcb7999..ea6e68918 100644 --- a/driver-http/src/main/java/io/nosqlbench/activitytype/http/async/HttpAsyncAction.java +++ b/driver-http/src/main/java/io/nosqlbench/activitytype/http/async/HttpAsyncAction.java @@ -19,7 +19,7 @@ public class HttpAsyncAction extends BaseAsyncAction private final static Logger logger = LogManager.getLogger(HttpAsyncAction.class); - private OpSequence> sequencer; + private OpSequence> sequencer; private HttpClient client; private CompletableFuture> future; @@ -46,7 +46,7 @@ public class HttpAsyncAction extends BaseAsyncAction @Override public LongFunction getOpInitFunction() { return l -> { - LongFunction readyHttpOp = sequencer.apply(l); + LongFunction readyHttpOp = sequencer.apply(l); return new HttpAsyncOp(this,readyHttpOp,l,client); }; } diff --git a/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/api/JDBCActivity.java b/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/api/JDBCActivity.java index 5e13d7d30..4b6f17dec 100644 --- a/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/api/JDBCActivity.java +++ b/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/api/JDBCActivity.java @@ -29,7 +29,7 @@ public abstract class JDBCActivity extends SimpleActivity { private int minRetryDelayMs; protected DataSource dataSource; - protected OpSequence> opSequence; + protected OpSequence> opSequence; public JDBCActivity(ActivityDef activityDef) { super(activityDef); @@ -107,7 +107,7 @@ public abstract class JDBCActivity extends SimpleActivity { return dataSource; } - public OpSequence> getOpSequence() { + public OpSequence> getOpSequence() { return opSequence; } diff --git a/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/impl/JDBCAction.java b/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/impl/JDBCAction.java index e6c8e96d8..616d0f736 100644 --- a/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/impl/JDBCAction.java +++ b/driver-jdbc/src/main/java/io/nosqlbench/activitytype/jdbc/impl/JDBCAction.java @@ -18,7 +18,7 @@ public class JDBCAction implements SyncAction { private static final Logger LOGGER = LogManager.getLogger(JDBCAction.class); private final JDBCActivity activity; - private OpSequence> sequencer; + private OpSequence> sequencer; public JDBCAction(JDBCActivity a, int slot) { activity = a; @@ -33,7 +33,7 @@ public class JDBCAction implements SyncAction { public int runCycle(long cycle) { String boundStmt; - LongFunction unboundStmt = sequencer.apply(cycle); + LongFunction unboundStmt = sequencer.apply(cycle); try (Timer.Context bindTime = activity.getBindTimer().time()) { boundStmt = unboundStmt.apply(cycle); diff --git a/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsAction.java b/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsAction.java index b8f28e064..4b17ca353 100644 --- a/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsAction.java +++ b/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsAction.java @@ -36,7 +36,7 @@ public class JmsAction implements SyncAction { JmsOp jmsOp; try (Timer.Context ctx = activity.getBindTimer().time()) { - LongFunction readyJmsOp = activity.getSequencer().apply(cycle); + LongFunction readyJmsOp = activity.getSequencer().apply(cycle); jmsOp = readyJmsOp.apply(cycle); } catch (Exception bindException) { // if diagnostic mode ... diff --git a/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsActivity.java b/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsActivity.java index 39ac5b42d..f22e2b203 100644 --- a/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsActivity.java +++ b/driver-jms/src/main/java/io/nosqlbench/driver/jms/JmsActivity.java @@ -32,7 +32,7 @@ public class JmsActivity extends SimpleActivity { private JMSContext jmsContext; - private OpSequence> sequence; + private OpSequence> sequence; private volatile Throwable asyncOperationFailure; private NBErrorHandler errorhandler; @@ -144,7 +144,7 @@ public class JmsActivity extends SimpleActivity { @Override public synchronized void onActivityDefUpdate(ActivityDef activityDef) { super.onActivityDefUpdate(activityDef); } - public OpSequence> getSequencer() { return sequence; } + public OpSequence> getSequencer() { return sequence; } public String getJmsProviderType() { return jmsProviderType; } public JmsConnInfo getJmsConnInfo() { return jmsConnInfo; } diff --git a/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXAction.java b/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXAction.java index 88134d288..a0ed2e6f4 100644 --- a/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXAction.java +++ b/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXAction.java @@ -17,7 +17,7 @@ public class JMXAction implements SyncAction { private final ActivityDef activityDef; private final int slot; private final JMXActivity activity; - private OpSequence> sequencer; + private OpSequence> sequencer; public JMXAction(ActivityDef activityDef, int slot, JMXActivity activity) { this.activityDef = activityDef; @@ -32,7 +32,7 @@ public class JMXAction implements SyncAction { @Override public int runCycle(long cycle) { - LongFunction readyJmxOp = sequencer.apply(cycle); + LongFunction readyJmxOp = sequencer.apply(cycle); JmxOp jmxOp = readyJmxOp.apply(cycle); jmxOp.execute(); return 0; diff --git a/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXActivity.java b/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXActivity.java index 193884cbd..87a5da0b3 100644 --- a/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXActivity.java +++ b/driver-jmx/src/main/java/io/nosqlbench/driver/jmx/JMXActivity.java @@ -13,7 +13,7 @@ import javax.net.ssl.SSLContext; public class JMXActivity extends SimpleActivity implements Activity { - private OpSequence> sequence; + private OpSequence> sequence; private SSLContext sslContext; public JMXActivity(ActivityDef activityDef) { @@ -39,7 +39,7 @@ public class JMXActivity extends SimpleActivity implements Activity { return sslContext; } - public OpSequence> getSequencer() { + public OpSequence> getSequencer() { return sequence; } } diff --git a/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarAction.java b/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarAction.java index ee87a3e49..c45a7ded4 100644 --- a/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarAction.java +++ b/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarAction.java @@ -37,7 +37,7 @@ public class PulsarAction implements SyncAction { PulsarOp pulsarOp; try (Timer.Context ctx = activity.getBindTimer().time()) { - LongFunction readyPulsarOp = activity.getSequencer().apply(cycle); + LongFunction readyPulsarOp = activity.getSequencer().apply(cycle); pulsarOp = readyPulsarOp.apply(cycle); } catch (Exception bindException) { // if diagnostic mode ... diff --git a/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarActivity.java b/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarActivity.java index d2e9dc71e..08e383948 100644 --- a/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarActivity.java +++ b/driver-pulsar/src/main/java/io/nosqlbench/driver/pulsar/PulsarActivity.java @@ -66,7 +66,7 @@ public class PulsarActivity extends SimpleActivity implements ActivityDefObserve private Schema pulsarSchema; private NBErrorHandler errorHandler; - private OpSequence> sequencer; + private OpSequence> sequencer; private volatile Throwable asyncOperationFailure; private boolean cycleratePerThread; @@ -151,7 +151,7 @@ public class PulsarActivity extends SimpleActivity implements ActivityDefObserve public NBErrorHandler getErrorHandler() { return errorHandler; } - public OpSequence> getSequencer() { return sequencer; } + public OpSequence> getSequencer() { return sequencer; } public void failOnAsyncOperationFailure() { if (asyncOperationFailure != null) { diff --git a/engine-api/src/main/java/io/nosqlbench/engine/api/activityapi/planning/OpSource.java b/engine-api/src/main/java/io/nosqlbench/engine/api/activityapi/planning/OpSource.java index 081342f40..b9be3a543 100644 --- a/engine-api/src/main/java/io/nosqlbench/engine/api/activityapi/planning/OpSource.java +++ b/engine-api/src/main/java/io/nosqlbench/engine/api/activityapi/planning/OpSource.java @@ -13,7 +13,7 @@ import java.util.function.LongFunction; */ public interface OpSource extends LongFunction { - static OpSource of(OpSequence> seq) { + static OpSource of(OpSequence> seq) { return (long l) -> seq.apply(l).apply(l); } diff --git a/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/SimpleActivity.java b/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/SimpleActivity.java index f132e9671..4b403c40e 100644 --- a/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/SimpleActivity.java +++ b/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/SimpleActivity.java @@ -419,20 +419,20 @@ public class SimpleActivity implements Activity, ProgressCapable { * @param * @return */ - protected OpSequence> createOpSequenceFromCommands(Function> opinit) { + protected OpSequence> createOpSequenceFromCommands(Function> opinit) { Function f = CommandTemplate::new; - Function> opTemplateOFunction = f.andThen(opinit); + Function> opTemplateOFunction = f.andThen(opinit); return createOpSequence(opTemplateOFunction); } - protected OpSequence> createOpSourceFromCommands( - Function> opinit, + protected OpSequence> createOpSourceFromCommands( + Function> opinit, NBConfiguration cfg, List, Map>> parsers ) { Function f = t -> new ParsedOp(t, cfg, parsers); - Function> opTemplateOFunction = f.andThen(opinit); + Function> opTemplateOFunction = f.andThen(opinit); return createOpSequence(opTemplateOFunction); } @@ -459,14 +459,14 @@ public class SimpleActivity implements Activity, ProgressCapable { * @return The sequence of operations as determined by filtering and ratios */ @Deprecated(forRemoval = true) - protected OpSequence> createOpSequence(Function> opinit) { + protected OpSequence> createOpSequence(Function> opinit) { String tagfilter = activityDef.getParams().getOptionalString("tags").orElse(""); - StrInterpolator interp = new StrInterpolator(activityDef); +// StrInterpolator interp = new StrInterpolator(activityDef); SequencerType sequencerType = getParams() .getOptionalString("seq") .map(SequencerType::valueOf) .orElse(SequencerType.bucket); - SequencePlanner> planner = new SequencePlanner<>(sequencerType); + SequencePlanner> planner = new SequencePlanner<>(sequencerType); StmtsDocList stmtsDocList = null; @@ -475,10 +475,10 @@ public class SimpleActivity implements Activity, ProgressCapable { Optional stmt = activityDef.getParams().getOptionalString("op", "stmt", "statement"); Optional op_yaml_loc = activityDef.getParams().getOptionalString("yaml", "workload"); if (stmt.isPresent()) { - stmtsDocList = StatementsLoader.loadStmt(logger, stmt.get(), interp); + stmtsDocList = StatementsLoader.loadStmt(logger, stmt.get(), activityDef.getParams()); workloadSource = "commandline:" + stmt.get(); } else if (op_yaml_loc.isPresent()) { - stmtsDocList = StatementsLoader.loadPath(logger, op_yaml_loc.get(), interp, "activities"); + stmtsDocList = StatementsLoader.loadPath(logger, op_yaml_loc.get(), activityDef.getParams(), "activities"); workloadSource = "yaml:" + op_yaml_loc.get(); } @@ -500,7 +500,7 @@ public class SimpleActivity implements Activity, ProgressCapable { for (int i = 0; i < stmts.size(); i++) { long ratio = ratios.get(i); OpTemplate optemplate = stmts.get(i); - OpDispenser driverSpecificReadyOp = opinit.apply(optemplate); + OpDispenser driverSpecificReadyOp = opinit.apply(optemplate); planner.addOp(driverSpecificReadyOp, ratio); } } catch (Exception e) { diff --git a/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/uniform/StandardActivity.java b/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/uniform/StandardActivity.java index 0d377d29b..6b96dd869 100644 --- a/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/uniform/StandardActivity.java +++ b/engine-api/src/main/java/io/nosqlbench/engine/api/activityimpl/uniform/StandardActivity.java @@ -5,9 +5,9 @@ import io.nosqlbench.engine.api.activityapi.planning.OpSequence; import io.nosqlbench.engine.api.activityapi.planning.OpSource; import io.nosqlbench.engine.api.activityimpl.ActivityDef; import io.nosqlbench.engine.api.activityimpl.OpDispenser; +import io.nosqlbench.engine.api.activityimpl.OpMapper; import io.nosqlbench.engine.api.activityimpl.SimpleActivity; import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op; -import io.nosqlbench.engine.api.templating.ParsedOp; import io.nosqlbench.nb.api.errors.OpConfigError; import java.util.List; @@ -27,14 +27,15 @@ public class StandardActivity extends SimpleActivity { private final DriverAdapter adapter; private final OpSource opsource; private NBErrorHandler errorHandler; - private final OpSequence> sequence; + private final OpSequence> sequence; public StandardActivity(DriverAdapter adapter, ActivityDef activityDef) { super(activityDef); this.adapter = adapter; try { - Function> opmapper = adapter.getOpMapper(); +// Function> opmapper; + OpMapper opmapper = adapter.getOpMapper(); Function, Map> preprocessor = adapter.getPreprocessor(); sequence = createOpSourceFromCommands(opmapper, adapter.getConfiguration(), List.of(preprocessor)); opsource = OpSource.of(sequence); @@ -53,7 +54,7 @@ public class StandardActivity extends SimpleActivity { setDefaultsFromOpSequence(sequence); } - public OpSequence> getOpSequence() { + public OpSequence> getOpSequence() { return sequence; }