From b7bf79e1fcb30a17d840ba042e4d1ef6552e3db1 Mon Sep 17 00:00:00 2001 From: iosmanthus Date: Fri, 31 Dec 2021 16:26:05 +0800 Subject: [PATCH 1/3] add version constraint for rawkv tests Signed-off-by: iosmanthus --- pom.xml | 5 +++++ src/test/java/org/tikv/BaseRawKVTest.java | 15 +++++++++++++++ .../org/tikv/common/PDClientIntegrationTest.java | 3 +++ .../org/tikv/common/importer/RawKVIngestTest.java | 3 +++ .../org/tikv/common/importer/RegionSplitTest.java | 3 +++ 5 files changed, 29 insertions(+) diff --git a/pom.xml b/pom.xml index 088a0874d7e..efd8cb7033e 100644 --- a/pom.xml +++ b/pom.xml @@ -582,6 +582,11 @@ full + + org.apache.maven.plugins + maven-surefire-plugin + 3.0.0-M5 + diff --git a/src/test/java/org/tikv/BaseRawKVTest.java b/src/test/java/org/tikv/BaseRawKVTest.java index afa3b228555..96f8b47dc1d 100644 --- a/src/test/java/org/tikv/BaseRawKVTest.java +++ b/src/test/java/org/tikv/BaseRawKVTest.java @@ -21,6 +21,21 @@ import org.tikv.util.TestUtils; public class BaseRawKVTest { + + protected String getTiKVVersion() { + String tikvVersion = TestUtils.getEnv("TIKV_VERSION"); + return tikvVersion == null ? "master" : tikvVersion; + } + + protected boolean tikvVersionNewerThan(String expectedVersion) { + String version = getTiKVVersion(); + // the minimum version of master TiKV is v5.3.0 + if (version.equals("master")) { + return true; + } + return version.compareTo(expectedVersion) >= 0; + } + protected TiConfiguration createTiConfiguration() { String pdAddrsStr = TestUtils.getEnv("RAWKV_PD_ADDRESSES"); diff --git a/src/test/java/org/tikv/common/PDClientIntegrationTest.java b/src/test/java/org/tikv/common/PDClientIntegrationTest.java index 947195abb5a..a78ad2b411c 100644 --- a/src/test/java/org/tikv/common/PDClientIntegrationTest.java +++ b/src/test/java/org/tikv/common/PDClientIntegrationTest.java @@ -21,11 +21,13 @@ import static org.junit.Assert.assertTrue; import org.junit.After; +import org.junit.Assume; import org.junit.Before; import org.junit.Test; import org.tikv.BaseRawKVTest; public class PDClientIntegrationTest extends BaseRawKVTest { + private TiSession session; @Before @@ -44,6 +46,7 @@ public void tearDown() throws Exception { @Test public void testPauseCheck() throws Exception { + Assume.assumeTrue(tikvVersionNewerThan("v5.3.0")); try (PDClient client = session.getPDClient()) { PDChecker checker = PDChecker.Merge; for (int i = 0; i < 2; i++) { diff --git a/src/test/java/org/tikv/common/importer/RawKVIngestTest.java b/src/test/java/org/tikv/common/importer/RawKVIngestTest.java index 17c66f5bcc0..4795c936cac 100644 --- a/src/test/java/org/tikv/common/importer/RawKVIngestTest.java +++ b/src/test/java/org/tikv/common/importer/RawKVIngestTest.java @@ -26,6 +26,7 @@ import java.util.List; import java.util.Optional; import org.junit.After; +import org.junit.Assume; import org.junit.Before; import org.junit.Test; import org.tikv.BaseRawKVTest; @@ -37,6 +38,7 @@ import org.tikv.util.TestUtils; public class RawKVIngestTest extends BaseRawKVTest { + private TiSession session; private static final int KEY_NUMBER = 16; @@ -59,6 +61,7 @@ public void tearDown() throws Exception { @Test public void rawKVIngestTest() { + Assume.assumeTrue(tikvVersionNewerThan("v5.2.0")); RawKVClient client = session.createRawClient(); // gen test data diff --git a/src/test/java/org/tikv/common/importer/RegionSplitTest.java b/src/test/java/org/tikv/common/importer/RegionSplitTest.java index cc3365f1cb6..3de36e90eac 100644 --- a/src/test/java/org/tikv/common/importer/RegionSplitTest.java +++ b/src/test/java/org/tikv/common/importer/RegionSplitTest.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.List; import org.junit.After; +import org.junit.Assume; import org.junit.Before; import org.junit.Test; import org.tikv.BaseRawKVTest; @@ -32,6 +33,7 @@ import org.tikv.common.region.TiRegion; public class RegionSplitTest extends BaseRawKVTest { + private TiSession session; private static final int KEY_NUMBER = 10; @@ -53,6 +55,7 @@ public void tearDown() throws Exception { @Test public void rawKVSplitTest() { + Assume.assumeTrue(tikvVersionNewerThan("v5.1.0")); List splitKeys = new ArrayList<>(KEY_NUMBER); for (int i = 0; i < KEY_NUMBER; i++) { splitKeys.add(genRandomKey(KEY_PREFIX, KEY_LENGTH)); From a23da0296f495df22d54e40c74db4678876f2a42 Mon Sep 17 00:00:00 2001 From: iosmanthus Date: Tue, 4 Jan 2022 14:15:27 +0800 Subject: [PATCH 2/3] use StoreVersion to compare TiKV version Signed-off-by: iosmanthus --- src/test/java/org/tikv/BaseRawKVTest.java | 20 +++++++++---------- .../tikv/common/importer/RawKVIngestTest.java | 1 + 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/test/java/org/tikv/BaseRawKVTest.java b/src/test/java/org/tikv/BaseRawKVTest.java index 96f8b47dc1d..6c0a5f9f260 100644 --- a/src/test/java/org/tikv/BaseRawKVTest.java +++ b/src/test/java/org/tikv/BaseRawKVTest.java @@ -17,23 +17,21 @@ package org.tikv; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.tikv.common.PDClient; +import org.tikv.common.StoreVersion; import org.tikv.common.TiConfiguration; +import org.tikv.common.TiSession; import org.tikv.util.TestUtils; public class BaseRawKVTest { - protected String getTiKVVersion() { - String tikvVersion = TestUtils.getEnv("TIKV_VERSION"); - return tikvVersion == null ? "master" : tikvVersion; - } - protected boolean tikvVersionNewerThan(String expectedVersion) { - String version = getTiKVVersion(); - // the minimum version of master TiKV is v5.3.0 - if (version.equals("master")) { - return true; - } - return version.compareTo(expectedVersion) >= 0; + TiConfiguration conf = createTiConfiguration(); + TiSession session = TiSession.create(conf); + PDClient pdClient = session.getPDClient(); + return StoreVersion.minTiKVVersion(expectedVersion, pdClient); } protected TiConfiguration createTiConfiguration() { diff --git a/src/test/java/org/tikv/common/importer/RawKVIngestTest.java b/src/test/java/org/tikv/common/importer/RawKVIngestTest.java index 4795c936cac..a8e5f94cf08 100644 --- a/src/test/java/org/tikv/common/importer/RawKVIngestTest.java +++ b/src/test/java/org/tikv/common/importer/RawKVIngestTest.java @@ -91,6 +91,7 @@ public void rawKVIngestTest() { @Test public void rawKVIngestTestWithTTL() throws InterruptedException { + Assume.assumeTrue(tikvVersionNewerThan("v5.2.0")); long ttl = 10; RawKVClient client = session.createRawClient(); From 99f59b92146498a4e0c0eedb1eaa9aba6f0fa934 Mon Sep 17 00:00:00 2001 From: iosmanthus Date: Tue, 4 Jan 2022 15:01:35 +0800 Subject: [PATCH 3/3] ./dev/javafmt Signed-off-by: iosmanthus --- src/test/java/org/tikv/BaseRawKVTest.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/test/java/org/tikv/BaseRawKVTest.java b/src/test/java/org/tikv/BaseRawKVTest.java index 6c0a5f9f260..9b8a9042f3c 100644 --- a/src/test/java/org/tikv/BaseRawKVTest.java +++ b/src/test/java/org/tikv/BaseRawKVTest.java @@ -17,8 +17,6 @@ package org.tikv; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import org.tikv.common.PDClient; import org.tikv.common.StoreVersion; import org.tikv.common.TiConfiguration;