Skip to content

Commit 44ca89d

Browse files
committed
Generate unique environment name
1 parent c3965b8 commit 44ca89d

File tree

5 files changed

+13
-21
lines changed

5 files changed

+13
-21
lines changed

plugin/trino-teradata/src/test/java/io/trino/plugin/teradata/integration/TeradataQueryRunner.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import io.trino.Session;
2222
import io.trino.metadata.QualifiedObjectName;
2323
import io.trino.plugin.teradata.TeradataPlugin;
24-
import io.trino.plugin.teradata.integration.clearscape.ClearScapeEnvironmentUtils;
2524
import io.trino.plugin.tpch.TpchPlugin;
2625
import io.trino.testing.DistributedQueryRunner;
2726
import io.trino.testing.QueryRunner;
@@ -52,7 +51,7 @@ public static void main(String[] args)
5251
Logging logger = Logging.initialize();
5352
logger.setLevel("io.trino.plugin.teradata", Level.DEBUG);
5453
logger.setLevel("io.trino", Level.INFO);
55-
TestingTeradataServer server = new TestingTeradataServer(ClearScapeEnvironmentUtils.generateUniqueEnvName(TeradataQueryRunner.class));
54+
TestingTeradataServer server = new TestingTeradataServer("TeradataQueryRunner", false);
5655
QueryRunner queryRunner = builder(server).addCoordinatorProperty("http-server.http.port", "8080").setInitialTables(TpchTable.getTables()).build();
5756

5857
Logger log = Logger.get(TeradataQueryRunner.class);

plugin/trino-teradata/src/test/java/io/trino/plugin/teradata/integration/TestTeradataConnectorTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515

1616
import io.trino.Session;
1717
import io.trino.plugin.jdbc.BaseJdbcConnectorTest;
18-
import io.trino.plugin.teradata.integration.clearscape.ClearScapeEnvironmentUtils;
1918
import io.trino.sql.query.QueryAssertions;
2019
import io.trino.testing.QueryRunner;
2120
import io.trino.testing.TestingConnectorBehavior;
@@ -33,6 +32,7 @@
3332
import java.util.OptionalInt;
3433
import java.util.function.Consumer;
3534

35+
import static io.trino.plugin.teradata.integration.clearscape.ClearScapeEnvironmentUtils.generateUniqueEnvName;
3636
import static io.trino.testing.TestingNames.randomNameSuffix;
3737
import static java.lang.String.format;
3838
import static java.util.Objects.requireNonNull;
@@ -65,7 +65,7 @@ protected SqlExecutor onRemoteDatabase()
6565
protected QueryRunner createQueryRunner()
6666
throws Exception
6767
{
68-
database = closeAfterClass(new TestingTeradataServer(ClearScapeEnvironmentUtils.generateUniqueEnvName(getClass())));
68+
database = closeAfterClass(new TestingTeradataServer(generateUniqueEnvName(getClass()), true));
6969
// Register this specific instance for this test class
7070
return TeradataQueryRunner.builder(database).setInitialTables(REQUIRED_TPCH_TABLES).build();
7171
}

plugin/trino-teradata/src/test/java/io/trino/plugin/teradata/integration/TestTeradataTypeMapping.java

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
*/
1414
package io.trino.plugin.teradata.integration;
1515

16-
import io.trino.plugin.teradata.integration.clearscape.ClearScapeEnvironmentUtils;
1716
import io.trino.testing.AbstractTestQueryFramework;
1817
import io.trino.testing.QueryRunner;
1918
import io.trino.testing.datatype.CreateAndInsertDataSetup;
@@ -23,6 +22,7 @@
2322

2423
import java.sql.SQLException;
2524

25+
import static io.trino.plugin.teradata.integration.clearscape.ClearScapeEnvironmentUtils.generateUniqueEnvName;
2626
import static io.trino.spi.type.BigintType.BIGINT;
2727
import static io.trino.spi.type.CharType.createCharType;
2828
import static io.trino.spi.type.DateType.DATE;
@@ -38,19 +38,13 @@
3838
final class TestTeradataTypeMapping
3939
extends AbstractTestQueryFramework
4040
{
41-
private final String envName;
4241
private TestingTeradataServer database;
4342

44-
public TestTeradataTypeMapping()
45-
{
46-
envName = ClearScapeEnvironmentUtils.generateUniqueEnvName(TestTeradataTypeMapping.class);
47-
}
48-
4943
@Override
5044
protected QueryRunner createQueryRunner()
5145
throws Exception
5246
{
53-
database = closeAfterClass(new TestingTeradataServer(envName));
47+
database = closeAfterClass(new TestingTeradataServer(generateUniqueEnvName(getClass()), true));
5448
// Register this specific instance for this test class
5549
return TeradataQueryRunner.builder(database).build();
5650
}

plugin/trino-teradata/src/test/java/io/trino/plugin/teradata/integration/TestingTeradataServer.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
import static io.trino.testing.SystemEnvironmentUtils.isEnvSet;
3131
import static io.trino.testing.SystemEnvironmentUtils.requireEnv;
3232

33-
public class TestingTeradataServer
33+
public final class TestingTeradataServer
3434
implements AutoCloseable, SqlExecutor
3535
{
3636
private static final int MAX_RETRIES = 3;
@@ -39,13 +39,12 @@ public class TestingTeradataServer
3939
private DatabaseConfig config;
4040
private ClearScapeSetup clearScapeSetup;
4141

42-
public TestingTeradataServer(String envName)
42+
public TestingTeradataServer(String envName, boolean destroyEnv)
4343
{
4444
config = DatabaseConfigFactory.create(envName);
4545
String hostName = config.getHostName();
4646
// Initialize ClearScape Instance and Get the host name from ClearScape API in case config is using clearscape
4747
if (config.isUseClearScape()) {
48-
boolean destroyEnv = false;
4948
if (isEnvSet("CLEARSCAPE_DESTROY_ENV")) {
5049
String destroyEnvValue = requireEnv("CLEARSCAPE_DESTROY_ENV");
5150
destroyEnv = Boolean.parseBoolean(destroyEnvValue);

plugin/trino-teradata/src/test/java/io/trino/plugin/teradata/integration/clearscape/ClearScapeEnvironmentUtils.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,21 +13,21 @@
1313
*/
1414
package io.trino.plugin.teradata.integration.clearscape;
1515

16+
import java.util.concurrent.ThreadLocalRandom;
17+
1618
import static java.util.Locale.ENGLISH;
1719

1820
public final class ClearScapeEnvironmentUtils
1921
{
20-
private static final String PREFIX = "trino-test-";
21-
private static final int MAX_ENV_NAME_LENGTH = 30; // Adjust based on ClearScape limits
22+
private static final int MAX_ENV_NAME_LENGTH = 40; // Adjust based on ClearScape limits
2223

23-
private ClearScapeEnvironmentUtils()
24-
{
25-
}
24+
private ClearScapeEnvironmentUtils() {}
2625

2726
public static String generateUniqueEnvName(Class<?> testClass)
2827
{
2928
String className = testClass.getSimpleName().toLowerCase(ENGLISH);
30-
String envName = PREFIX + className;
29+
String suffix = Long.toString(ThreadLocalRandom.current().nextLong(Long.MAX_VALUE), 36);
30+
String envName = className + "-" + suffix;
3131
// Truncate if too long
3232
if (envName.length() > MAX_ENV_NAME_LENGTH) {
3333
envName = envName.substring(0, MAX_ENV_NAME_LENGTH);

0 commit comments

Comments
 (0)