Don't buggify max tenants per cluster globally; instead buggify it in specific tests

This commit is contained in:
A.J. Beamon 2022-08-06 06:10:45 -07:00
parent f866ffc36b
commit b33a9da7ce
4 changed files with 18 additions and 2 deletions

View File

@ -291,7 +291,7 @@ void ClientKnobs::initialize(Randomize randomize) {
init( CHANGE_QUORUM_BAD_STATE_RETRY_DELAY, 2.0 );
// Tenants and Metacluster
init( MAX_TENANTS_PER_CLUSTER, 1e6 ); if ( randomize && BUGGIFY ) MAX_TENANTS_PER_CLUSTER = deterministicRandom()->randomInt(20, 100);
init( MAX_TENANTS_PER_CLUSTER, 1e6 );
init( TENANT_TOMBSTONE_CLEANUP_INTERVAL, 60 ); if ( randomize && BUGGIFY ) TENANT_TOMBSTONE_CLEANUP_INTERVAL = deterministicRandom()->random01() * 30;
init( MAX_DATA_CLUSTERS, 1e5 );
init( REMOVE_CLUSTER_TENANT_BATCH_SIZE, 1e4 ); if ( randomize && BUGGIFY ) REMOVE_CLUSTER_TENANT_BATCH_SIZE = 1;

View File

@ -83,6 +83,10 @@ struct MetaclusterManagementWorkload : TestWorkload {
Future<Void> setup(Database const& cx) override {
if (clientId == 0) {
if (g_network->isSimulated() && BUGGIFY) {
IKnobCollection::getMutableGlobalKnobCollection().setKnob(
"max_tenants_per_cluster", KnobValueRef::create(int{ deterministicRandom()->randomInt(20, 100) }));
}
return _setup(cx, this);
} else {
return Void();

View File

@ -83,7 +83,14 @@ struct TenantManagementConcurrencyWorkload : TestWorkload {
}
};
Future<Void> setup(Database const& cx) override { return _setup(cx, this); }
Future<Void> setup(Database const& cx) override {
if (clientId == 0 && g_network->isSimulated() && BUGGIFY) {
IKnobCollection::getMutableGlobalKnobCollection().setKnob(
"max_tenants_per_cluster", KnobValueRef::create(int{ deterministicRandom()->randomInt(20, 100) }));
}
return _setup(cx, this);
}
ACTOR static Future<Void> _setup(Database cx, TenantManagementConcurrencyWorkload* self) {
state ClusterConnectionString connectionString(g_simulator.extraDatabases[0]);
Reference<IDatabase> threadSafeHandle =

View File

@ -155,6 +155,11 @@ struct TenantManagementWorkload : TestWorkload {
};
Future<Void> setup(Database const& cx) override {
if (clientId == 0 && g_network->isSimulated() && BUGGIFY) {
IKnobCollection::getMutableGlobalKnobCollection().setKnob(
"max_tenants_per_cluster", KnobValueRef::create(int{ deterministicRandom()->randomInt(20, 100) }));
}
if (clientId == 0 || !singleClient) {
return _setup(cx, this);
} else {