mirror of
https://github.com/nosqlbench/nosqlbench.git
synced 2025-02-25 18:55:28 -06:00
Merge pull request #1416 from nosqlbench/vector-mergup
vector testing support - restructured branch for easier PR reviews
This commit is contained in:
commit
f4396a0bb9
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,10 +19,10 @@ package io.nosqlbench.adapter.amqp;
|
|||||||
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -20,11 +20,11 @@ import io.nosqlbench.adapter.amqp.dispensers.AmqpMsgRecvOpDispenser;
|
|||||||
import io.nosqlbench.adapter.amqp.dispensers.AmqpMsgSendOpDispenser;
|
import io.nosqlbench.adapter.amqp.dispensers.AmqpMsgSendOpDispenser;
|
||||||
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -21,9 +21,9 @@ import io.nosqlbench.adapter.amqp.AmqpSpace;
|
|||||||
import io.nosqlbench.adapter.amqp.exception.AmqpAdapterUnexpectedException;
|
import io.nosqlbench.adapter.amqp.exception.AmqpAdapterUnexpectedException;
|
||||||
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
||||||
import io.nosqlbench.adapter.amqp.util.AmqpAdapterMetrics;
|
import io.nosqlbench.adapter.amqp.util.AmqpAdapterMetrics;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.commons.lang3.math.NumberUtils;
|
import org.apache.commons.lang3.math.NumberUtils;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -22,8 +22,8 @@ import io.nosqlbench.adapter.amqp.AmqpSpace;
|
|||||||
import io.nosqlbench.adapter.amqp.exception.AmqpAdapterUnexpectedException;
|
import io.nosqlbench.adapter.amqp.exception.AmqpAdapterUnexpectedException;
|
||||||
import io.nosqlbench.adapter.amqp.ops.OpTimeTrackAmqpMsgRecvOp;
|
import io.nosqlbench.adapter.amqp.ops.OpTimeTrackAmqpMsgRecvOp;
|
||||||
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -24,8 +24,8 @@ import io.nosqlbench.adapter.amqp.exception.AmqpAdapterUnexpectedException;
|
|||||||
import io.nosqlbench.adapter.amqp.ops.OpTimeTrackAmqpMsgSendOp;
|
import io.nosqlbench.adapter.amqp.ops.OpTimeTrackAmqpMsgSendOp;
|
||||||
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
import io.nosqlbench.adapter.amqp.ops.AmqpTimeTrackOp;
|
||||||
import io.nosqlbench.adapter.amqp.util.AmqpAdapterUtil;
|
import io.nosqlbench.adapter.amqp.util.AmqpAdapterUtil;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.commons.lang3.BooleanUtils;
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.commons.lang3.math.NumberUtils;
|
import org.apache.commons.lang3.math.NumberUtils;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -7,12 +7,11 @@
|
|||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
* Unless required by applicable law or agreed to in writing,
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
* software distributed under the License is distributed on an
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
* KIND, either express or implied. See the License for the
|
* See the License for the specific language governing permissions and
|
||||||
* specific language governing permissions and limitations
|
* limitations under the License.
|
||||||
* under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package io.nosqlbench.adapter.amqp.ops;
|
package io.nosqlbench.adapter.amqp.ops;
|
||||||
@ -20,7 +19,7 @@ package io.nosqlbench.adapter.amqp.ops;
|
|||||||
import com.rabbitmq.client.Channel;
|
import com.rabbitmq.client.Channel;
|
||||||
import io.nosqlbench.adapter.amqp.AmqpSpace;
|
import io.nosqlbench.adapter.amqp.AmqpSpace;
|
||||||
import io.nosqlbench.adapter.amqp.util.AmqpAdapterMetrics;
|
import io.nosqlbench.adapter.amqp.util.AmqpAdapterMetrics;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.CycleOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
||||||
|
|
||||||
public abstract class AmqpTimeTrackOp implements CycleOp<Object> {
|
public abstract class AmqpTimeTrackOp implements CycleOp<Object> {
|
||||||
private final AmqpAdapterMetrics amqpAdapterMetrics;
|
private final AmqpAdapterMetrics amqpAdapterMetrics;
|
||||||
|
@ -41,11 +41,6 @@
|
|||||||
<version>${revision}</version>
|
<version>${revision}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.codehaus.groovy</groupId>
|
|
||||||
<artifactId>groovy</artifactId>
|
|
||||||
</dependency>
|
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.tinkerpop</groupId>
|
<groupId>org.apache.tinkerpop</groupId>
|
||||||
<artifactId>gremlin-core</artifactId>
|
<artifactId>gremlin-core</artifactId>
|
||||||
@ -64,16 +59,18 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.datastax.oss</groupId>
|
<groupId>com.datastax.oss</groupId>
|
||||||
<artifactId>java-driver-core</artifactId>
|
<artifactId>java-driver-core</artifactId>
|
||||||
</dependency>
|
<version>4.17.0</version>
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.github.docker-java</groupId>
|
|
||||||
<artifactId>docker-java-core</artifactId>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.datastax.oss</groupId>
|
<groupId>com.datastax.oss</groupId>
|
||||||
<artifactId>java-driver-query-builder</artifactId>
|
<artifactId>java-driver-query-builder</artifactId>
|
||||||
|
<version>4.17.0</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.github.docker-java</groupId>
|
||||||
|
<artifactId>docker-java-core</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
@ -103,7 +100,7 @@
|
|||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.antlr</groupId>
|
<groupId>org.antlr</groupId>
|
||||||
<artifactId>antlr4-maven-plugin</artifactId>
|
<artifactId>antlr4-maven-plugin</artifactId>
|
||||||
<version>4.12.0</version>
|
<version>4.13.0</version>
|
||||||
<configuration>
|
<configuration>
|
||||||
<sourceDirectory>src/main/java/io/nosqlbench/cqlgen/grammars
|
<sourceDirectory>src/main/java/io/nosqlbench/cqlgen/grammars
|
||||||
</sourceDirectory>
|
</sourceDirectory>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.cqld4;
|
package io.nosqlbench.adapter.cqld4;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
|
|
||||||
@Service(value = DriverAdapter.class, selector = "cql")
|
@Service(value = DriverAdapter.class, selector = "cql")
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,11 +19,11 @@ package io.nosqlbench.adapter.cqld4;
|
|||||||
import io.nosqlbench.adapter.cqld4.opmappers.Cqld4CoreOpMapper;
|
import io.nosqlbench.adapter.cqld4.opmappers.Cqld4CoreOpMapper;
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.Op;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -18,7 +18,7 @@ package io.nosqlbench.adapter.cqld4;
|
|||||||
|
|
||||||
import com.datastax.oss.driver.api.core.cql.ResultSet;
|
import com.datastax.oss.driver.api.core.cql.ResultSet;
|
||||||
import com.datastax.oss.driver.api.core.cql.Row;
|
import com.datastax.oss.driver.api.core.cql.Row;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.ResultProcessor;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.ResultProcessor;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -18,7 +18,7 @@ package io.nosqlbench.adapter.cqld4;
|
|||||||
|
|
||||||
import com.datastax.oss.driver.api.core.cql.ResultSet;
|
import com.datastax.oss.driver.api.core.cql.ResultSet;
|
||||||
import com.datastax.oss.driver.api.core.cql.Row;
|
import com.datastax.oss.driver.api.core.cql.Row;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.ResultProcessor;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.ResultProcessor;
|
||||||
|
|
||||||
public interface ResultSetProcessor extends ResultProcessor<ResultSet, Row> {
|
public interface ResultSetProcessor extends ResultProcessor<ResultSet, Row> {
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -14,7 +14,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package io.nosqlbench.adapter.cqld4.opdispensers;
|
package io.nosqlbench.adapter.cqld4.diagnostics;
|
||||||
|
|
||||||
import com.datastax.oss.driver.api.core.CqlIdentifier;
|
import com.datastax.oss.driver.api.core.CqlIdentifier;
|
||||||
import com.datastax.oss.driver.api.core.cql.BoundStatement;
|
import com.datastax.oss.driver.api.core.cql.BoundStatement;
|
||||||
@ -25,8 +25,10 @@ import com.datastax.oss.driver.api.core.data.CqlDuration;
|
|||||||
import com.datastax.oss.driver.api.core.data.CqlVector;
|
import com.datastax.oss.driver.api.core.data.CqlVector;
|
||||||
import com.datastax.oss.driver.api.core.data.TupleValue;
|
import com.datastax.oss.driver.api.core.data.TupleValue;
|
||||||
import com.datastax.oss.driver.api.core.data.UdtValue;
|
import com.datastax.oss.driver.api.core.data.UdtValue;
|
||||||
import com.datastax.oss.driver.api.core.type.CqlVectorType;
|
|
||||||
import com.datastax.oss.driver.api.core.type.DataType;
|
import com.datastax.oss.driver.api.core.type.DataType;
|
||||||
|
import com.datastax.oss.driver.api.core.type.VectorType;
|
||||||
|
import com.datastax.oss.driver.api.core.type.codec.ExtraTypeCodecs;
|
||||||
|
import com.datastax.oss.driver.api.core.type.codec.TypeCodec;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
||||||
import io.nosqlbench.api.errors.OpConfigError;
|
import io.nosqlbench.api.errors.OpConfigError;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
@ -41,10 +43,12 @@ import java.time.LocalDate;
|
|||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
import static com.datastax.oss.protocol.internal.ProtocolConstants.DataType.*;
|
import static com.datastax.oss.protocol.internal.ProtocolConstants.DataType.*;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This should only be used when there is an exception thrown by some higher level logic.
|
* This should only be used when there is an exception thrown by some higher level logic.
|
||||||
* The purpose of this class is to do a more thorough job of checking each step of binding
|
* The purpose of this class is to do a more thorough job of checking each step of binding
|
||||||
@ -53,18 +57,28 @@ import static com.datastax.oss.protocol.internal.ProtocolConstants.DataType.*;
|
|||||||
*/
|
*/
|
||||||
public class CQLD4PreparedStmtDiagnostics {
|
public class CQLD4PreparedStmtDiagnostics {
|
||||||
private static final Logger logger = LogManager.getLogger(CQLD4PreparedStmtDiagnostics.class);
|
private static final Logger logger = LogManager.getLogger(CQLD4PreparedStmtDiagnostics.class);
|
||||||
|
private static final ConcurrentHashMap<VectorType, TypeCodec<float[]>> vectorCodecs = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
public static BoundStatement bindStatement(BoundStatement bound, CqlIdentifier colname,
|
public static BoundStatement bindStatement(
|
||||||
Object colval, DataType coltype) {
|
BoundStatement bound,
|
||||||
|
CqlIdentifier colname,
|
||||||
|
Object colval,
|
||||||
|
DataType coltype
|
||||||
|
) {
|
||||||
return switch (coltype.getProtocolCode()) {
|
return switch (coltype.getProtocolCode()) {
|
||||||
case CUSTOM -> {
|
case CUSTOM -> {
|
||||||
if (coltype instanceof CqlVectorType) {
|
if (coltype instanceof VectorType vt) {
|
||||||
yield bound.setCqlVector(colname, (CqlVector<?>) colval);
|
if (colval instanceof CqlVector cv) {
|
||||||
|
yield bound.setVector(colname, cv, cv.get(0).getClass());
|
||||||
|
} else if (colval instanceof float[] floatAry) {
|
||||||
|
TypeCodec<float[]> codec = vectorCodecs.computeIfAbsent(vt, v -> ExtraTypeCodecs.floatVectorToArray(v.getDimensions()));
|
||||||
|
yield bound.set(colname, floatAry, codec);
|
||||||
|
} else {
|
||||||
|
throw new RuntimeException("Unrecognized vector Java type to bind to " + coltype.asCql(true, true) + " value=" +colval.getClass().getSimpleName());
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
throw new RuntimeException("Unrecognized custom type for diagnostics: " + coltype.asCql(true, true) + " value= " +colval.getClass().getSimpleName());
|
||||||
}
|
}
|
||||||
throw new RuntimeException("Unhandled CUSTOM type for diagnostic: "
|
|
||||||
+ coltype.getClass().getSimpleName());
|
|
||||||
|
|
||||||
}
|
}
|
||||||
case ASCII, VARCHAR -> bound.setString(colname, (String) colval);
|
case ASCII, VARCHAR -> bound.setString(colname, (String) colval);
|
||||||
case BIGINT, COUNTER -> bound.setLong(colname, (long) colval);
|
case BIGINT, COUNTER -> bound.setLong(colname, (long) colval);
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -18,8 +18,8 @@ package io.nosqlbench.adapter.cqld4.opdispensers;
|
|||||||
|
|
||||||
import com.datastax.oss.driver.api.core.CqlSession;
|
import com.datastax.oss.driver.api.core.CqlSession;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
|
@ -26,9 +26,9 @@ import com.datastax.oss.driver.api.core.metadata.token.Token;
|
|||||||
import io.nosqlbench.adapter.cqld4.Cqld4OpMetrics;
|
import io.nosqlbench.adapter.cqld4.Cqld4OpMetrics;
|
||||||
import io.nosqlbench.adapter.cqld4.Cqld4Space;
|
import io.nosqlbench.adapter.cqld4.Cqld4Space;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -22,10 +22,10 @@ import com.datastax.oss.driver.api.core.CqlSession;
|
|||||||
import groovy.lang.Script;
|
import groovy.lang.Script;
|
||||||
import io.nosqlbench.adapter.cqld4.Cqld4Space;
|
import io.nosqlbench.adapter.cqld4.Cqld4Space;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4FluentGraphOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4FluentGraphOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.Op;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.virtdata.core.bindings.Bindings;
|
import io.nosqlbench.virtdata.core.bindings.Bindings;
|
||||||
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
|
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal;
|
||||||
import org.apache.tinkerpop.gremlin.structure.Vertex;
|
import org.apache.tinkerpop.gremlin.structure.Vertex;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -21,9 +21,9 @@ import com.datastax.dse.driver.api.core.graph.ScriptGraphStatementBuilder;
|
|||||||
import com.datastax.oss.driver.api.core.CqlSession;
|
import com.datastax.oss.driver.api.core.CqlSession;
|
||||||
import io.nosqlbench.adapter.cqld4.Cqld4Space;
|
import io.nosqlbench.adapter.cqld4.Cqld4Space;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4ScriptGraphOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4ScriptGraphOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
@ -21,10 +21,11 @@ import com.datastax.oss.driver.api.core.cql.BoundStatement;
|
|||||||
import com.datastax.oss.driver.api.core.cql.PreparedStatement;
|
import com.datastax.oss.driver.api.core.cql.PreparedStatement;
|
||||||
import com.datastax.oss.driver.api.core.cql.Statement;
|
import com.datastax.oss.driver.api.core.cql.Statement;
|
||||||
import io.nosqlbench.adapter.cqld4.RSProcessors;
|
import io.nosqlbench.adapter.cqld4.RSProcessors;
|
||||||
|
import io.nosqlbench.adapter.cqld4.diagnostics.CQLD4PreparedStmtDiagnostics;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlPreparedStatement;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlPreparedStatement;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.api.errors.OpConfigError;
|
import io.nosqlbench.api.errors.OpConfigError;
|
||||||
import io.nosqlbench.virtdata.core.templates.ParsedTemplateString;
|
import io.nosqlbench.virtdata.core.templates.ParsedTemplateString;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
|
@ -22,8 +22,8 @@ import com.datastax.oss.driver.api.core.cql.SimpleStatementBuilder;
|
|||||||
import com.datastax.oss.driver.api.core.cql.Statement;
|
import com.datastax.oss.driver.api.core.cql.Statement;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlSimpleStatement;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlSimpleStatement;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
|
@ -20,8 +20,8 @@ import com.datastax.oss.driver.api.core.CqlSession;
|
|||||||
import com.datastax.oss.driver.api.core.cql.SimpleStatement;
|
import com.datastax.oss.driver.api.core.cql.SimpleStatement;
|
||||||
import com.datastax.oss.driver.api.core.cql.Statement;
|
import com.datastax.oss.driver.api.core.cql.Statement;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlSimpleStatement;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlSimpleStatement;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -20,7 +20,7 @@ import com.datastax.oss.driver.api.core.CqlSession;
|
|||||||
import com.datastax.oss.driver.api.core.cql.Statement;
|
import com.datastax.oss.driver.api.core.cql.Statement;
|
||||||
import io.nosqlbench.adapter.cqld4.Cqld4DriverAdapter;
|
import io.nosqlbench.adapter.cqld4.Cqld4DriverAdapter;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,10 +19,10 @@ package io.nosqlbench.adapter.cqld4.opmappers;
|
|||||||
import com.datastax.oss.driver.api.core.CqlSession;
|
import com.datastax.oss.driver.api.core.CqlSession;
|
||||||
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4SimpleCqlStmtDispenser;
|
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4SimpleCqlStmtDispenser;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
|
@ -23,10 +23,10 @@ import io.nosqlbench.adapter.cqld4.ResultSetProcessor;
|
|||||||
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4PreparedStmtDispenser;
|
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4PreparedStmtDispenser;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
||||||
import io.nosqlbench.adapter.cqld4.processors.CqlFieldCaptureProcessor;
|
import io.nosqlbench.adapter.cqld4.processors.CqlFieldCaptureProcessor;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import io.nosqlbench.api.config.params.ParamsParser;
|
import io.nosqlbench.api.config.params.ParamsParser;
|
||||||
import io.nosqlbench.api.errors.BasicError;
|
import io.nosqlbench.api.errors.BasicError;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -18,10 +18,10 @@ package io.nosqlbench.adapter.cqld4.opmappers;
|
|||||||
|
|
||||||
import com.datastax.oss.driver.api.core.CqlSession;
|
import com.datastax.oss.driver.api.core.CqlSession;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4RainbowTableOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4RainbowTableOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,10 +19,10 @@ package io.nosqlbench.adapter.cqld4.opmappers;
|
|||||||
import com.datastax.oss.driver.api.core.CqlSession;
|
import com.datastax.oss.driver.api.core.CqlSession;
|
||||||
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4RawStmtDispenser;
|
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4RawStmtDispenser;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4CqlOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,12 +19,12 @@ package io.nosqlbench.adapter.cqld4.opmappers;
|
|||||||
import com.datastax.oss.driver.api.core.CqlSession;
|
import com.datastax.oss.driver.api.core.CqlSession;
|
||||||
import io.nosqlbench.adapter.cqld4.Cqld4Space;
|
import io.nosqlbench.adapter.cqld4.Cqld4Space;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.Op;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -22,11 +22,11 @@ import groovy.lang.Binding;
|
|||||||
import groovy.lang.GroovyShell;
|
import groovy.lang.GroovyShell;
|
||||||
import groovy.lang.Script;
|
import groovy.lang.Script;
|
||||||
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4FluentGraphOpDispenser;
|
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4FluentGraphOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.Op;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import io.nosqlbench.api.errors.OpConfigError;
|
import io.nosqlbench.api.errors.OpConfigError;
|
||||||
import io.nosqlbench.virtdata.core.bindings.Bindings;
|
import io.nosqlbench.virtdata.core.bindings.Bindings;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,10 +19,10 @@ package io.nosqlbench.adapter.cqld4.opmappers;
|
|||||||
import com.datastax.oss.driver.api.core.CqlSession;
|
import com.datastax.oss.driver.api.core.CqlSession;
|
||||||
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4GremlinOpDispenser;
|
import io.nosqlbench.adapter.cqld4.opdispensers.Cqld4GremlinOpDispenser;
|
||||||
import io.nosqlbench.adapter.cqld4.optypes.Cqld4ScriptGraphOp;
|
import io.nosqlbench.adapter.cqld4.optypes.Cqld4ScriptGraphOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
|
@ -26,7 +26,7 @@ import io.nosqlbench.adapter.cqld4.exceptions.ChangeUnappliedCycleException;
|
|||||||
import io.nosqlbench.adapter.cqld4.exceptions.ExceededRetryReplaceException;
|
import io.nosqlbench.adapter.cqld4.exceptions.ExceededRetryReplaceException;
|
||||||
import io.nosqlbench.adapter.cqld4.exceptions.UndefinedResultSetException;
|
import io.nosqlbench.adapter.cqld4.exceptions.UndefinedResultSetException;
|
||||||
import io.nosqlbench.adapter.cqld4.exceptions.UnexpectedPagingException;
|
import io.nosqlbench.adapter.cqld4.exceptions.UnexpectedPagingException;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.*;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.*;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,8 +19,8 @@ package io.nosqlbench.adapter.cqld4.optypes;
|
|||||||
import com.datastax.dse.driver.api.core.graph.FluentGraphStatement;
|
import com.datastax.dse.driver.api.core.graph.FluentGraphStatement;
|
||||||
import com.datastax.dse.driver.api.core.graph.GraphResultSet;
|
import com.datastax.dse.driver.api.core.graph.GraphResultSet;
|
||||||
import com.datastax.oss.driver.api.core.CqlSession;
|
import com.datastax.oss.driver.api.core.CqlSession;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.CycleOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.OpResultSize;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.OpResultSize;
|
||||||
|
|
||||||
public class Cqld4FluentGraphOp implements CycleOp<GraphResultSet>, OpResultSize {
|
public class Cqld4FluentGraphOp implements CycleOp<GraphResultSet>, OpResultSize {
|
||||||
private final CqlSession session;
|
private final CqlSession session;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -17,7 +17,7 @@
|
|||||||
package io.nosqlbench.adapter.cqld4.optypes;
|
package io.nosqlbench.adapter.cqld4.optypes;
|
||||||
|
|
||||||
import com.datastax.oss.driver.api.core.cql.ResultSet;
|
import com.datastax.oss.driver.api.core.cql.ResultSet;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.*;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.*;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,8 +19,8 @@ package io.nosqlbench.adapter.cqld4.optypes;
|
|||||||
import com.datastax.dse.driver.api.core.graph.GraphResultSet;
|
import com.datastax.dse.driver.api.core.graph.GraphResultSet;
|
||||||
import com.datastax.dse.driver.api.core.graph.ScriptGraphStatement;
|
import com.datastax.dse.driver.api.core.graph.ScriptGraphStatement;
|
||||||
import com.datastax.oss.driver.api.core.CqlSession;
|
import com.datastax.oss.driver.api.core.CqlSession;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.CycleOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.OpResultSize;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.OpResultSize;
|
||||||
|
|
||||||
public class Cqld4ScriptGraphOp implements CycleOp<GraphResultSet>, OpResultSize {
|
public class Cqld4ScriptGraphOp implements CycleOp<GraphResultSet>, OpResultSize {
|
||||||
private final CqlSession session;
|
private final CqlSession session;
|
||||||
|
@ -21,8 +21,8 @@ import io.nosqlbench.api.content.NBIO;
|
|||||||
import io.nosqlbench.cqlgen.api.BindingsLibrary;
|
import io.nosqlbench.cqlgen.api.BindingsLibrary;
|
||||||
import io.nosqlbench.cqlgen.binders.Binding;
|
import io.nosqlbench.cqlgen.binders.Binding;
|
||||||
import io.nosqlbench.cqlgen.model.CqlColumnBase;
|
import io.nosqlbench.cqlgen.model.CqlColumnBase;
|
||||||
import io.nosqlbench.engine.api.activityconfig.OpsLoader;
|
import io.nosqlbench.adapters.api.activityconfig.OpsLoader;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpsDocList;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpsDocList;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
@ -23,7 +23,7 @@ import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
|
|||||||
import io.nosqlbench.virtdata.library.basics.shared.from_long.to_vector.NormalizeDoubleListVector;
|
import io.nosqlbench.virtdata.library.basics.shared.from_long.to_vector.NormalizeDoubleListVector;
|
||||||
import io.nosqlbench.virtdata.library.basics.shared.from_long.to_vector.NormalizeFloatListVector;
|
import io.nosqlbench.virtdata.library.basics.shared.from_long.to_vector.NormalizeFloatListVector;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
@ -33,37 +33,28 @@ import java.util.function.Function;
|
|||||||
*/
|
*/
|
||||||
@ThreadSafeMapper
|
@ThreadSafeMapper
|
||||||
@Categories(Category.experimental)
|
@Categories(Category.experimental)
|
||||||
public class NormalizeCqlVector implements Function<com.datastax.oss.driver.api.core.data.CqlVector, com.datastax.oss.driver.api.core.data.CqlVector> {
|
public class NormalizeCqlVector implements Function<CqlVector, CqlVector> {
|
||||||
private final NormalizeDoubleListVector ndv = new NormalizeDoubleListVector();
|
private final NormalizeDoubleListVector ndv = new NormalizeDoubleListVector();
|
||||||
private final NormalizeFloatListVector nfv = new NormalizeFloatListVector();
|
private final NormalizeFloatListVector nfv = new NormalizeFloatListVector();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public com.datastax.oss.driver.api.core.data.CqlVector apply(CqlVector cqlVector) {
|
public CqlVector apply(CqlVector cqlVector) {
|
||||||
|
double[] vals = new double[cqlVector.size()];
|
||||||
CqlVector.Builder builder = CqlVector.builder();
|
double accumulator= 0.0d;
|
||||||
Iterable values = cqlVector.getValues();
|
for (int i = 0; i < vals.length; i++) {
|
||||||
List<Object> list = new ArrayList<>();
|
vals[i]=cqlVector.get(i).doubleValue();
|
||||||
values.forEach(list::add);
|
accumulator+=vals[i]*vals[i];
|
||||||
|
|
||||||
if (list.isEmpty()) {
|
|
||||||
|
|
||||||
builder.add(List.of());
|
|
||||||
} else if (list.get(0) instanceof Float) {
|
|
||||||
List<Float> floats = new ArrayList<>();
|
|
||||||
list.forEach(o -> floats.add((Float) o));
|
|
||||||
for (Float fv : floats) {
|
|
||||||
builder.add(fv);
|
|
||||||
}
|
}
|
||||||
|
double factor = 1.0d/Math.sqrt(Arrays.stream(vals).map(d -> d * d).sum());
|
||||||
|
|
||||||
} else if (list.get(0) instanceof Double) {
|
if (cqlVector.get(0) instanceof Float) {
|
||||||
List<Double> doubles = new ArrayList<>();
|
List<Float> list = Arrays.stream(vals).mapToObj(d -> Float.valueOf((float) (d * factor))).toList();
|
||||||
list.forEach(o -> doubles.add((Double) o));
|
return CqlVector.newInstance(list);
|
||||||
for (Double dv : doubles) {
|
} else if (cqlVector.get(0) instanceof Double) {
|
||||||
builder.add(dv);
|
List<Double> list = Arrays.stream(vals).mapToObj(d -> Double.valueOf((float) (d * factor))).toList();
|
||||||
}
|
return CqlVector.newInstance(list);
|
||||||
} else {
|
} else {
|
||||||
throw new RuntimeException("Only Doubles and Floats are recognized.");
|
throw new RuntimeException(NormalizeCqlVector.class.getCanonicalName()+ " only supports Double and Float type");
|
||||||
}
|
}
|
||||||
return builder.build();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -43,8 +43,7 @@ public class CqlVector implements LongFunction<com.datastax.oss.driver.api.core.
|
|||||||
@Override
|
@Override
|
||||||
public com.datastax.oss.driver.api.core.data.CqlVector apply(long cycle) {
|
public com.datastax.oss.driver.api.core.data.CqlVector apply(long cycle) {
|
||||||
List components = func.apply(cycle);
|
List components = func.apply(cycle);
|
||||||
com.datastax.oss.driver.api.core.data.CqlVector.Builder vbuilder = com.datastax.oss.driver.api.core.data.CqlVector.builder();
|
com.datastax.oss.driver.api.core.data.CqlVector vector = com.datastax.oss.driver.api.core.data.CqlVector.newInstance(components);
|
||||||
vbuilder.add(components.toArray());
|
return vector;
|
||||||
return vbuilder.build();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,53 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (c) 2023 nosqlbench
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package io.nosqlbench.datamappers.functions.to_cqlvector;
|
|
||||||
|
|
||||||
import com.datastax.oss.driver.api.core.data.CqlVector;
|
|
||||||
import io.nosqlbench.virtdata.api.annotations.Categories;
|
|
||||||
import io.nosqlbench.virtdata.api.annotations.Category;
|
|
||||||
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
|
|
||||||
|
|
||||||
import java.util.function.Function;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Convert the incoming object List, Number, or Array to a CqlVector
|
|
||||||
* using {@link CqlVector.Builder#add(Object[])}}. If any numeric value
|
|
||||||
* is passed in, then it becomes the only component of a 1D vector.
|
|
||||||
* Otherwise, the individual values are added as vector components.
|
|
||||||
*/
|
|
||||||
@ThreadSafeMapper
|
|
||||||
@Categories(Category.experimental)
|
|
||||||
public class ToCqlVector implements Function<Object, CqlVector> {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public CqlVector apply(Object object) {
|
|
||||||
Object[] ary = null;
|
|
||||||
if (object instanceof List list) {
|
|
||||||
ary = list.toArray();
|
|
||||||
} else if (object instanceof Number number) {
|
|
||||||
ary = new Object[]{number.floatValue()};
|
|
||||||
} else if (object.getClass().isArray()) {
|
|
||||||
ary = (Object[]) object;
|
|
||||||
} else {
|
|
||||||
throw new RuntimeException("Unsupported input type for CqlVector: " + object.getClass().getCanonicalName());
|
|
||||||
}
|
|
||||||
CqlVector.Builder vbuilder = CqlVector.builder();
|
|
||||||
vbuilder.add(ary);
|
|
||||||
return vbuilder.build();
|
|
||||||
}
|
|
||||||
}
|
|
@ -0,0 +1,38 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2023 nosqlbench
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.nosqlbench.datamappers.functions.to_cqlvector.from_double_ary;
|
||||||
|
|
||||||
|
import com.datastax.oss.driver.api.core.data.CqlVector;
|
||||||
|
import io.nosqlbench.virtdata.api.annotations.Categories;
|
||||||
|
import io.nosqlbench.virtdata.api.annotations.Category;
|
||||||
|
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
|
||||||
|
|
||||||
|
import java.util.function.Function;
|
||||||
|
|
||||||
|
@ThreadSafeMapper
|
||||||
|
@Categories(Category.experimental)
|
||||||
|
public class ToCqlVector implements Function<double[], CqlVector> {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CqlVector apply(double[] doubles) {
|
||||||
|
Double[] numbers = new Double[doubles.length];
|
||||||
|
for (int i = 0; i < doubles.length; i++) {
|
||||||
|
numbers[i]=doubles[i];
|
||||||
|
}
|
||||||
|
return CqlVector.newInstance(numbers);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2023 nosqlbench
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.nosqlbench.datamappers.functions.to_cqlvector.from_float_ary;
|
||||||
|
|
||||||
|
import com.datastax.oss.driver.api.core.data.CqlVector;
|
||||||
|
import io.nosqlbench.virtdata.api.annotations.Categories;
|
||||||
|
import io.nosqlbench.virtdata.api.annotations.Category;
|
||||||
|
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
|
||||||
|
|
||||||
|
import java.util.function.Function;
|
||||||
|
|
||||||
|
@ThreadSafeMapper
|
||||||
|
@Categories(Category.experimental)
|
||||||
|
public class ToCqlVector implements Function<float[], CqlVector> {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CqlVector apply(float[] floats) {
|
||||||
|
Float[] numbers = new Float[floats.length];
|
||||||
|
for (int i = 0; i < floats.length; i++) {
|
||||||
|
numbers[i]=floats[i];
|
||||||
|
}
|
||||||
|
return CqlVector.newInstance(numbers);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2023 nosqlbench
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.nosqlbench.datamappers.functions.to_cqlvector.from_number_list;
|
||||||
|
|
||||||
|
import com.datastax.oss.driver.api.core.data.CqlVector;
|
||||||
|
import io.nosqlbench.virtdata.api.annotations.Categories;
|
||||||
|
import io.nosqlbench.virtdata.api.annotations.Category;
|
||||||
|
import io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.function.Function;
|
||||||
|
|
||||||
|
@ThreadSafeMapper
|
||||||
|
@Categories(Category.experimental)
|
||||||
|
public class ToCqlVector implements Function<List, CqlVector> {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CqlVector apply(List objects) {
|
||||||
|
if (objects.size()==0) {
|
||||||
|
throw new RuntimeException("Empty lists are not supported for vectors.");
|
||||||
|
}
|
||||||
|
return CqlVector.newInstance((List<Number>)objects);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,60 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2023 nosqlbench
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.nosqlbench.datamappers.functions.geometry;
|
||||||
|
|
||||||
|
import com.datastax.oss.driver.api.core.data.CqlVector;
|
||||||
|
import org.assertj.core.data.Offset;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
|
public class NormalizeCqlVectorTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void normalizeCqlVectorFloats() {
|
||||||
|
CqlVector square = CqlVector.newInstance(1.0f, 1.0f);
|
||||||
|
NormalizeCqlVector nv = new NormalizeCqlVector();
|
||||||
|
CqlVector normaled = nv.apply(square);
|
||||||
|
|
||||||
|
List sides = new ArrayList();
|
||||||
|
for (int i = 0; i < normaled.size(); i++) {
|
||||||
|
sides.add(normaled.get(i));
|
||||||
|
}
|
||||||
|
assertThat(sides.size()).isEqualTo(2);
|
||||||
|
assertThat(sides.get(0)).isInstanceOf(Float.class);
|
||||||
|
assertThat(sides.get(1)).isInstanceOf(Float.class);
|
||||||
|
assertThat(((Float)sides.get(0)).doubleValue()).isCloseTo(0.707, Offset.offset(0.001d));
|
||||||
|
assertThat(((Float)sides.get(1)).doubleValue()).isCloseTo(0.707, Offset.offset(0.001d));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void normalizeCqlVectorDoubles() {
|
||||||
|
CqlVector square = CqlVector.newInstance(1.0d, 1.0d);
|
||||||
|
NormalizeCqlVector nv = new NormalizeCqlVector();
|
||||||
|
CqlVector normaled = nv.apply(square);
|
||||||
|
|
||||||
|
assertThat(normaled.size()).isEqualTo(2);
|
||||||
|
assertThat(normaled.get(0)).isInstanceOf(Double.class);
|
||||||
|
assertThat(normaled.get(1)).isInstanceOf(Double.class);
|
||||||
|
assertThat(normaled.get(0).doubleValue()).isCloseTo(0.707, Offset.offset(0.001d));
|
||||||
|
assertThat(normaled.get(1).doubleValue()).isCloseTo(0.707, Offset.offset(0.001d));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -16,26 +16,21 @@
|
|||||||
|
|
||||||
package io.nosqlbench.datamappers.functions.to_cqlvector;
|
package io.nosqlbench.datamappers.functions.to_cqlvector;
|
||||||
|
|
||||||
import io.nosqlbench.virtdata.library.basics.shared.from_long.to_collection.ListSized;
|
import io.nosqlbench.virtdata.library.basics.shared.from_long.to_collection.ListSizedStepped;
|
||||||
import io.nosqlbench.virtdata.library.basics.shared.from_long.to_float.HashRange;
|
import io.nosqlbench.virtdata.library.basics.shared.from_long.to_float.HashRange;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
public class CqlVectorTest {
|
public class CqlVectorTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testCqlVector() {
|
public void testCqlVector() {
|
||||||
CqlVector func = new CqlVector(new ListSized(2, new HashRange(0.2f, 5.0f)));
|
CqlVector func = new CqlVector(new ListSizedStepped(2, new HashRange(0.2f, 5.0f)));
|
||||||
com.datastax.oss.driver.api.core.data.CqlVector result = func.apply(23L);
|
com.datastax.oss.driver.api.core.data.CqlVector vector = func.apply(23L);
|
||||||
List<Object> values = new ArrayList<>();
|
for (Object value : vector) {
|
||||||
for (Object value : result.getValues()) {
|
assertThat(value).isInstanceOf(Float.class);
|
||||||
values.add(value);
|
|
||||||
}
|
}
|
||||||
assertThat(values.get(0)).isInstanceOf(Float.class);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
package io.nosqlbench.datamappers.functions.to_cqlvector;
|
package io.nosqlbench.datamappers.functions.to_cqlvector;
|
||||||
|
|
||||||
import com.datastax.oss.driver.api.core.data.CqlVector;
|
import com.datastax.oss.driver.api.core.data.CqlVector;
|
||||||
|
import io.nosqlbench.datamappers.functions.to_cqlvector.from_number_list.ToCqlVector;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -17,14 +17,14 @@
|
|||||||
package io.nosqlbench.adapter.diag;
|
package io.nosqlbench.adapter.diag;
|
||||||
|
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.activityconfig.OpsLoader;
|
import io.nosqlbench.adapters.api.activityconfig.OpsLoader;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpTemplate;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpTemplate;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpTemplateFormat;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpTemplateFormat;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpsDocList;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpsDocList;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.decorators.SyntheticOpTemplateProvider;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.decorators.SyntheticOpTemplateProvider;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
import io.nosqlbench.api.config.params.NBParams;
|
import io.nosqlbench.api.config.params.NBParams;
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -17,7 +17,7 @@
|
|||||||
package io.nosqlbench.adapter.diag;
|
package io.nosqlbench.adapter.diag;
|
||||||
|
|
||||||
import io.nosqlbench.adapter.diag.optasks.DiagTask;
|
import io.nosqlbench.adapter.diag.optasks.DiagTask;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.CycleOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
||||||
|
@ -21,8 +21,8 @@ import io.nosqlbench.api.config.standard.NBConfigModel;
|
|||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.api.config.standard.NBReconfigurable;
|
import io.nosqlbench.api.config.standard.NBReconfigurable;
|
||||||
import io.nosqlbench.engine.api.activityapi.ratelimits.RateLimiter;
|
import io.nosqlbench.engine.api.activityapi.ratelimits.RateLimiter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.nb.annotations.ServiceSelector;
|
import io.nosqlbench.nb.annotations.ServiceSelector;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,9 +19,9 @@ package io.nosqlbench.adapter.diag;
|
|||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.api.config.standard.NBReconfigurable;
|
import io.nosqlbench.api.config.standard.NBReconfigurable;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -17,10 +17,10 @@
|
|||||||
package io.nosqlbench.adapter.dynamodb;
|
package io.nosqlbench.adapter.dynamodb;
|
||||||
|
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.nb.annotations.Maturity;
|
import io.nosqlbench.nb.annotations.Maturity;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,11 +19,11 @@ package io.nosqlbench.adapter.dynamodb;
|
|||||||
import com.amazonaws.services.dynamodbv2.document.DynamoDB;
|
import com.amazonaws.services.dynamodbv2.document.DynamoDB;
|
||||||
import io.nosqlbench.adapter.dynamodb.opdispensers.*;
|
import io.nosqlbench.adapter.dynamodb.opdispensers.*;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -21,9 +21,9 @@ import com.amazonaws.services.dynamodbv2.model.*;
|
|||||||
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DDBCreateTableOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DDBCreateTableOp;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -21,9 +21,9 @@ import com.amazonaws.services.dynamodbv2.model.DeleteTableRequest;
|
|||||||
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DDBDeleteTableOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DDBDeleteTableOp;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -23,9 +23,9 @@ import com.amazonaws.services.dynamodbv2.document.spec.GetItemSpec;
|
|||||||
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DDBGetItemOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DDBGetItemOp;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -21,9 +21,9 @@ import com.amazonaws.services.dynamodbv2.document.Item;
|
|||||||
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DDBPutItemOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DDBPutItemOp;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.api.errors.OpConfigError;
|
import io.nosqlbench.api.errors.OpConfigError;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -23,9 +23,9 @@ import com.amazonaws.services.dynamodbv2.document.spec.QuerySpec;
|
|||||||
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DDBQueryOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DDBQueryOp;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -20,9 +20,9 @@ import com.amazonaws.services.dynamodbv2.document.DynamoDB;
|
|||||||
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
import io.nosqlbench.adapter.dynamodb.DynamoDBSpace;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.DynamoDBOp;
|
||||||
import io.nosqlbench.adapter.dynamodb.optypes.RawDynamodOp;
|
import io.nosqlbench.adapter.dynamodb.optypes.RawDynamodOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
@ -36,11 +36,9 @@ public class RawDynamoDBOpDispenser extends BaseOpDispenser<DynamoDBOp, DynamoDB
|
|||||||
this.ddb = ddb;
|
this.ddb = ddb;
|
||||||
|
|
||||||
String bodytype = pop.getValueType("body").getSimpleName();
|
String bodytype = pop.getValueType("body").getSimpleName();
|
||||||
switch (bodytype) {
|
if (bodytype.equals("String")) {
|
||||||
case "String":
|
jsonFunction = pop.getAsRequiredFunction("body");
|
||||||
jsonFunction=pop.getAsRequiredFunction("body");
|
} else {
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new RuntimeException("Unable to create body mapping function from type '" + bodytype + "'");
|
throw new RuntimeException("Unable to create body mapping function from type '" + bodytype + "'");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -20,7 +20,7 @@ import com.amazonaws.services.dynamodbv2.document.DynamoDB;
|
|||||||
import com.amazonaws.services.dynamodbv2.document.Item;
|
import com.amazonaws.services.dynamodbv2.document.Item;
|
||||||
import com.amazonaws.services.dynamodbv2.document.Table;
|
import com.amazonaws.services.dynamodbv2.document.Table;
|
||||||
import com.amazonaws.services.dynamodbv2.document.spec.GetItemSpec;
|
import com.amazonaws.services.dynamodbv2.document.spec.GetItemSpec;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.OpResultSize;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.OpResultSize;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html#API_GetItem_RequestSyntax">GetItem API</a>
|
* @see <a href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html#API_GetItem_RequestSyntax">GetItem API</a>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -21,7 +21,7 @@ import com.amazonaws.services.dynamodbv2.document.ItemCollection;
|
|||||||
import com.amazonaws.services.dynamodbv2.document.QueryOutcome;
|
import com.amazonaws.services.dynamodbv2.document.QueryOutcome;
|
||||||
import com.amazonaws.services.dynamodbv2.document.Table;
|
import com.amazonaws.services.dynamodbv2.document.Table;
|
||||||
import com.amazonaws.services.dynamodbv2.document.spec.QuerySpec;
|
import com.amazonaws.services.dynamodbv2.document.spec.QuerySpec;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.OpResultSize;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.OpResultSize;
|
||||||
|
|
||||||
public class DDBQueryOp extends DynamoDBOp implements OpResultSize {
|
public class DDBQueryOp extends DynamoDBOp implements OpResultSize {
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -17,7 +17,7 @@
|
|||||||
package io.nosqlbench.adapter.dynamodb.optypes;
|
package io.nosqlbench.adapter.dynamodb.optypes;
|
||||||
|
|
||||||
import com.amazonaws.services.dynamodbv2.document.DynamoDB;
|
import com.amazonaws.services.dynamodbv2.document.DynamoDB;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.CycleOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html?icmpid=docs_dynamodb_help_panel_hp_capacity#HowItWorks.ProvisionedThroughput.Manual
|
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html?icmpid=docs_dynamodb_help_panel_hp_capacity#HowItWorks.ProvisionedThroughput.Manual
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -22,10 +22,10 @@ import io.nosqlbench.adapter.http.core.HttpOpMapper;
|
|||||||
import io.nosqlbench.adapter.http.core.HttpSpace;
|
import io.nosqlbench.adapter.http.core.HttpSpace;
|
||||||
import io.nosqlbench.api.config.standard.ConfigModel;
|
import io.nosqlbench.api.config.standard.ConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.Param;
|
import io.nosqlbench.api.config.standard.Param;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -18,7 +18,7 @@ package io.nosqlbench.adapter.http.core;
|
|||||||
|
|
||||||
import io.nosqlbench.adapter.http.errors.InvalidResponseBodyException;
|
import io.nosqlbench.adapter.http.errors.InvalidResponseBodyException;
|
||||||
import io.nosqlbench.adapter.http.errors.InvalidStatusCodeException;
|
import io.nosqlbench.adapter.http.errors.InvalidStatusCodeException;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.RunnableOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.RunnableOp;
|
||||||
|
|
||||||
import java.net.http.HttpClient;
|
import java.net.http.HttpClient;
|
||||||
import java.net.http.HttpRequest;
|
import java.net.http.HttpRequest;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -16,9 +16,9 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.http.core;
|
package io.nosqlbench.adapter.http.core;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.net.http.HttpClient;
|
import java.net.http.HttpClient;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -16,11 +16,11 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.http.core;
|
package io.nosqlbench.adapter.http.core;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
@ -20,12 +20,12 @@ import io.nosqlbench.adapter.http.core.HttpOpMapper;
|
|||||||
import io.nosqlbench.adapter.http.core.HttpSpace;
|
import io.nosqlbench.adapter.http.core.HttpSpace;
|
||||||
import io.nosqlbench.api.config.NBLabeledElement;
|
import io.nosqlbench.api.config.NBLabeledElement;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityconfig.OpsLoader;
|
import io.nosqlbench.adapters.api.activityconfig.OpsLoader;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpTemplate;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpTemplate;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpTemplateFormat;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpTemplateFormat;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpsDocList;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpsDocList;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
import org.junit.jupiter.api.BeforeAll;
|
import org.junit.jupiter.api.BeforeAll;
|
||||||
|
@ -19,10 +19,10 @@ package io.nosqlbench.adapter.jdbc;
|
|||||||
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -20,11 +20,11 @@ import io.nosqlbench.adapter.jdbc.opdispensers.JDBCExecuteOpDispenser;
|
|||||||
import io.nosqlbench.adapter.jdbc.opdispensers.JDBCExecuteQueryOpDispenser;
|
import io.nosqlbench.adapter.jdbc.opdispensers.JDBCExecuteQueryOpDispenser;
|
||||||
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -18,9 +18,9 @@ package io.nosqlbench.adapter.jdbc.opdispensers;
|
|||||||
|
|
||||||
import io.nosqlbench.adapter.jdbc.JDBCSpace;
|
import io.nosqlbench.adapter.jdbc.JDBCSpace;
|
||||||
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
||||||
|
@ -19,8 +19,8 @@ package io.nosqlbench.adapter.jdbc.opdispensers;
|
|||||||
import io.nosqlbench.adapter.jdbc.JDBCSpace;
|
import io.nosqlbench.adapter.jdbc.JDBCSpace;
|
||||||
import io.nosqlbench.adapter.jdbc.optypes.JDBCExecuteOp;
|
import io.nosqlbench.adapter.jdbc.optypes.JDBCExecuteOp;
|
||||||
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
@ -19,8 +19,8 @@ package io.nosqlbench.adapter.jdbc.opdispensers;
|
|||||||
import io.nosqlbench.adapter.jdbc.JDBCSpace;
|
import io.nosqlbench.adapter.jdbc.JDBCSpace;
|
||||||
import io.nosqlbench.adapter.jdbc.optypes.JDBCExecuteQueryOp;
|
import io.nosqlbench.adapter.jdbc.optypes.JDBCExecuteQueryOp;
|
||||||
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
import io.nosqlbench.adapter.jdbc.optypes.JDBCOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.jdbc.optypes;
|
package io.nosqlbench.adapter.jdbc.optypes;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.RunnableOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.RunnableOp;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,10 +19,10 @@ package io.nosqlbench.adapter.kafka;
|
|||||||
import io.nosqlbench.adapter.kafka.ops.KafkaOp;
|
import io.nosqlbench.adapter.kafka.ops.KafkaOp;
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -20,11 +20,11 @@ import io.nosqlbench.adapter.kafka.dispensers.MessageConsumerOpDispenser;
|
|||||||
import io.nosqlbench.adapter.kafka.dispensers.MessageProducerOpDispenser;
|
import io.nosqlbench.adapter.kafka.dispensers.MessageProducerOpDispenser;
|
||||||
import io.nosqlbench.adapter.kafka.ops.KafkaOp;
|
import io.nosqlbench.adapter.kafka.ops.KafkaOp;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -21,9 +21,9 @@ import io.nosqlbench.adapter.kafka.exception.KafkaAdapterInvalidParamException;
|
|||||||
import io.nosqlbench.adapter.kafka.ops.KafkaOp;
|
import io.nosqlbench.adapter.kafka.ops.KafkaOp;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterMetrics;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterMetrics;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil.DOC_LEVEL_PARAMS;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil.DOC_LEVEL_PARAMS;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.commons.lang3.BooleanUtils;
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
import org.apache.commons.lang3.math.NumberUtils;
|
import org.apache.commons.lang3.math.NumberUtils;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
|
@ -24,9 +24,9 @@ import io.nosqlbench.adapter.kafka.ops.OpTimeTrackKafkaConsumer;
|
|||||||
import io.nosqlbench.adapter.kafka.util.EndToEndStartingTimeSource;
|
import io.nosqlbench.adapter.kafka.util.EndToEndStartingTimeSource;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil.DOC_LEVEL_PARAMS;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil.DOC_LEVEL_PARAMS;
|
||||||
import io.nosqlbench.engine.api.metrics.ReceivedMessageSequenceTracker;
|
import io.nosqlbench.adapters.api.metrics.ReceivedMessageSequenceTracker;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.commons.lang3.BooleanUtils;
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.commons.lang3.math.NumberUtils;
|
import org.apache.commons.lang3.math.NumberUtils;
|
||||||
|
@ -23,9 +23,9 @@ import io.nosqlbench.adapter.kafka.ops.OpTimeTrackKafkaClient;
|
|||||||
import io.nosqlbench.adapter.kafka.ops.OpTimeTrackKafkaProducer;
|
import io.nosqlbench.adapter.kafka.ops.OpTimeTrackKafkaProducer;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil.DOC_LEVEL_PARAMS;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil.DOC_LEVEL_PARAMS;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.metrics.EndToEndMetricsAdapterUtil;
|
import io.nosqlbench.adapters.api.metrics.EndToEndMetricsAdapterUtil;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.kafka.clients.producer.KafkaProducer;
|
import org.apache.kafka.clients.producer.KafkaProducer;
|
||||||
import org.apache.kafka.clients.producer.ProducerRecord;
|
import org.apache.kafka.clients.producer.ProducerRecord;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -7,12 +7,11 @@
|
|||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
* Unless required by applicable law or agreed to in writing,
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
* software distributed under the License is distributed on an
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
* KIND, either express or implied. See the License for the
|
* See the License for the specific language governing permissions and
|
||||||
* specific language governing permissions and limitations
|
* limitations under the License.
|
||||||
* under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package io.nosqlbench.adapter.kafka.ops;
|
package io.nosqlbench.adapter.kafka.ops;
|
||||||
@ -20,7 +19,7 @@ package io.nosqlbench.adapter.kafka.ops;
|
|||||||
import com.codahale.metrics.Histogram;
|
import com.codahale.metrics.Histogram;
|
||||||
import io.nosqlbench.adapter.kafka.KafkaSpace;
|
import io.nosqlbench.adapter.kafka.KafkaSpace;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterMetrics;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterMetrics;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.CycleOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
||||||
|
|
||||||
public class KafkaOp implements CycleOp<Object> {
|
public class KafkaOp implements CycleOp<Object> {
|
||||||
private final KafkaAdapterMetrics kafkaAdapterMetrics;
|
private final KafkaAdapterMetrics kafkaAdapterMetrics;
|
||||||
|
@ -21,7 +21,7 @@ import io.nosqlbench.adapter.kafka.KafkaSpace;
|
|||||||
import io.nosqlbench.adapter.kafka.util.EndToEndStartingTimeSource;
|
import io.nosqlbench.adapter.kafka.util.EndToEndStartingTimeSource;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterMetrics;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterMetrics;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil;
|
||||||
import io.nosqlbench.engine.api.metrics.ReceivedMessageSequenceTracker;
|
import io.nosqlbench.adapters.api.metrics.ReceivedMessageSequenceTracker;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.kafka.clients.consumer.*;
|
import org.apache.kafka.clients.consumer.*;
|
||||||
import org.apache.kafka.common.TopicPartition;
|
import org.apache.kafka.common.TopicPartition;
|
||||||
|
@ -19,13 +19,12 @@ package io.nosqlbench.adapter.kafka.ops;
|
|||||||
import io.nosqlbench.adapter.kafka.KafkaSpace;
|
import io.nosqlbench.adapter.kafka.KafkaSpace;
|
||||||
import io.nosqlbench.adapter.kafka.exception.KafkaAdapterUnexpectedException;
|
import io.nosqlbench.adapter.kafka.exception.KafkaAdapterUnexpectedException;
|
||||||
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil;
|
import io.nosqlbench.adapter.kafka.util.KafkaAdapterUtil;
|
||||||
import io.nosqlbench.engine.api.metrics.MessageSequenceNumberSendingHandler;
|
import io.nosqlbench.adapters.api.metrics.MessageSequenceNumberSendingHandler;
|
||||||
import io.nosqlbench.engine.api.metrics.EndToEndMetricsAdapterUtil;
|
import io.nosqlbench.adapters.api.metrics.EndToEndMetricsAdapterUtil;
|
||||||
import org.apache.kafka.clients.producer.Callback;
|
import org.apache.kafka.clients.producer.Callback;
|
||||||
import org.apache.kafka.clients.producer.KafkaProducer;
|
import org.apache.kafka.clients.producer.KafkaProducer;
|
||||||
import org.apache.kafka.clients.producer.ProducerRecord;
|
import org.apache.kafka.clients.producer.ProducerRecord;
|
||||||
import org.apache.kafka.clients.producer.RecordMetadata;
|
import org.apache.kafka.clients.producer.RecordMetadata;
|
||||||
import org.apache.kafka.common.KafkaException;
|
|
||||||
import org.apache.kafka.common.errors.AuthorizationException;
|
import org.apache.kafka.common.errors.AuthorizationException;
|
||||||
import org.apache.kafka.common.errors.OutOfOrderSequenceException;
|
import org.apache.kafka.common.errors.OutOfOrderSequenceException;
|
||||||
import org.apache.kafka.common.errors.ProducerFencedException;
|
import org.apache.kafka.common.errors.ProducerFencedException;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,11 +19,11 @@ package io.nosqlbench.adapter.mongodb.core;
|
|||||||
import io.nosqlbench.adapter.mongodb.dispensers.MongoCommandOpDispenser;
|
import io.nosqlbench.adapter.mongodb.dispensers.MongoCommandOpDispenser;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.api.errors.BasicError;
|
import io.nosqlbench.api.errors.BasicError;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.Op;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -18,10 +18,10 @@ package io.nosqlbench.adapter.mongodb.core;
|
|||||||
|
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.Op;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
|
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -18,10 +18,10 @@ package io.nosqlbench.adapter.mongodb.dispensers;
|
|||||||
|
|
||||||
import io.nosqlbench.adapter.mongodb.core.MongoSpace;
|
import io.nosqlbench.adapter.mongodb.core.MongoSpace;
|
||||||
import io.nosqlbench.adapter.mongodb.ops.MongoDirectCommandOp;
|
import io.nosqlbench.adapter.mongodb.ops.MongoDirectCommandOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.Op;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.bson.Document;
|
import org.bson.Document;
|
||||||
import org.bson.conversions.Bson;
|
import org.bson.conversions.Bson;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -20,9 +20,9 @@ import com.mongodb.client.MongoClient;
|
|||||||
import com.mongodb.client.MongoDatabase;
|
import com.mongodb.client.MongoDatabase;
|
||||||
import io.nosqlbench.adapter.mongodb.core.MongoSpace;
|
import io.nosqlbench.adapter.mongodb.core.MongoSpace;
|
||||||
import io.nosqlbench.adapter.mongodb.core.MongodbDriverAdapter;
|
import io.nosqlbench.adapter.mongodb.core.MongodbDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.Op;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.Op;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.function.LongFunction;
|
import java.util.function.LongFunction;
|
||||||
|
|
||||||
@ -33,7 +33,7 @@ import java.util.function.LongFunction;
|
|||||||
public class MongoDbUpdateOpDispenser extends BaseOpDispenser<Op, MongoSpace> {
|
public class MongoDbUpdateOpDispenser extends BaseOpDispenser<Op, MongoSpace> {
|
||||||
private final LongFunction<MongoSpace> spaceF;
|
private final LongFunction<MongoSpace> spaceF;
|
||||||
private final LongFunction<Op> opF;
|
private final LongFunction<Op> opF;
|
||||||
private LongFunction<String> collectionF;
|
private final LongFunction<String> collectionF;
|
||||||
|
|
||||||
public MongoDbUpdateOpDispenser(MongodbDriverAdapter adapter, ParsedOp pop, LongFunction<String> collectionF) {
|
public MongoDbUpdateOpDispenser(MongodbDriverAdapter adapter, ParsedOp pop, LongFunction<String> collectionF) {
|
||||||
super(adapter, pop);
|
super(adapter, pop);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -17,7 +17,7 @@
|
|||||||
package io.nosqlbench.adapter.mongodb.ops;
|
package io.nosqlbench.adapter.mongodb.ops;
|
||||||
|
|
||||||
import com.mongodb.client.MongoClient;
|
import com.mongodb.client.MongoClient;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.CycleOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
||||||
import org.bson.Document;
|
import org.bson.Document;
|
||||||
import org.bson.conversions.Bson;
|
import org.bson.conversions.Bson;
|
||||||
|
|
||||||
|
@ -19,10 +19,10 @@ package io.nosqlbench.adapter.pinecone;
|
|||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
|
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
@ -20,10 +20,10 @@ import io.nosqlbench.adapter.pinecone.opdispensers.*;
|
|||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOpTypes;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOpTypes;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -21,7 +21,7 @@ import io.nosqlbench.adapter.pinecone.PineconeDriverAdapter;
|
|||||||
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeDeleteOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeDeleteOp;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.DeleteRequest;
|
import io.pinecone.proto.DeleteRequest;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -21,7 +21,7 @@ import io.nosqlbench.adapter.pinecone.PineconeDriverAdapter;
|
|||||||
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeDescribeIndexStatsOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeDescribeIndexStatsOp;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.DescribeIndexStatsRequest;
|
import io.pinecone.proto.DescribeIndexStatsRequest;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -20,7 +20,7 @@ import io.nosqlbench.adapter.pinecone.PineconeDriverAdapter;
|
|||||||
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeFetchOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeFetchOp;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.FetchRequest;
|
import io.pinecone.proto.FetchRequest;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
@ -22,8 +22,8 @@ import com.google.protobuf.Value;
|
|||||||
import io.nosqlbench.adapter.pinecone.PineconeDriverAdapter;
|
import io.nosqlbench.adapter.pinecone.PineconeDriverAdapter;
|
||||||
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.BaseOpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.BaseOpDispenser;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
@ -21,7 +21,7 @@ import io.nosqlbench.adapter.pinecone.PineconeDriverAdapter;
|
|||||||
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeQueryOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeQueryOp;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.QueryRequest;
|
import io.pinecone.proto.QueryRequest;
|
||||||
import io.pinecone.proto.QueryVector;
|
import io.pinecone.proto.QueryVector;
|
||||||
import io.pinecone.proto.SparseValues;
|
import io.pinecone.proto.SparseValues;
|
||||||
|
@ -21,7 +21,7 @@ import io.nosqlbench.adapter.pinecone.PineconeDriverAdapter;
|
|||||||
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeUpdateOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeUpdateOp;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.SparseValues;
|
import io.pinecone.proto.SparseValues;
|
||||||
import io.pinecone.proto.UpdateRequest;
|
import io.pinecone.proto.UpdateRequest;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
|
@ -21,7 +21,7 @@ import io.nosqlbench.adapter.pinecone.PineconeDriverAdapter;
|
|||||||
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
import io.nosqlbench.adapter.pinecone.PineconeSpace;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeOp;
|
||||||
import io.nosqlbench.adapter.pinecone.ops.PineconeUpsertOp;
|
import io.nosqlbench.adapter.pinecone.ops.PineconeUpsertOp;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.SparseValues;
|
import io.pinecone.proto.SparseValues;
|
||||||
import io.pinecone.proto.UpsertRequest;
|
import io.pinecone.proto.UpsertRequest;
|
||||||
import io.pinecone.proto.Vector;
|
import io.pinecone.proto.Vector;
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.pinecone.ops;
|
package io.nosqlbench.adapter.pinecone.ops;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.PineconeConnection;
|
import io.pinecone.PineconeConnection;
|
||||||
import io.pinecone.proto.DeleteRequest;
|
import io.pinecone.proto.DeleteRequest;
|
||||||
import io.pinecone.proto.DeleteResponse;
|
import io.pinecone.proto.DeleteResponse;
|
||||||
@ -41,8 +41,9 @@ public class PineconeDeleteOp extends PineconeOp {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public Object apply(long value) {
|
||||||
DeleteResponse response = connection.getBlockingStub().delete(request);
|
DeleteResponse response = connection.getBlockingStub().delete(request);
|
||||||
logger.debug("Pinecone delete request successful: " + response.toString());
|
logger.debug("Pinecone delete request successful: " + response.toString());
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.pinecone.ops;
|
package io.nosqlbench.adapter.pinecone.ops;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.DescribeIndexStatsRequest;
|
import io.pinecone.proto.DescribeIndexStatsRequest;
|
||||||
import io.pinecone.proto.DescribeIndexStatsResponse;
|
import io.pinecone.proto.DescribeIndexStatsResponse;
|
||||||
import io.pinecone.PineconeConnection;
|
import io.pinecone.PineconeConnection;
|
||||||
@ -44,7 +44,7 @@ public class PineconeDescribeIndexStatsOp extends PineconeOp {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public Object apply(long value) {
|
||||||
DescribeIndexStatsResponse response = connection.getBlockingStub().describeIndexStats(request);
|
DescribeIndexStatsResponse response = connection.getBlockingStub().describeIndexStats(request);
|
||||||
if (logger.isDebugEnabled()) {
|
if (logger.isDebugEnabled()) {
|
||||||
logger.debug("Vector counts:");
|
logger.debug("Vector counts:");
|
||||||
@ -52,6 +52,6 @@ public class PineconeDescribeIndexStatsOp extends PineconeOp {
|
|||||||
logger.debug(namespace.getKey() + ": " + namespace.getValue().getVectorCount());
|
logger.debug(namespace.getKey() + ": " + namespace.getValue().getVectorCount());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.pinecone.ops;
|
package io.nosqlbench.adapter.pinecone.ops;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.FetchRequest;
|
import io.pinecone.proto.FetchRequest;
|
||||||
import io.pinecone.PineconeConnection;
|
import io.pinecone.PineconeConnection;
|
||||||
import io.pinecone.proto.FetchResponse;
|
import io.pinecone.proto.FetchResponse;
|
||||||
@ -44,12 +44,13 @@ public class PineconeFetchOp extends PineconeOp {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public Object apply(long value) {
|
||||||
FetchResponse response = connection.getBlockingStub().fetch(request);
|
FetchResponse response = connection.getBlockingStub().fetch(request);
|
||||||
if (logger.isDebugEnabled()) {
|
if (logger.isDebugEnabled()) {
|
||||||
for (Map.Entry<String, Vector> vectors: response.getVectorsMap().entrySet()) {
|
for (Map.Entry<String, Vector> vectors: response.getVectorsMap().entrySet()) {
|
||||||
logger.debug(vectors.getKey() + ": " + vectors.getValue().toString());
|
logger.debug(vectors.getKey() + ": " + vectors.getValue().toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,10 +16,10 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.pinecone.ops;
|
package io.nosqlbench.adapter.pinecone.ops;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.flowtypes.RunnableOp;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.flowtypes.CycleOp;
|
||||||
import io.pinecone.PineconeConnection;
|
import io.pinecone.PineconeConnection;
|
||||||
|
|
||||||
public abstract class PineconeOp implements RunnableOp {
|
public abstract class PineconeOp implements CycleOp {
|
||||||
protected final PineconeConnection connection;
|
protected final PineconeConnection connection;
|
||||||
|
|
||||||
public PineconeOp(PineconeConnection connection) {
|
public PineconeOp(PineconeConnection connection) {
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.pinecone.ops;
|
package io.nosqlbench.adapter.pinecone.ops;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.QueryRequest;
|
import io.pinecone.proto.QueryRequest;
|
||||||
import io.pinecone.PineconeConnection;
|
import io.pinecone.PineconeConnection;
|
||||||
import io.pinecone.proto.QueryResponse;
|
import io.pinecone.proto.QueryResponse;
|
||||||
@ -43,7 +43,7 @@ public class PineconeQueryOp extends PineconeOp {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public Object apply(long value) {
|
||||||
QueryResponse response = connection.getBlockingStub().query(request);
|
QueryResponse response = connection.getBlockingStub().query(request);
|
||||||
if (logger.isDebugEnabled()) {
|
if (logger.isDebugEnabled()) {
|
||||||
for (ScoredVector scored : response.getMatchesList()) {
|
for (ScoredVector scored : response.getMatchesList()) {
|
||||||
@ -55,5 +55,6 @@ public class PineconeQueryOp extends PineconeOp {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.pinecone.ops;
|
package io.nosqlbench.adapter.pinecone.ops;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.UpdateRequest;
|
import io.pinecone.proto.UpdateRequest;
|
||||||
import io.pinecone.PineconeConnection;
|
import io.pinecone.PineconeConnection;
|
||||||
import io.pinecone.proto.UpdateResponse;
|
import io.pinecone.proto.UpdateResponse;
|
||||||
@ -41,8 +41,9 @@ public class PineconeUpdateOp extends PineconeOp {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public Object apply(long value) {
|
||||||
UpdateResponse response = connection.getBlockingStub().update(request);
|
UpdateResponse response = connection.getBlockingStub().update(request);
|
||||||
logger.debug("UpdateResponse successful: " + response.toString());
|
logger.debug("UpdateResponse successful: " + response.toString());
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
package io.nosqlbench.adapter.pinecone.ops;
|
package io.nosqlbench.adapter.pinecone.ops;
|
||||||
|
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.pinecone.proto.UpsertRequest;
|
import io.pinecone.proto.UpsertRequest;
|
||||||
import io.pinecone.PineconeConnection;
|
import io.pinecone.PineconeConnection;
|
||||||
import io.pinecone.proto.UpsertResponse;
|
import io.pinecone.proto.UpsertResponse;
|
||||||
@ -41,8 +41,10 @@ public class PineconeUpsertOp extends PineconeOp {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public Object apply(long value) {
|
||||||
UpsertResponse response = connection.getBlockingStub().upsert(request);
|
UpsertResponse response = connection.getBlockingStub().upsert(request);
|
||||||
logger.debug("Put " + response.getUpsertedCount() + " vectors into the index");
|
logger.debug("Put " + response.getUpsertedCount() + " vectors into the index");
|
||||||
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,36 @@
|
|||||||
|
scenarios:
|
||||||
|
default:
|
||||||
|
mixed: run driver=pinecone cycles=1000 apiKey=2f55b2f0-670f-4c51-9073-4d37142b761a projectName=a850334 environment=us-east-1-aws tags='block:main-.*'
|
||||||
|
|
||||||
|
bindings:
|
||||||
|
id: Mod(<<keycount:1000000000>>); ToString() -> String
|
||||||
|
vector_value: CircleVectors(100000, "io.nosqlbench.virtdata.library.basics.shared.vectors.algorithms.GoldenAngle")
|
||||||
|
state: StateCodes()
|
||||||
|
|
||||||
|
blocks:
|
||||||
|
# main-write:
|
||||||
|
# params:
|
||||||
|
# ratio: 1
|
||||||
|
# ops:
|
||||||
|
# op1:
|
||||||
|
# upsert: "circles"
|
||||||
|
# namespace: "example_namespace"
|
||||||
|
# upsert_vectors:
|
||||||
|
# - id: "{id}"
|
||||||
|
# values: "{vector_value}"
|
||||||
|
# metadata:
|
||||||
|
# state: "{state}"
|
||||||
|
main-read:
|
||||||
|
params:
|
||||||
|
ratio: 1
|
||||||
|
ops:
|
||||||
|
op1:
|
||||||
|
query: "circles"
|
||||||
|
vector: "{vector_value}"
|
||||||
|
namespace: "example_namespace"
|
||||||
|
top_k: 1
|
||||||
|
include_values: true
|
||||||
|
include_metadata: true
|
||||||
|
#result should be type QueryResponse
|
||||||
|
verifier: |
|
||||||
|
result.getMatchesList().get(0).getValuesList()=={vector_value}
|
@ -20,13 +20,13 @@ import io.nosqlbench.adapter.pinecone.opdispensers.*;
|
|||||||
import io.nosqlbench.adapter.pinecone.ops.*;
|
import io.nosqlbench.adapter.pinecone.ops.*;
|
||||||
import io.nosqlbench.api.config.NBLabeledElement;
|
import io.nosqlbench.api.config.NBLabeledElement;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityconfig.OpsLoader;
|
import io.nosqlbench.adapters.api.activityconfig.OpsLoader;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpTemplate;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpTemplate;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpTemplateFormat;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpTemplateFormat;
|
||||||
import io.nosqlbench.engine.api.activityconfig.yaml.OpsDocList;
|
import io.nosqlbench.adapters.api.activityconfig.yaml.OpsDocList;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
import org.junit.jupiter.api.BeforeAll;
|
import org.junit.jupiter.api.BeforeAll;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -17,11 +17,10 @@
|
|||||||
package io.nosqlbench.adapter.pulsar;
|
package io.nosqlbench.adapter.pulsar;
|
||||||
|
|
||||||
import io.nosqlbench.adapter.pulsar.ops.PulsarOp;
|
import io.nosqlbench.adapter.pulsar.ops.PulsarOp;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.BaseDriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.BaseDriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.nb.annotations.Maturity;
|
|
||||||
import io.nosqlbench.nb.annotations.Service;
|
import io.nosqlbench.nb.annotations.Service;
|
||||||
import io.nosqlbench.api.config.standard.NBConfigModel;
|
import io.nosqlbench.api.config.standard.NBConfigModel;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2022 nosqlbench
|
* Copyright (c) 2022-2023 nosqlbench
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@ -19,11 +19,11 @@ package io.nosqlbench.adapter.pulsar;
|
|||||||
import io.nosqlbench.adapter.pulsar.dispensers.*;
|
import io.nosqlbench.adapter.pulsar.dispensers.*;
|
||||||
import io.nosqlbench.adapter.pulsar.ops.PulsarOp;
|
import io.nosqlbench.adapter.pulsar.ops.PulsarOp;
|
||||||
import io.nosqlbench.api.config.standard.NBConfiguration;
|
import io.nosqlbench.api.config.standard.NBConfiguration;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpDispenser;
|
import io.nosqlbench.adapters.api.activityimpl.OpDispenser;
|
||||||
import io.nosqlbench.engine.api.activityimpl.OpMapper;
|
import io.nosqlbench.adapters.api.activityimpl.OpMapper;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverAdapter;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverAdapter;
|
||||||
import io.nosqlbench.engine.api.activityimpl.uniform.DriverSpaceCache;
|
import io.nosqlbench.adapters.api.activityimpl.uniform.DriverSpaceCache;
|
||||||
import io.nosqlbench.engine.api.templating.ParsedOp;
|
import io.nosqlbench.adapters.api.templating.ParsedOp;
|
||||||
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
import io.nosqlbench.engine.api.templating.TypeAndTarget;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user