diff --git a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_iot.yaml b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_iot.yaml index 5c98d3535..fe55e33a0 100644 --- a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_iot.yaml +++ b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_iot.yaml @@ -10,7 +10,7 @@ scenarios: rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,10000000) threads=auto main: run driver=cql tags==block:"main.*" cycles===TEMPLATE(main-cycles,10000000) threads=auto astra: - schema: run driver=cql tags==block:schema-astra threads==1 cycles==UNDEF + schema: run driver=cql tags==block:schema_astra threads==1 cycles==UNDEF rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,10000000) threads=auto main: run driver=cql tags==block:"main.*" cycles===TEMPLATE(main-cycles,10000000) threads=auto basic_check: diff --git a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_keyvalue.yaml b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_keyvalue.yaml index 9d8851c69..fd5979f36 100644 --- a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_keyvalue.yaml +++ b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_keyvalue.yaml @@ -14,7 +14,7 @@ scenarios: rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,10000000) threads=auto main: run driver=cql tags=='block:main-.*' cycles===TEMPLATE(main-cycles,10000000) threads=auto astra: - schema: run driver=cql tags==block:schema-astra threads==1 cycles==UNDEF + schema: run driver=cql tags==block:schema_astra threads==1 cycles==UNDEF rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,10000000) threads=auto main: run driver=cql tags=='block:main-.*' cycles===TEMPLATE(main-cycles,10000000) threads=auto basic_check: diff --git a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_starter.yaml b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_starter.yaml index f58d45184..52a600938 100644 --- a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_starter.yaml +++ b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_starter.yaml @@ -11,7 +11,7 @@ scenarios: main: run driver=cql tags==block:"main.*" cycles===TEMPLATE(main-cycles,10) threads=auto # rampdown: run driver=cql tags==block:rampdown threads==1 cycles==UNDEF astra: - schema: run driver=cql tags==block:schema-astra threads==1 cycles==UNDEF + schema: run driver=cql tags==block:schema_astra threads==1 cycles==UNDEF rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,10) threads=auto main: run driver=cql tags==block:"main.*" cycles===TEMPLATE(main-cycles,10) threads=auto basic_check: diff --git a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_tabular.yaml b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_tabular.yaml index a8fba2a17..7e63cd2e6 100644 --- a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_tabular.yaml +++ b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselines/cql_tabular.yaml @@ -7,7 +7,7 @@ scenarios: rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,10000000) threads=auto main: run driver=cql tags==block:main-*.* cycles===TEMPLATE(main-cycles,10000000) threads=auto astra: - schema: run driver=cql tags==block:schema-astra threads==1 cycles==UNDEF + schema: run driver=cql tags==block:schema_astra threads==1 cycles==UNDEF rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,10000000) threads=auto main: run driver=cql tags==block:main-*.* cycles===TEMPLATE(main-cycles,10000000) threads=auto basic_check: diff --git a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselinesv2/cql_tabular2.yaml b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselinesv2/cql_tabular2.yaml index 686d02a0a..39b82299a 100644 --- a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselinesv2/cql_tabular2.yaml +++ b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselinesv2/cql_tabular2.yaml @@ -31,7 +31,7 @@ scenarios: rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,100) threads=auto main: run driver=cql tags==block:"main.*" cycles===TEMPLATE(main-cycles,100) threads=auto astra: - schema: run driver=cql tags==block:schema-astra threads==1 cycles==UNDEF + schema: run driver=cql tags==block:schema_astra threads==1 cycles==UNDEF rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,100) threads=auto main: run driver=cql tags==block:"main.*" cycles===TEMPLATE(main-cycles,100) threads=auto basic_check: diff --git a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselinesv2/cql_timeseries2.yaml b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselinesv2/cql_timeseries2.yaml index 20ead290b..f4b87fa24 100644 --- a/nb-adapters/adapter-cqld4/src/main/resources/activities/baselinesv2/cql_timeseries2.yaml +++ b/nb-adapters/adapter-cqld4/src/main/resources/activities/baselinesv2/cql_timeseries2.yaml @@ -10,7 +10,7 @@ scenarios: rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,10000000) threads=auto main: run driver=cql tags==block:"main.*" cycles===TEMPLATE(main-cycles,10000000) threads=auto astra: - schema: run driver=cql tags==block:schema-astra threads==1 cycles==UNDEF + schema: run driver=cql tags==block:schema_astra threads==1 cycles==UNDEF rampup: run driver=cql tags==block:rampup cycles===TEMPLATE(rampup-cycles,10000000) threads=auto main: run driver=cql tags==block:"main.*" cycles===TEMPLATE(main-cycles,10000000) threads=auto basic_check: diff --git a/nb-adapters/adapter-dataapi/src/main/resources/activities/find_one_and_update.yaml b/nb-adapters/adapter-dataapi/src/main/resources/activities/find_one_and_update.yaml index e69de29bb..edff96902 100644 --- a/nb-adapters/adapter-dataapi/src/main/resources/activities/find_one_and_update.yaml +++ b/nb-adapters/adapter-dataapi/src/main/resources/activities/find_one_and_update.yaml @@ -0,0 +1,4 @@ +min_version: "5.21.0" + +description: | + TBD, similar to find_one_and_delete.yaml diff --git a/nb-adapters/adapter-dataapi/src/main/resources/activities/list_collection_names.yaml b/nb-adapters/adapter-dataapi/src/main/resources/activities/list_collection_names.yaml index abb0f4091..4234ccc58 100644 --- a/nb-adapters/adapter-dataapi/src/main/resources/activities/list_collection_names.yaml +++ b/nb-adapters/adapter-dataapi/src/main/resources/activities/list_collection_names.yaml @@ -6,4 +6,4 @@ blocks: list_collection_names: ops: op1: - list_collection_names: + list_collection_names: TBD diff --git a/nb-adapters/adapter-dataapi/src/main/resources/activities/list_collections.yaml b/nb-adapters/adapter-dataapi/src/main/resources/activities/list_collections.yaml index 421e2c1dd..87d2b9ac8 100644 --- a/nb-adapters/adapter-dataapi/src/main/resources/activities/list_collections.yaml +++ b/nb-adapters/adapter-dataapi/src/main/resources/activities/list_collections.yaml @@ -6,4 +6,4 @@ blocks: list_collections: ops: op1: - list_collections: + list_collections: TBD diff --git a/nb-apis/adapters-api/src/main/java/io/nosqlbench/adapters/api/activityconfig/rawyaml/RawOpDef.java b/nb-apis/adapters-api/src/main/java/io/nosqlbench/adapters/api/activityconfig/rawyaml/RawOpDef.java index f59717466..a8b7acb30 100644 --- a/nb-apis/adapters-api/src/main/java/io/nosqlbench/adapters/api/activityconfig/rawyaml/RawOpDef.java +++ b/nb-apis/adapters-api/src/main/java/io/nosqlbench/adapters/api/activityconfig/rawyaml/RawOpDef.java @@ -140,7 +140,7 @@ public class RawOpDef extends RawOpFields { if (v == null) { throw new OpConfigError("A map key '" + k.toString() + "' with a null value was encountered. This is not" + " allowed, and may be the result of using an unquoted binding, like {" + k + "}. You can simply wrap this in quotes" + - " like \"{"+ k +"\"} to avoid interpreting this as a JSON map." + + " like \"{"+ k +"}\" to avoid interpreting this as a JSON map." + (path.size()>0 ? String.join(".",path):"")); } else { if (v instanceof Map) { diff --git a/nb-engine/nb-engine-core/src/main/java/io/nosqlbench/engine/api/scenarios/NBCLIScenarioPreprocessor.java b/nb-engine/nb-engine-core/src/main/java/io/nosqlbench/engine/api/scenarios/NBCLIScenarioPreprocessor.java index 259323756..6168bbe84 100644 --- a/nb-engine/nb-engine-core/src/main/java/io/nosqlbench/engine/api/scenarios/NBCLIScenarioPreprocessor.java +++ b/nb-engine/nb-engine-core/src/main/java/io/nosqlbench/engine/api/scenarios/NBCLIScenarioPreprocessor.java @@ -313,7 +313,7 @@ public class NBCLIScenarioPreprocessor { } private static final Pattern templatePattern = Pattern.compile("TEMPLATE\\((.+?)\\)"); - private static final Pattern innerTemplatePattern = Pattern.compile("TEMPLATE\\((.+?)$"); + private static final Pattern innerTemplatePattern = Pattern.compile("TEMPLATE\\((.+?)\\)"); private static final Pattern templatePattern2 = Pattern.compile("<<(.+?)>>"); public static List filterForScenarios(List> candidates) { @@ -444,22 +444,18 @@ public class NBCLIScenarioPreprocessor { String match = matcher.group(1); Matcher innerMatcher = innerTemplatePattern.matcher(match); - String[] matchArray = match.split("[,:]"); - if (matchArray.length==1) { - matchArray = new String[]{matchArray[0],""}; - } -// if (matchArray.length!=2) { -// throw new BasicError("TEMPLATE form must have two arguments separated by a comma, like 'TEMPLATE(a,b), not '" + match +"'"); -// } - //TODO: support recursive matches if (innerMatcher.find()) { - String[] innerMatch = innerMatcher.group(1).split("[,:]"); - - //We want the outer name with the inner default value - templates.put(matchArray[0], innerMatch[1]); - } else { - templates.put(matchArray[0], matchArray[1]); + String innerMatch = innerMatcher.group(1); + templates = matchTemplates("TEMPLATE(" + innerMatch + ")", templates); + String resolvedInner = templates.getOrDefault(innerMatch.split("[,:]")[0], ""); + match = match.replace("TEMPLATE(" + innerMatch + ")", resolvedInner); } + + String[] matchArray = match.split("[,:]"); + if (matchArray.length == 1) { + matchArray = new String[]{matchArray[0], ""}; + } + templates.put(matchArray[0], matchArray[1]); } matcher = templatePattern2.matcher(line);