From 6557c1fc69281f45ea056a59c159d966592ca045 Mon Sep 17 00:00:00 2001 From: Madhavan Sridharan Date: Tue, 26 Mar 2024 15:44:26 -0400 Subject: [PATCH] other number handling items --- .../MilvusAlterCollectionOpDispenser.java | 5 ++- .../MilvusCreateCollectionOpDispenser.java | 40 +++++++++---------- .../MilvusCreateIndexOpDispenser.java | 5 ++- .../opdispensers/MilvusFlushOpDispenser.java | 12 +++--- .../MilvusGetFlushStateOpDispenser.java | 7 ++-- .../MilvusListBulkInsertTasksOpDispenser.java | 5 ++- .../MilvusLoadCollectionOpDispenser.java | 21 +++++----- .../MilvusLoadPartitionsOpDispenser.java | 16 ++++---- .../opdispensers/MilvusQueryOpDispenser.java | 16 ++++---- .../opdispensers/MilvusSearchOpDispenser.java | 10 ++--- 10 files changed, 70 insertions(+), 67 deletions(-) diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusAlterCollectionOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusAlterCollectionOpDispenser.java index bdf3aaac5..9d58981ef 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusAlterCollectionOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusAlterCollectionOpDispenser.java @@ -42,7 +42,8 @@ public class MilvusAlterCollectionOpDispenser extends MilvusBaseOpDispenser ebF = l -> AlterCollectionParam.newBuilder().withCollectionName(targetF.apply(l)); - ebF = op.enhanceFuncOptionally(ebF,"ttl", Integer.class, AlterCollectionParam.Builder::withTTL); + ebF = op.enhanceFuncOptionally(ebF, "ttl", Number.class, + (AlterCollectionParam.Builder b, Number n) -> b.withTTL(n.intValue())); final LongFunction lastF = ebF; final LongFunction collectionParamF = l -> lastF.apply(l).build(); @@ -56,6 +57,6 @@ public class MilvusAlterCollectionOpDispenser extends MilvusBaseOpDispenser targetF ) { - return l -> new MilvusAlterCollectionOp(clientF.apply(l),paramF.apply(l)); + return l -> new MilvusAlterCollectionOp(clientF.apply(l), paramF.apply(l)); } } diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusCreateCollectionOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusCreateCollectionOpDispenser.java index dc1cd9aec..30ffed7db 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusCreateCollectionOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusCreateCollectionOpDispenser.java @@ -39,12 +39,9 @@ public class MilvusCreateCollectionOpDispenser extends MilvusBaseOpDispenser ebF = l -> CreateCollectionParam.newBuilder().withCollectionName(targetF.apply(l)); - ebF = op.enhanceFuncOptionally(ebF, "shards_num", Integer.class, - CreateCollectionParam.Builder::withShardsNum); - ebF = op.enhanceFuncOptionally(ebF, "partition_num", Integer.class, - CreateCollectionParam.Builder::withPartitionsNum); + ebF = op.enhanceFuncOptionally(ebF, "shards_num", Number.class, + (CreateCollectionParam.Builder b, Number n) -> b.withShardsNum(n.intValue())); + ebF = op.enhanceFuncOptionally(ebF, "partition_num", Number.class, + (CreateCollectionParam.Builder b, Number n) -> b.withPartitionsNum(n.intValue())); ebF = op.enhanceFuncOptionally(ebF, "description", String.class, CreateCollectionParam.Builder::withDescription); ebF = op.enhanceEnumOptionally(ebF, "consistency_level", @@ -97,8 +94,7 @@ public class MilvusCreateCollectionOpDispenser extends MilvusBaseOpDispenser builder.withMaxLength(n.intValue())); + fieldspec.getOptionalStaticConfig("max_capacity", Number.class) + .ifPresent((Number n) -> builder.withMaxCapacity(n.intValue())); + fieldspec.getOptionalStaticValue(List.of("partition_key", "partition"), Boolean.class) .ifPresent(builder::withPartitionKey); - fieldspec.getOptionalStaticValue("dimension", Integer.class) - .ifPresent(builder::withDimension); + fieldspec.getOptionalStaticValue("dimension", Number.class) + .ifPresent((Number n) -> builder.withDimension(n.intValue())); fieldspec.getOptionalStaticConfig("data_type", String.class) .map(DataType::valueOf) .ifPresent(builder::withDataType); fieldspec.getOptionalStaticConfig("type_params", Map.class) .ifPresent(builder::withTypeParams); - fieldspec.getOptionalStaticConfig("element_type",String.class) - .map(DataType::valueOf) - .ifPresent(builder::withElementType); + fieldspec.getOptionalStaticConfig("element_type", String.class) + .map(DataType::valueOf) + .ifPresent(builder::withElementType); fieldTypes.add(builder.build()); }); diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusCreateIndexOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusCreateIndexOpDispenser.java index c2b23bcee..776f85de0 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusCreateIndexOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusCreateIndexOpDispenser.java @@ -71,7 +71,10 @@ public class MilvusCreateIndexOpDispenser extends MilvusBaseOpDispenser> createOpFunc(LongFunction paramF, LongFunction clientF, ParsedOp op, LongFunction targetF) { + public LongFunction> createOpFunc( + LongFunction paramF, + LongFunction clientF, + ParsedOp op, LongFunction targetF) { return l -> new MilvusCreateIndexOp(clientF.apply(l), paramF.apply(l)); } } diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusFlushOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusFlushOpDispenser.java index 5f5e0242f..e99efdcd8 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusFlushOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusFlushOpDispenser.java @@ -51,12 +51,12 @@ public class MilvusFlushOpDispenser extends MilvusBaseOpDispenser { }; LongFunction finalEbF = ebF; ebF = l -> finalEbF.apply(l).withCollectionNames(cnames.apply(l)); - ebF = op.enhanceFuncOptionally(ebF, List.of("database_name","database"),String.class, + ebF = op.enhanceFuncOptionally(ebF, List.of("database_name", "database"), String.class, FlushParam.Builder::withDatabaseName); - ebF = op.enhanceFuncOptionally(ebF, "sync_flush_waiting_interval",Long.class, - FlushParam.Builder::withSyncFlushWaitingInterval); - ebF = op.enhanceFuncOptionally(ebF, "sync_flush_waiting_timeout",Long.class, - FlushParam.Builder::withSyncFlushWaitingTimeout); + ebF = op.enhanceFuncOptionally(ebF, "sync_flush_waiting_interval", Number.class, + (FlushParam.Builder b, Number n) -> b.withSyncFlushWaitingInterval(n.longValue())); + ebF = op.enhanceFuncOptionally(ebF, "sync_flush_waiting_timeout", Number.class, + (FlushParam.Builder b, Number n) -> b.withSyncFlushWaitingTimeout(n.longValue())); final LongFunction lastF = ebF; final LongFunction collectionParamF = l -> lastF.apply(l).build(); @@ -70,6 +70,6 @@ public class MilvusFlushOpDispenser extends MilvusBaseOpDispenser { ParsedOp op, LongFunction targetF ) { - return l -> new MilvusFlushOp(clientF.apply(l),paramF.apply(l)); + return l -> new MilvusFlushOp(clientF.apply(l), paramF.apply(l)); } } diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusGetFlushStateOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusGetFlushStateOpDispenser.java index cc96923ff..cfb41439e 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusGetFlushStateOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusGetFlushStateOpDispenser.java @@ -52,9 +52,10 @@ public class MilvusGetFlushStateOpDispenser extends MilvusBaseOpDispenser finalEbF = ebF; ebF = l -> finalEbF.apply(l).withSegmentIDs(idsF.apply(l)); - ebF = op.enhanceFuncOptionally(ebF,List.of("collection","collection_name"),String.class, + ebF = op.enhanceFuncOptionally(ebF, List.of("collection", "collection_name"), String.class, GetFlushStateParam.Builder::withCollectionName); - ebF = op.enhanceFuncOptionally(ebF,"flush_ts",Long.class,GetFlushStateParam.Builder::withFlushTs); + ebF = op.enhanceFuncOptionally(ebF, "flush_ts", Number.class, + (GetFlushStateParam.Builder b, Number n) -> b.withFlushTs(n.longValue())); final LongFunction lastF = ebF; final LongFunction collectionParamF = l -> lastF.apply(l).build(); @@ -68,6 +69,6 @@ public class MilvusGetFlushStateOpDispenser extends MilvusBaseOpDispenser targetF ) { - return l -> new MilvusGetFlushStateOp(clientF.apply(l),paramF.apply(l)); + return l -> new MilvusGetFlushStateOp(clientF.apply(l), paramF.apply(l)); } } diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusListBulkInsertTasksOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusListBulkInsertTasksOpDispenser.java index 0dea6425e..c584519f5 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusListBulkInsertTasksOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusListBulkInsertTasksOpDispenser.java @@ -41,7 +41,8 @@ public class MilvusListBulkInsertTasksOpDispenser extends MilvusBaseOpDispenser< ) { LongFunction ebF = l -> ListBulkInsertTasksParam.newBuilder().withCollectionName(targetF.apply(l)); - ebF = op.enhanceFuncOptionally(ebF,"limit",Integer.class,ListBulkInsertTasksParam.Builder::withLimit); + ebF = op.enhanceFuncOptionally(ebF, "limit", Number.class, + (ListBulkInsertTasksParam.Builder b, Number n) -> b.withLimit(n.intValue())); final LongFunction lastF = ebF; final LongFunction collectionParamF = l -> lastF.apply(l).build(); @@ -55,6 +56,6 @@ public class MilvusListBulkInsertTasksOpDispenser extends MilvusBaseOpDispenser< ParsedOp op, LongFunction targetF ) { - return l -> new MilvusListBulkInsertTasksOp(clientF.apply(l),paramF.apply(l)); + return l -> new MilvusListBulkInsertTasksOp(clientF.apply(l), paramF.apply(l)); } } diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusLoadCollectionOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusLoadCollectionOpDispenser.java index 9560e7341..a5490963d 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusLoadCollectionOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusLoadCollectionOpDispenser.java @@ -43,17 +43,18 @@ public class MilvusLoadCollectionOpDispenser extends MilvusBaseOpDispenser ebF = l -> LoadCollectionParam.newBuilder().withCollectionName(targetF.apply(l)); - ebF = op.enhanceFuncOptionally(ebF,List.of("database_name","database"),String.class, + ebF = op.enhanceFuncOptionally(ebF, List.of("database_name", "database"), String.class, LoadCollectionParam.Builder::withDatabaseName); - ebF = op.enhanceFuncOptionally(ebF,"refresh",Boolean.class,LoadCollectionParam.Builder::withRefresh); - ebF = op.enhanceFuncOptionally(ebF,"sync_load",Boolean.class,LoadCollectionParam.Builder::withSyncLoad); - ebF = op.enhanceFuncOptionally(ebF,"replica_number",Integer.class,LoadCollectionParam.Builder::withReplicaNumber); - ebF = op.enhanceFuncOptionally(ebF,"resource_groups", List.class,LoadCollectionParam.Builder::withResourceGroups); - ebF = op.enhanceFuncOptionally(ebF,"sync_load_waiting_interval",Number.class, - (LoadCollectionParam.Builder b,Number n) -> b.withSyncLoadWaitingInterval(n.longValue())); - ebF = op.enhanceFuncOptionally(ebF,"sync_load_waiting_timeout",Number.class, - (LoadCollectionParam.Builder b,Number n) -> b.withSyncLoadWaitingTimeout(n.longValue())); + ebF = op.enhanceFuncOptionally(ebF, "refresh", Boolean.class, LoadCollectionParam.Builder::withRefresh); + ebF = op.enhanceFuncOptionally(ebF, "sync_load", Boolean.class, LoadCollectionParam.Builder::withSyncLoad); + ebF = op.enhanceFuncOptionally(ebF, "replica_number", Number.class, + (LoadCollectionParam.Builder b, Number n) -> b.withReplicaNumber(n.intValue())); + ebF = op.enhanceFuncOptionally(ebF, "resource_groups", List.class, LoadCollectionParam.Builder::withResourceGroups); + ebF = op.enhanceFuncOptionally(ebF, "sync_load_waiting_interval", Number.class, + (LoadCollectionParam.Builder b, Number n) -> b.withSyncLoadWaitingInterval(n.longValue())); + ebF = op.enhanceFuncOptionally(ebF, "sync_load_waiting_timeout", Number.class, + (LoadCollectionParam.Builder b, Number n) -> b.withSyncLoadWaitingTimeout(n.longValue())); final LongFunction lastF = ebF; final LongFunction collectionParamF = l -> lastF.apply(l).build(); @@ -67,6 +68,6 @@ public class MilvusLoadCollectionOpDispenser extends MilvusBaseOpDispenser targetF ) { - return l -> new MilvusLoadCollectionOp(clientF.apply(l),paramF.apply(l)); + return l -> new MilvusLoadCollectionOp(clientF.apply(l), paramF.apply(l)); } } diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusLoadPartitionsOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusLoadPartitionsOpDispenser.java index d3898aa1a..2a7d86baf 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusLoadPartitionsOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusLoadPartitionsOpDispenser.java @@ -50,22 +50,24 @@ public class MilvusLoadPartitionsOpDispenser extends MilvusBaseOpDispenser ebF = l -> LoadPartitionsParam.newBuilder().withCollectionName(targetF.apply(l)); - ebF = op.enhanceFunc(ebF, List.of("partition_names","partitions"), List.class, + ebF = op.enhanceFunc(ebF, List.of("partition_names", "partitions"), List.class, LoadPartitionsParam.Builder::withPartitionNames); ebF = op.enhanceFuncOptionally( ebF, "resource_groups", List.class, LoadPartitionsParam.Builder::withResourceGroups ); ebF = op.enhanceFuncOptionally( - ebF, List.of("database_name","database"), String.class, + ebF, List.of("database_name", "database"), String.class, LoadPartitionsParam.Builder::withDatabaseName ); ebF = op.enhanceFuncOptionally(ebF, "refresh", Boolean.class, LoadPartitionsParam.Builder::withRefresh); - ebF = op.enhanceFuncOptionally(ebF, "replica_number", Integer.class, LoadPartitionsParam.Builder::withReplicaNumber); - ebF = op.enhanceFuncOptionally(ebF,"sync_load",Boolean.class,LoadPartitionsParam.Builder::withSyncLoad); - ebF = op.enhanceFuncOptionally(ebF,"sync_load_waiting_interval",Long.class,LoadPartitionsParam.Builder::withSyncLoadWaitingInterval); - ebF = op.enhanceFuncOptionally(ebF,"sync_load_waiting_timeout",Long.class, - LoadPartitionsParam.Builder::withSyncLoadWaitingTimeout); + ebF = op.enhanceFuncOptionally(ebF, "replica_number", Number.class, + (LoadPartitionsParam.Builder b, Number n) -> b.withReplicaNumber(n.intValue())); + ebF = op.enhanceFuncOptionally(ebF, "sync_load", Boolean.class, LoadPartitionsParam.Builder::withSyncLoad); + ebF = op.enhanceFuncOptionally(ebF, "sync_load_waiting_interval", Number.class, + (LoadPartitionsParam.Builder b, Number n) -> b.withSyncLoadWaitingInterval(n.longValue())); + ebF = op.enhanceFuncOptionally(ebF, "sync_load_waiting_timeout", Number.class, + (LoadPartitionsParam.Builder b, Number n) -> b.withSyncLoadWaitingTimeout(n.longValue())); final LongFunction lastF = ebF; final LongFunction collectionParamF = l -> lastF.apply(l).build(); diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusQueryOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusQueryOpDispenser.java index b28be60ea..6bc087c7c 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusQueryOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusQueryOpDispenser.java @@ -44,14 +44,14 @@ public class MilvusQueryOpDispenser extends MilvusBaseOpDispenser { LongFunction ebF = l -> QueryParam.newBuilder().withCollectionName(targetF.apply(l)); - ebF = op.enhanceFuncOptionally(ebF,List.of("partition_names","partitions"), List.class, + ebF = op.enhanceFuncOptionally(ebF, List.of("partition_names", "partitions"), List.class, QueryParam.Builder::withPartitionNames); - ebF = op.enhanceEnumOptionally(ebF,"consistency_level", ConsistencyLevelEnum.class, QueryParam.Builder::withConsistencyLevel); - ebF = op.enhanceFuncOptionally(ebF,"expr",String.class,QueryParam.Builder::withExpr); - ebF = op.enhanceFuncOptionally(ebF,"limit",Long.class,QueryParam.Builder::withLimit); - ebF = op.enhanceFuncOptionally(ebF,"offset",Long.class,QueryParam.Builder::withOffset); - ebF = op.enhanceFuncOptionally(ebF,"ignore_growing",Boolean.class,QueryParam.Builder::withIgnoreGrowing); - ebF = op.enhanceFuncOptionally(ebF,"out_fields",List.class,QueryParam.Builder::withOutFields); + ebF = op.enhanceEnumOptionally(ebF, "consistency_level", ConsistencyLevelEnum.class, QueryParam.Builder::withConsistencyLevel); + ebF = op.enhanceFuncOptionally(ebF, "expr", String.class, QueryParam.Builder::withExpr); + ebF = op.enhanceFuncOptionally(ebF, "limit", Number.class, (QueryParam.Builder b, Number n) -> b.withLimit(n.longValue())); + ebF = op.enhanceFuncOptionally(ebF, "offset", Number.class, (QueryParam.Builder b, Number n) -> b.withOffset(n.longValue())); + ebF = op.enhanceFuncOptionally(ebF, "ignore_growing", Boolean.class, QueryParam.Builder::withIgnoreGrowing); + ebF = op.enhanceFuncOptionally(ebF, "out_fields", List.class, QueryParam.Builder::withOutFields); final LongFunction lastF = ebF; final LongFunction collectionParamF = l -> lastF.apply(l).build(); @@ -65,6 +65,6 @@ public class MilvusQueryOpDispenser extends MilvusBaseOpDispenser { ParsedOp op, LongFunction targetF ) { - return l -> new MilvusQueryOp(clientF.apply(l),paramF.apply(l)); + return l -> new MilvusQueryOp(clientF.apply(l), paramF.apply(l)); } } diff --git a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusSearchOpDispenser.java b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusSearchOpDispenser.java index d2e5021da..f58d1622c 100644 --- a/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusSearchOpDispenser.java +++ b/adapter-milvus/src/main/java/io/nosqlbench/adapter/milvus/opdispensers/MilvusSearchOpDispenser.java @@ -24,12 +24,8 @@ import io.nosqlbench.adapter.milvus.MilvusDriverAdapter; import io.nosqlbench.adapter.milvus.ops.MilvusBaseOp; import io.nosqlbench.adapter.milvus.ops.MilvusSearchOp; import io.nosqlbench.adapters.api.templating.ParsedOp; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -import java.util.ArrayList; import java.util.List; -import java.util.Map; import java.util.function.LongFunction; public class MilvusSearchOpDispenser extends MilvusBaseOpDispenser { @@ -53,9 +49,11 @@ public class MilvusSearchOpDispenser extends MilvusBaseOpDispenser ebF = op.enhanceEnumOptionally(ebF, "consistency_level", ConsistencyLevelEnum.class, SearchParam.Builder::withConsistencyLevel); ebF = op.enhanceFuncOptionally(ebF, "expr", String.class, SearchParam.Builder::withExpr); - ebF = op.enhanceDefaultFunc(ebF, "top_k", Integer.class, 100, SearchParam.Builder::withTopK); + ebF = op.enhanceDefaultFunc(ebF, "top_k", Number.class, 100, + (SearchParam.Builder b, Number n) -> b.withTopK(n.intValue())); ebF = op.enhanceEnumOptionally(ebF, "metric_type", MetricType.class, SearchParam.Builder::withMetricType); - ebF = op.enhanceFuncOptionally(ebF, "round_decimal", Integer.class, SearchParam.Builder::withRoundDecimal); + ebF = op.enhanceFuncOptionally(ebF, "round_decimal", Number.class, + (SearchParam.Builder b, Number n) -> b.withRoundDecimal(n.intValue())); ebF = op.enhanceFuncOptionally(ebF, "ignore_growing", Boolean.class, SearchParam.Builder::withIgnoreGrowing); ebF = op.enhanceFuncOptionally(ebF, "params", String.class, SearchParam.Builder::withParams); ebF = op.enhanceFunc(ebF, List.of("vector_field_name", "vector_field"), String.class,