mirror of https://github.com/tikv/client-java.git
Separate raw client and txn client (#13)
This commit is contained in:
parent
def2e5767f
commit
7ff70610f9
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import static io.grpc.stub.ClientCalls.asyncBidiStreamingCall;
|
||||
import static io.grpc.stub.ClientCalls.blockingServerStreamingCall;
|
||||
|
|
@ -24,11 +24,11 @@ import io.grpc.stub.ClientCalls;
|
|||
import io.grpc.stub.StreamObserver;
|
||||
import java.util.function.Supplier;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.tikv.operation.ErrorHandler;
|
||||
import org.tikv.policy.RetryMaxMs.Builder;
|
||||
import org.tikv.policy.RetryPolicy;
|
||||
import org.tikv.streaming.StreamingResponse;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.common.operation.ErrorHandler;
|
||||
import org.tikv.common.policy.RetryMaxMs.Builder;
|
||||
import org.tikv.common.policy.RetryPolicy;
|
||||
import org.tikv.common.streaming.StreamingResponse;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
|
||||
public abstract class AbstractGRPCClient<
|
||||
BlockingStubT extends AbstractStub<BlockingStubT>, StubT extends AbstractStub<StubT>>
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import static com.google.common.base.Preconditions.checkNotNull;
|
||||
|
||||
|
|
@ -30,30 +30,20 @@ import java.util.concurrent.Future;
|
|||
import java.util.concurrent.ScheduledExecutorService;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.function.Supplier;
|
||||
import org.tikv.codec.Codec.BytesCodec;
|
||||
import org.tikv.codec.CodecDataOutput;
|
||||
import org.tikv.exception.GrpcException;
|
||||
import org.tikv.exception.TiClientInternalException;
|
||||
import org.tikv.common.codec.Codec.BytesCodec;
|
||||
import org.tikv.common.codec.CodecDataOutput;
|
||||
import org.tikv.common.exception.GrpcException;
|
||||
import org.tikv.common.exception.TiClientInternalException;
|
||||
import org.tikv.common.meta.TiTimestamp;
|
||||
import org.tikv.common.operation.PDErrorHandler;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.FutureObserver;
|
||||
import org.tikv.kvproto.Metapb.Store;
|
||||
import org.tikv.kvproto.PDGrpc;
|
||||
import org.tikv.kvproto.PDGrpc.PDBlockingStub;
|
||||
import org.tikv.kvproto.PDGrpc.PDStub;
|
||||
import org.tikv.kvproto.Pdpb.GetMembersRequest;
|
||||
import org.tikv.kvproto.Pdpb.GetMembersResponse;
|
||||
import org.tikv.kvproto.Pdpb.GetRegionByIDRequest;
|
||||
import org.tikv.kvproto.Pdpb.GetRegionRequest;
|
||||
import org.tikv.kvproto.Pdpb.GetRegionResponse;
|
||||
import org.tikv.kvproto.Pdpb.GetStoreRequest;
|
||||
import org.tikv.kvproto.Pdpb.GetStoreResponse;
|
||||
import org.tikv.kvproto.Pdpb.RequestHeader;
|
||||
import org.tikv.kvproto.Pdpb.Timestamp;
|
||||
import org.tikv.kvproto.Pdpb.TsoRequest;
|
||||
import org.tikv.kvproto.Pdpb.TsoResponse;
|
||||
import org.tikv.meta.TiTimestamp;
|
||||
import org.tikv.operation.PDErrorHandler;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.FutureObserver;
|
||||
import org.tikv.kvproto.Pdpb.*;
|
||||
|
||||
public class PDClient extends AbstractGRPCClient<PDBlockingStub, PDStub>
|
||||
implements ReadOnlyPDClient {
|
||||
|
|
@ -13,14 +13,14 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.util.concurrent.Future;
|
||||
import org.tikv.common.meta.TiTimestamp;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.kvproto.Metapb.Store;
|
||||
import org.tikv.meta.TiTimestamp;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.BackOffer;
|
||||
|
||||
/** Readonly PD client including only reading related interface Supposed for TiDB-like use cases */
|
||||
public interface ReadOnlyPDClient {
|
||||
|
|
@ -13,26 +13,26 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import static org.tikv.util.KeyRangeUtils.makeRange;
|
||||
import static org.tikv.common.util.KeyRangeUtils.makeRange;
|
||||
|
||||
import com.google.common.collect.Range;
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import org.tikv.exception.TiClientInternalException;
|
||||
import org.tikv.key.Key;
|
||||
import org.tikv.common.exception.TiClientInternalException;
|
||||
import org.tikv.common.key.Key;
|
||||
import org.tikv.common.meta.TiTimestamp;
|
||||
import org.tikv.common.operation.iterator.ConcreteScanIterator;
|
||||
import org.tikv.common.region.RegionStoreClient;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.ConcreteBackOffer;
|
||||
import org.tikv.common.util.Pair;
|
||||
import org.tikv.kvproto.Kvrpcpb.KvPair;
|
||||
import org.tikv.kvproto.Metapb.Store;
|
||||
import org.tikv.meta.TiTimestamp;
|
||||
import org.tikv.operation.iterator.ConcreteScanIterator;
|
||||
import org.tikv.region.RegionStoreClient;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.ConcreteBackOffer;
|
||||
import org.tikv.util.Pair;
|
||||
|
||||
public class Snapshot {
|
||||
private final TiTimestamp timestamp;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.net.HostAndPort;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import com.google.common.net.HostAndPort;
|
||||
import io.grpc.ManagedChannel;
|
||||
|
|
@ -21,7 +21,7 @@ import io.grpc.ManagedChannelBuilder;
|
|||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import org.tikv.region.RegionManager;
|
||||
import org.tikv.common.region.RegionManager;
|
||||
|
||||
public class TiSession implements AutoCloseable {
|
||||
private static final Map<String, ManagedChannel> connPool = new HashMap<>();
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.codec;
|
||||
package org.tikv.common.codec;
|
||||
|
||||
import static com.google.common.base.Preconditions.checkArgument;
|
||||
|
||||
|
|
@ -22,7 +22,7 @@ import java.math.BigDecimal;
|
|||
import java.sql.Date;
|
||||
import java.util.Arrays;
|
||||
import org.joda.time.*;
|
||||
import org.tikv.exception.InvalidCodecFormatException;
|
||||
import org.tikv.common.exception.InvalidCodecFormatException;
|
||||
|
||||
public class Codec {
|
||||
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.codec;
|
||||
package org.tikv.common.codec;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.io.*;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.codec;
|
||||
package org.tikv.common.codec;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.codec;
|
||||
package org.tikv.common.codec;
|
||||
|
||||
import com.google.common.primitives.UnsignedBytes;
|
||||
import com.google.protobuf.ByteString;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.codec;
|
||||
package org.tikv.common.codec;
|
||||
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import java.math.BigDecimal;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.exception;
|
||||
package org.tikv.common.exception;
|
||||
|
||||
public class GrpcException extends RuntimeException {
|
||||
public GrpcException(Exception e) {
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.exception;
|
||||
package org.tikv.common.exception;
|
||||
|
||||
public class InvalidCodecFormatException extends RuntimeException {
|
||||
public InvalidCodecFormatException(String msg) {
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.exception;
|
||||
package org.tikv.common.exception;
|
||||
|
||||
import org.tikv.kvproto.Kvrpcpb;
|
||||
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.exception;
|
||||
package org.tikv.common.exception;
|
||||
|
||||
import org.tikv.kvproto.Errorpb.Error;
|
||||
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.exception;
|
||||
package org.tikv.common.exception;
|
||||
|
||||
public class TiClientInternalException extends RuntimeException {
|
||||
public TiClientInternalException(String msg) {
|
||||
|
|
@ -13,14 +13,14 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.key;
|
||||
package org.tikv.common.key;
|
||||
|
||||
import static java.util.Objects.requireNonNull;
|
||||
import static org.tikv.codec.KeyUtils.formatBytes;
|
||||
import static org.tikv.common.codec.KeyUtils.formatBytes;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.util.Arrays;
|
||||
import org.tikv.util.FastByteComparisons;
|
||||
import org.tikv.common.util.FastByteComparisons;
|
||||
|
||||
public class Key implements Comparable<Key> {
|
||||
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.meta;
|
||||
package org.tikv.common.meta;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
|
|
@ -15,9 +15,9 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.operation;
|
||||
package org.tikv.common.operation;
|
||||
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
|
||||
public interface ErrorHandler<RespT> {
|
||||
/**
|
||||
|
|
@ -15,21 +15,21 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.operation;
|
||||
package org.tikv.common.operation;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import io.grpc.Status;
|
||||
import io.grpc.StatusRuntimeException;
|
||||
import java.util.function.Function;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.tikv.codec.KeyUtils;
|
||||
import org.tikv.exception.GrpcException;
|
||||
import org.tikv.common.codec.KeyUtils;
|
||||
import org.tikv.common.exception.GrpcException;
|
||||
import org.tikv.common.region.RegionErrorReceiver;
|
||||
import org.tikv.common.region.RegionManager;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.BackOffFunction;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.kvproto.Errorpb;
|
||||
import org.tikv.region.RegionErrorReceiver;
|
||||
import org.tikv.region.RegionManager;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.BackOffFunction;
|
||||
import org.tikv.util.BackOffer;
|
||||
|
||||
// TODO: consider refactor to Builder mode
|
||||
public class KVErrorHandler<RespT> implements ErrorHandler<RespT> {
|
||||
|
|
@ -15,15 +15,15 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.operation;
|
||||
package org.tikv.common.operation;
|
||||
|
||||
import java.util.function.Function;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.tikv.PDClient;
|
||||
import org.tikv.exception.GrpcException;
|
||||
import org.tikv.common.PDClient;
|
||||
import org.tikv.common.exception.GrpcException;
|
||||
import org.tikv.common.util.BackOffFunction;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.kvproto.Pdpb;
|
||||
import org.tikv.util.BackOffFunction;
|
||||
import org.tikv.util.BackOffer;
|
||||
|
||||
public class PDErrorHandler<RespT> implements ErrorHandler<RespT> {
|
||||
private static final Logger logger = Logger.getLogger(PDErrorHandler.class);
|
||||
|
|
@ -13,16 +13,16 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.operation.iterator;
|
||||
package org.tikv.common.operation.iterator;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import org.tikv.TiSession;
|
||||
import org.tikv.common.TiSession;
|
||||
import org.tikv.common.region.RegionStoreClient;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.ConcreteBackOffer;
|
||||
import org.tikv.common.util.Pair;
|
||||
import org.tikv.kvproto.Metapb;
|
||||
import org.tikv.region.RegionStoreClient;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.ConcreteBackOffer;
|
||||
import org.tikv.util.Pair;
|
||||
|
||||
public class ConcreteScanIterator extends ScanIterator {
|
||||
private final long version;
|
||||
|
|
@ -13,17 +13,17 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.operation.iterator;
|
||||
package org.tikv.common.operation.iterator;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import org.tikv.TiSession;
|
||||
import org.tikv.key.Key;
|
||||
import org.tikv.common.TiSession;
|
||||
import org.tikv.common.key.Key;
|
||||
import org.tikv.common.region.RegionStoreClient;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.ConcreteBackOffer;
|
||||
import org.tikv.common.util.Pair;
|
||||
import org.tikv.kvproto.Metapb;
|
||||
import org.tikv.region.RegionStoreClient;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.ConcreteBackOffer;
|
||||
import org.tikv.util.Pair;
|
||||
|
||||
public class RawScanIterator extends ScanIterator {
|
||||
|
||||
|
|
@ -13,19 +13,19 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.operation.iterator;
|
||||
package org.tikv.common.operation.iterator;
|
||||
|
||||
import static java.util.Objects.requireNonNull;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import org.tikv.TiSession;
|
||||
import org.tikv.exception.TiClientInternalException;
|
||||
import org.tikv.key.Key;
|
||||
import org.tikv.common.TiSession;
|
||||
import org.tikv.common.exception.TiClientInternalException;
|
||||
import org.tikv.common.key.Key;
|
||||
import org.tikv.common.region.RegionManager;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.kvproto.Kvrpcpb;
|
||||
import org.tikv.region.RegionManager;
|
||||
import org.tikv.region.TiRegion;
|
||||
|
||||
public abstract class ScanIterator implements Iterator<Kvrpcpb.KvPair> {
|
||||
protected final TiSession session;
|
||||
|
|
@ -13,10 +13,10 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.policy;
|
||||
package org.tikv.common.policy;
|
||||
|
||||
import org.tikv.operation.ErrorHandler;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.common.operation.ErrorHandler;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
|
||||
public class RetryMaxMs<T> extends RetryPolicy<T> {
|
||||
private RetryMaxMs(ErrorHandler<T> handler, BackOffer backOffer) {
|
||||
|
|
@ -13,15 +13,15 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.policy;
|
||||
package org.tikv.common.policy;
|
||||
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import io.grpc.Status;
|
||||
import java.util.concurrent.Callable;
|
||||
import org.tikv.exception.GrpcException;
|
||||
import org.tikv.operation.ErrorHandler;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.ConcreteBackOffer;
|
||||
import org.tikv.common.exception.GrpcException;
|
||||
import org.tikv.common.operation.ErrorHandler;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.ConcreteBackOffer;
|
||||
|
||||
public abstract class RetryPolicy<RespT> {
|
||||
BackOffer backOffer = ConcreteBackOffer.newCopNextMaxBackOff();
|
||||
|
|
@ -15,7 +15,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.region;
|
||||
package org.tikv.common.region;
|
||||
|
||||
import org.tikv.kvproto.Metapb.Store;
|
||||
|
||||
|
|
@ -15,10 +15,10 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.region;
|
||||
package org.tikv.common.region;
|
||||
|
||||
import static org.tikv.codec.KeyUtils.formatBytes;
|
||||
import static org.tikv.util.KeyRangeUtils.makeRange;
|
||||
import static org.tikv.common.codec.KeyUtils.formatBytes;
|
||||
import static org.tikv.common.util.KeyRangeUtils.makeRange;
|
||||
|
||||
import com.google.common.collect.RangeMap;
|
||||
import com.google.common.collect.TreeRangeMap;
|
||||
|
|
@ -28,16 +28,16 @@ import java.util.HashMap;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.tikv.ReadOnlyPDClient;
|
||||
import org.tikv.TiSession;
|
||||
import org.tikv.exception.GrpcException;
|
||||
import org.tikv.exception.TiClientInternalException;
|
||||
import org.tikv.key.Key;
|
||||
import org.tikv.common.ReadOnlyPDClient;
|
||||
import org.tikv.common.TiSession;
|
||||
import org.tikv.common.exception.GrpcException;
|
||||
import org.tikv.common.exception.TiClientInternalException;
|
||||
import org.tikv.common.key.Key;
|
||||
import org.tikv.common.util.ConcreteBackOffer;
|
||||
import org.tikv.common.util.Pair;
|
||||
import org.tikv.kvproto.Metapb.Peer;
|
||||
import org.tikv.kvproto.Metapb.Store;
|
||||
import org.tikv.kvproto.Metapb.StoreState;
|
||||
import org.tikv.util.ConcreteBackOffer;
|
||||
import org.tikv.util.Pair;
|
||||
|
||||
public class RegionManager {
|
||||
private static final Logger logger = Logger.getLogger(RegionManager.class);
|
||||
|
|
@ -15,48 +15,34 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.region;
|
||||
package org.tikv.common.region;
|
||||
|
||||
import static com.google.common.base.Preconditions.checkArgument;
|
||||
import static com.google.common.base.Preconditions.checkNotNull;
|
||||
import static org.tikv.util.BackOffFunction.BackOffFuncType.BoRegionMiss;
|
||||
import static org.tikv.util.BackOffFunction.BackOffFuncType.BoTxnLockFast;
|
||||
import static org.tikv.common.util.BackOffFunction.BackOffFuncType.BoRegionMiss;
|
||||
import static org.tikv.common.util.BackOffFunction.BackOffFuncType.BoTxnLockFast;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import io.grpc.ManagedChannel;
|
||||
import java.util.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.function.Supplier;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.tikv.AbstractGRPCClient;
|
||||
import org.tikv.TiSession;
|
||||
import org.tikv.exception.*;
|
||||
import org.tikv.common.AbstractGRPCClient;
|
||||
import org.tikv.common.TiSession;
|
||||
import org.tikv.common.exception.KeyException;
|
||||
import org.tikv.common.exception.RegionException;
|
||||
import org.tikv.common.operation.KVErrorHandler;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.kvproto.Errorpb;
|
||||
import org.tikv.kvproto.Kvrpcpb.BatchGetRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.BatchGetResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.Context;
|
||||
import org.tikv.kvproto.Kvrpcpb.GetRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.GetResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.KvPair;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawBatchPutRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawBatchPutResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawDeleteRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawDeleteResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawGetRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawGetResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawPutRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawPutResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawScanRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.RawScanResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.ScanRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.ScanResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.*;
|
||||
import org.tikv.kvproto.Metapb.Store;
|
||||
import org.tikv.kvproto.TikvGrpc;
|
||||
import org.tikv.kvproto.TikvGrpc.TikvBlockingStub;
|
||||
import org.tikv.kvproto.TikvGrpc.TikvStub;
|
||||
import org.tikv.operation.KVErrorHandler;
|
||||
import org.tikv.txn.Lock;
|
||||
import org.tikv.txn.LockResolverClient;
|
||||
import org.tikv.util.BackOffer;
|
||||
|
||||
// RegionStore itself is not thread-safe
|
||||
public class RegionStoreClient extends AbstractGRPCClient<TikvBlockingStub, TikvStub>
|
||||
|
|
@ -15,7 +15,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.region;
|
||||
package org.tikv.common.region;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.io.Serializable;
|
||||
|
|
@ -23,16 +23,16 @@ import java.util.HashSet;
|
|||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import org.tikv.codec.Codec.BytesCodec;
|
||||
import org.tikv.codec.CodecDataInput;
|
||||
import org.tikv.codec.KeyUtils;
|
||||
import org.tikv.exception.TiClientInternalException;
|
||||
import org.tikv.common.codec.Codec.BytesCodec;
|
||||
import org.tikv.common.codec.CodecDataInput;
|
||||
import org.tikv.common.codec.KeyUtils;
|
||||
import org.tikv.common.exception.TiClientInternalException;
|
||||
import org.tikv.common.util.FastByteComparisons;
|
||||
import org.tikv.kvproto.Kvrpcpb;
|
||||
import org.tikv.kvproto.Kvrpcpb.IsolationLevel;
|
||||
import org.tikv.kvproto.Metapb;
|
||||
import org.tikv.kvproto.Metapb.Peer;
|
||||
import org.tikv.kvproto.Metapb.Region;
|
||||
import org.tikv.util.FastByteComparisons;
|
||||
|
||||
public class TiRegion implements Serializable {
|
||||
private final Region meta;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.streaming;
|
||||
package org.tikv.common.streaming;
|
||||
|
||||
import static java.util.Objects.requireNonNull;
|
||||
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
package org.tikv.util;
|
||||
package org.tikv.common.util;
|
||||
|
||||
import java.util.concurrent.ThreadLocalRandom;
|
||||
import org.tikv.exception.GrpcException;
|
||||
import org.tikv.common.exception.GrpcException;
|
||||
|
||||
public class BackOffFunction {
|
||||
private int base;
|
||||
|
|
@ -15,7 +15,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.util;
|
||||
package org.tikv.common.util;
|
||||
|
||||
public interface BackOffer {
|
||||
// Back off strategies
|
||||
|
|
@ -15,7 +15,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.util;
|
||||
package org.tikv.common.util;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
import java.util.ArrayList;
|
||||
|
|
@ -23,7 +23,7 @@ import java.util.HashMap;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.tikv.exception.GrpcException;
|
||||
import org.tikv.common.exception.GrpcException;
|
||||
|
||||
public class ConcreteBackOffer implements BackOffer {
|
||||
private int maxSleep;
|
||||
|
|
@ -12,7 +12,7 @@
|
|||
* express or implied. See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.tikv.util;
|
||||
package org.tikv.common.util;
|
||||
|
||||
import com.google.common.primitives.Longs;
|
||||
import com.google.common.primitives.UnsignedBytes;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.util;
|
||||
package org.tikv.common.util;
|
||||
|
||||
import com.google.common.util.concurrent.SettableFuture;
|
||||
import io.grpc.stub.StreamObserver;
|
||||
|
|
@ -13,17 +13,17 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.util;
|
||||
package org.tikv.common.util;
|
||||
|
||||
import static org.tikv.key.Key.toRawKey;
|
||||
import static org.tikv.common.key.Key.toRawKey;
|
||||
|
||||
import com.google.common.collect.BoundType;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.common.collect.Range;
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.util.List;
|
||||
import org.tikv.exception.TiClientInternalException;
|
||||
import org.tikv.key.Key;
|
||||
import org.tikv.common.exception.TiClientInternalException;
|
||||
import org.tikv.common.key.Key;
|
||||
import org.tikv.kvproto.Coprocessor.KeyRange;
|
||||
|
||||
public class KeyRangeUtils {
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.util;
|
||||
package org.tikv.common.util;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.util;
|
||||
package org.tikv.common.util;
|
||||
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.tikv.util;
|
||||
package org.tikv.common.util;
|
||||
|
||||
public final class TsoUtils {
|
||||
private static final long physicalShiftBits = 18;
|
||||
|
|
@ -1,16 +1,18 @@
|
|||
package org.tikv;
|
||||
package org.tikv.raw;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.util.*;
|
||||
import org.tikv.common.TiConfiguration;
|
||||
import org.tikv.common.TiSession;
|
||||
import org.tikv.common.operation.iterator.RawScanIterator;
|
||||
import org.tikv.common.region.RegionManager;
|
||||
import org.tikv.common.region.RegionStoreClient;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.ConcreteBackOffer;
|
||||
import org.tikv.common.util.Pair;
|
||||
import org.tikv.kvproto.Kvrpcpb;
|
||||
import org.tikv.kvproto.Metapb;
|
||||
import org.tikv.operation.iterator.RawScanIterator;
|
||||
import org.tikv.region.RegionManager;
|
||||
import org.tikv.region.RegionStoreClient;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.ConcreteBackOffer;
|
||||
import org.tikv.util.Pair;
|
||||
|
||||
public class RawKVClient {
|
||||
private static final String DEFAULT_PD_ADDRESS = "127.0.0.1:2379";
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
package org.tikv.txn;
|
||||
|
||||
import static org.tikv.util.BackOffFunction.BackOffFuncType.BoRegionMiss;
|
||||
import static org.tikv.common.util.BackOffFunction.BackOffFuncType.BoRegionMiss;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import io.grpc.ManagedChannel;
|
||||
|
|
@ -26,10 +26,16 @@ import java.util.concurrent.locks.ReadWriteLock;
|
|||
import java.util.concurrent.locks.ReentrantReadWriteLock;
|
||||
import java.util.function.Supplier;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.tikv.AbstractGRPCClient;
|
||||
import org.tikv.TiSession;
|
||||
import org.tikv.exception.KeyException;
|
||||
import org.tikv.exception.RegionException;
|
||||
import org.tikv.common.AbstractGRPCClient;
|
||||
import org.tikv.common.TiSession;
|
||||
import org.tikv.common.exception.KeyException;
|
||||
import org.tikv.common.exception.RegionException;
|
||||
import org.tikv.common.operation.KVErrorHandler;
|
||||
import org.tikv.common.region.RegionErrorReceiver;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.region.TiRegion.RegionVerID;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.TsoUtils;
|
||||
import org.tikv.kvproto.Kvrpcpb.CleanupRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.CleanupResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.ResolveLockRequest;
|
||||
|
|
@ -38,12 +44,6 @@ import org.tikv.kvproto.Metapb.Store;
|
|||
import org.tikv.kvproto.TikvGrpc;
|
||||
import org.tikv.kvproto.TikvGrpc.TikvBlockingStub;
|
||||
import org.tikv.kvproto.TikvGrpc.TikvStub;
|
||||
import org.tikv.operation.KVErrorHandler;
|
||||
import org.tikv.region.RegionErrorReceiver;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.region.TiRegion.RegionVerID;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.TsoUtils;
|
||||
|
||||
// LockResolver resolves locks and also caches resolved txn status.
|
||||
public class LockResolverClient extends AbstractGRPCClient<TikvBlockingStub, TikvStub>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,5 @@
|
|||
package org.tikv.txn;
|
||||
|
||||
public class TxnKVClient {
|
||||
// TODO: To be done.
|
||||
}
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/*
|
||||
* Copyright 2017 PingCAP, Inc.
|
||||
*
|
||||
* 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,
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.tikv.txn.exception;
|
||||
|
||||
import org.tikv.txn.Lock;
|
||||
|
||||
public class LockException extends RuntimeException {
|
||||
private final Lock lock;
|
||||
|
||||
public LockException(Lock lock) {
|
||||
this.lock = lock;
|
||||
}
|
||||
|
||||
public Lock getLock() {
|
||||
return lock;
|
||||
}
|
||||
}
|
||||
|
|
@ -13,13 +13,13 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.util.Arrays;
|
||||
import org.tikv.codec.Codec.BytesCodec;
|
||||
import org.tikv.codec.CodecDataOutput;
|
||||
import org.tikv.common.codec.Codec.BytesCodec;
|
||||
import org.tikv.common.codec.CodecDataOutput;
|
||||
import org.tikv.kvproto.Metapb.*;
|
||||
import org.tikv.kvproto.Pdpb.*;
|
||||
|
||||
|
|
@ -13,9 +13,9 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import static org.tikv.key.Key.toRawKey;
|
||||
import static org.tikv.common.key.Key.toRawKey;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.protobuf.ByteString;
|
||||
|
|
@ -27,14 +27,10 @@ import io.grpc.ServerBuilder;
|
|||
import io.grpc.Status;
|
||||
import java.io.IOException;
|
||||
import java.net.ServerSocket;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.SortedMap;
|
||||
import java.util.TreeMap;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import org.tikv.key.Key;
|
||||
import org.tikv.common.key.Key;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.kvproto.Coprocessor;
|
||||
import org.tikv.kvproto.Errorpb;
|
||||
import org.tikv.kvproto.Errorpb.Error;
|
||||
|
|
@ -44,7 +40,6 @@ import org.tikv.kvproto.Errorpb.StaleEpoch;
|
|||
import org.tikv.kvproto.Kvrpcpb;
|
||||
import org.tikv.kvproto.Kvrpcpb.Context;
|
||||
import org.tikv.kvproto.TikvGrpc;
|
||||
import org.tikv.region.TiRegion;
|
||||
|
||||
public class KVMockServer extends TikvGrpc.TikvImplBase {
|
||||
|
||||
|
|
@ -1,14 +1,14 @@
|
|||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import com.google.protobuf.ByteString;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.kvproto.Coprocessor;
|
||||
import org.tikv.kvproto.Kvrpcpb;
|
||||
import org.tikv.kvproto.Metapb;
|
||||
import org.tikv.kvproto.Pdpb;
|
||||
import org.tikv.region.TiRegion;
|
||||
|
||||
public class MockServerTest {
|
||||
public KVMockServer server;
|
||||
|
|
@ -13,12 +13,10 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
import static org.tikv.GrpcUtils.encodeKey;
|
||||
import static org.junit.Assert.*;
|
||||
import static org.tikv.common.GrpcUtils.encodeKey;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.io.IOException;
|
||||
|
|
@ -26,14 +24,14 @@ import java.util.concurrent.*;
|
|||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.tikv.exception.GrpcException;
|
||||
import org.tikv.common.exception.GrpcException;
|
||||
import org.tikv.common.meta.TiTimestamp;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.ConcreteBackOffer;
|
||||
import org.tikv.kvproto.Metapb;
|
||||
import org.tikv.kvproto.Metapb.Store;
|
||||
import org.tikv.kvproto.Metapb.StoreState;
|
||||
import org.tikv.meta.TiTimestamp;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.ConcreteBackOffer;
|
||||
|
||||
public class PDClientTest {
|
||||
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import io.grpc.Server;
|
||||
import io.grpc.ServerBuilder;
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
|
|
@ -22,12 +22,12 @@ import java.io.IOException;
|
|||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.tikv.common.region.RegionManager;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.Pair;
|
||||
import org.tikv.kvproto.Metapb;
|
||||
import org.tikv.kvproto.Metapb.Store;
|
||||
import org.tikv.kvproto.Metapb.StoreState;
|
||||
import org.tikv.region.RegionManager;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.Pair;
|
||||
|
||||
public class RegionManagerTest {
|
||||
private PDMockServer server;
|
||||
|
|
@ -13,20 +13,19 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv;
|
||||
package org.tikv.common;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.protobuf.ByteString;
|
||||
import com.pingcap.tidb.tipb.*;
|
||||
import java.util.*;
|
||||
import java.util.List;
|
||||
import org.junit.Test;
|
||||
import org.tikv.common.region.RegionStoreClient;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.ConcreteBackOffer;
|
||||
import org.tikv.kvproto.Kvrpcpb;
|
||||
import org.tikv.kvproto.Metapb;
|
||||
import org.tikv.region.RegionStoreClient;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.ConcreteBackOffer;
|
||||
|
||||
public class RegionStoreClientTest extends MockServerTest {
|
||||
|
||||
|
|
@ -13,13 +13,13 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.codec;
|
||||
package org.tikv.common.codec;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import static org.tikv.codec.Codec.*;
|
||||
import static org.tikv.common.codec.Codec.*;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.tikv.codec.Codec.*;
|
||||
import org.tikv.common.codec.Codec.*;
|
||||
|
||||
public class CodecTest {
|
||||
@Test
|
||||
|
|
@ -15,7 +15,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
package org.tikv.codec;
|
||||
package org.tikv.common.codec;
|
||||
|
||||
import static org.junit.Assert.assertArrayEquals;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
|
@ -13,10 +13,10 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.tikv.key;
|
||||
package org.tikv.common.key;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import static org.tikv.key.Key.toRawKey;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.tikv.common.key.Key.toRawKey;
|
||||
|
||||
import com.google.common.primitives.UnsignedBytes;
|
||||
import org.junit.Test;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package org.tikv;
|
||||
package org.tikv.raw;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import java.util.*;
|
||||
|
|
@ -7,9 +7,9 @@ import java.util.stream.Collectors;
|
|||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.tikv.key.Key;
|
||||
import org.tikv.common.key.Key;
|
||||
import org.tikv.common.util.FastByteComparisons;
|
||||
import org.tikv.kvproto.Kvrpcpb;
|
||||
import org.tikv.util.FastByteComparisons;
|
||||
|
||||
public class RawKVClientTest {
|
||||
private static final String RAW_PREFIX = "raw_\\u0001_";
|
||||
|
|
@ -16,39 +16,33 @@
|
|||
package org.tikv.txn;
|
||||
|
||||
import static junit.framework.TestCase.*;
|
||||
import static org.tikv.util.BackOffFunction.BackOffFuncType.BoTxnLock;
|
||||
import static org.tikv.common.util.BackOffFunction.BackOffFuncType.BoTxnLock;
|
||||
|
||||
import com.google.protobuf.ByteString;
|
||||
import com.pingcap.tidb.tipb.*;
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.function.Supplier;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.tikv.PDClient;
|
||||
import org.tikv.ReadOnlyPDClient;
|
||||
import org.tikv.TiConfiguration;
|
||||
import org.tikv.TiSession;
|
||||
import org.tikv.exception.KeyException;
|
||||
import org.tikv.exception.RegionException;
|
||||
import org.tikv.common.PDClient;
|
||||
import org.tikv.common.ReadOnlyPDClient;
|
||||
import org.tikv.common.TiConfiguration;
|
||||
import org.tikv.common.TiSession;
|
||||
import org.tikv.common.exception.KeyException;
|
||||
import org.tikv.common.exception.RegionException;
|
||||
import org.tikv.common.meta.TiTimestamp;
|
||||
import org.tikv.common.operation.KVErrorHandler;
|
||||
import org.tikv.common.region.RegionStoreClient;
|
||||
import org.tikv.common.region.TiRegion;
|
||||
import org.tikv.common.util.BackOffer;
|
||||
import org.tikv.common.util.ConcreteBackOffer;
|
||||
import org.tikv.common.util.Pair;
|
||||
import org.tikv.kvproto.Coprocessor;
|
||||
import org.tikv.kvproto.Kvrpcpb.CommitRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.CommitResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.IsolationLevel;
|
||||
import org.tikv.kvproto.Kvrpcpb.KeyError;
|
||||
import org.tikv.kvproto.Kvrpcpb.Mutation;
|
||||
import org.tikv.kvproto.Kvrpcpb.Op;
|
||||
import org.tikv.kvproto.Kvrpcpb.PrewriteRequest;
|
||||
import org.tikv.kvproto.Kvrpcpb.PrewriteResponse;
|
||||
import org.tikv.kvproto.Kvrpcpb.*;
|
||||
import org.tikv.kvproto.Metapb.Store;
|
||||
import org.tikv.kvproto.TikvGrpc;
|
||||
import org.tikv.meta.TiTimestamp;
|
||||
import org.tikv.operation.KVErrorHandler;
|
||||
import org.tikv.region.RegionStoreClient;
|
||||
import org.tikv.region.TiRegion;
|
||||
import org.tikv.util.BackOffer;
|
||||
import org.tikv.util.ConcreteBackOffer;
|
||||
import org.tikv.util.Pair;
|
||||
|
||||
public class LockResolverTest {
|
||||
private TiSession session;
|
||||
|
|
|
|||
Loading…
Reference in New Issue