Skip to content

Commit 0be2890

Browse files
committed
UUID for test databases
1 parent 697eb2a commit 0be2890

4 files changed

Lines changed: 14 additions & 27 deletions

File tree

common/persistence/persistence-tests/persistence_test_base.go

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ import (
44
"cmp"
55
"context"
66
"fmt"
7-
"math/rand"
87
"strings"
98
"sync/atomic"
109
"time"
1110

11+
"github.com/google/uuid"
1212
"github.com/stretchr/testify/suite"
1313
"go.opentelemetry.io/otel/trace"
1414
persistencespb "go.temporal.io/server/api/persistence/v1"
@@ -129,7 +129,7 @@ func NewTestBaseWithCassandra(options *TestBaseOptions) *TestBase {
129129

130130
func NewTestClusterForCassandra(options *TestBaseOptions, logger log.Logger) *cassandra.TestCluster {
131131
if options.DBName == "" {
132-
options.DBName = "test_" + GenerateRandomDBName(3)
132+
options.DBName = GenerateRandomDBName()
133133
}
134134
testCluster := cassandra.NewTestCluster(options.DBName, options.DBUsername, options.DBPassword, options.DBHost, options.DBPort, options.SchemaDir, options.FaultInjection, logger)
135135
return testCluster
@@ -436,23 +436,10 @@ func (s *TestBase) RangeDeleteMessagesFromNamespaceDLQ(
436436
return s.NamespaceReplicationQueue.RangeDeleteMessagesFromDLQ(ctx, firstMessageID, lastMessageID)
437437
}
438438

439-
func randString(length int) string {
440-
const lowercaseSet = "abcdefghijklmnopqrstuvwxyz"
441-
b := make([]byte, length)
442-
for i := range b {
443-
b[i] = lowercaseSet[rand.Int63()%int64(len(lowercaseSet))]
444-
}
445-
return string(b)
446-
}
447-
448-
// GenerateRandomDBName helper
449-
// Format: MMDDHHMMSS_abc
450-
func GenerateRandomDBName(n int) string {
451-
var prefix strings.Builder
452-
prefix.WriteString(time.Now().UTC().Format("0102150405"))
453-
prefix.WriteRune('_')
454-
prefix.WriteString(randString(n))
455-
return prefix.String()
439+
func GenerateRandomDBName() string {
440+
uuidPart := strings.ReplaceAll(uuid.NewString(), "-", "")
441+
// Keep generated DB names short enough for Cassandra keyspaces after XDC tests append cluster suffixes.
442+
return "test_" + uuidPart[:24]
456443
}
457444

458445
func timeComparator(t1, t2 time.Time, timeTolerance time.Duration) bool {

common/persistence/persistence-tests/setup.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ func GetTestClusterOption(storeType, driver string) *TestBaseOptions {
5454
// GetCassandraTestClusterOption returns test options
5555
func GetCassandraTestClusterOption() *TestBaseOptions {
5656
return &TestBaseOptions{
57-
DBName: "test_" + GenerateRandomDBName(3),
57+
DBName: GenerateRandomDBName(),
5858
DBHost: environment.GetCassandraAddress(),
5959
DBPort: environment.GetCassandraPort(),
6060
SchemaDir: testCassandraSchemaDir,
@@ -66,7 +66,7 @@ func GetCassandraTestClusterOption() *TestBaseOptions {
6666
func GetMySQLTestClusterOption() *TestBaseOptions {
6767
return &TestBaseOptions{
6868
SQLDBPluginName: mysql.PluginName,
69-
DBName: "test_" + GenerateRandomDBName(3),
69+
DBName: GenerateRandomDBName(),
7070
DBUsername: testMySQLUser,
7171
DBPassword: testMySQLPassword,
7272
DBHost: environment.GetMySQLAddress(),
@@ -94,7 +94,7 @@ func GetPostgreSQLTestClusterOption(
9494
}
9595
return &TestBaseOptions{
9696
SQLDBPluginName: pluginName,
97-
DBName: "test_" + GenerateRandomDBName(3),
97+
DBName: GenerateRandomDBName(),
9898
DBUsername: testPostgreSQLUser,
9999
DBPassword: testPostgreSQLPassword,
100100
DBHost: environment.GetPostgreSQLAddress(),
@@ -109,7 +109,7 @@ func GetPostgreSQLTestClusterOption(
109109
func GetSQLiteFileTestClusterOption() *TestBaseOptions {
110110
return &TestBaseOptions{
111111
SQLDBPluginName: sqlite.PluginName,
112-
DBName: filepath.Join(os.TempDir(), "test_"+GenerateRandomDBName(3)), // put files in temp to avoid cluttering the project
112+
DBName: filepath.Join(os.TempDir(), GenerateRandomDBName()), // put files in temp to avoid cluttering the project
113113
DBUsername: testSQLiteUser,
114114
DBPassword: testSQLitePassword,
115115
DBHost: environment.GetLocalhostIP(),
@@ -129,7 +129,7 @@ func GetSQLiteFileTestClusterOption() *TestBaseOptions {
129129
func GetSQLiteMemoryTestClusterOption() *TestBaseOptions {
130130
return &TestBaseOptions{
131131
SQLDBPluginName: sqlite.PluginName,
132-
DBName: "test_" + GenerateRandomDBName(3),
132+
DBName: GenerateRandomDBName(),
133133
DBUsername: testSQLiteUser,
134134
DBPassword: testSQLitePassword,
135135
DBHost: environment.GetLocalhostIP(),

common/persistence/tests/sqlite_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func NewSQLiteFileConfig() *config.SQL {
5353
ConnectAddr: environment.GetLocalhostIP(),
5454
ConnectProtocol: "tcp",
5555
PluginName: "sqlite",
56-
DatabaseName: "test_" + persistencetests.GenerateRandomDBName(3),
56+
DatabaseName: persistencetests.GenerateRandomDBName(),
5757
ConnectAttributes: map[string]string{"cache": "private"},
5858
}
5959
}

tools/sql/clitest/version_tests.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ func (s *VersionTestSuite) SetupTest() {
5353

5454
// TestVerifyCompatibleVersion test
5555
func (s *VersionTestSuite) TestVerifyCompatibleVersion() {
56-
database := "temporal_ver_test_" + persistencetests.GenerateRandomDBName(3)
57-
visDatabase := "temporal_vis_ver_test_" + persistencetests.GenerateRandomDBName(3)
56+
database := persistencetests.GenerateRandomDBName()
57+
visDatabase := persistencetests.GenerateRandomDBName()
5858

5959
defer s.createDatabase(database)()
6060
defer s.createDatabase(visDatabase)()

0 commit comments

Comments
 (0)