mirror of
https://github.com/dolthub/dolt.git
synced 2026-03-03 01:19:09 -06:00
[no-release-notes] Stats on for TPC-C (#7489)
* [no-release-notes] Stats on for TPC-C * normalize tpcc to one client * tpcc tps multiplier * add multiplier
This commit is contained in:
committed by
GitHub
parent
3419237719
commit
ded3fdbb1b
@@ -44,8 +44,9 @@ meanMultiplierWritesQuery="select round(avg(multipliers), $precision) as writes_
|
||||
|
||||
meanMultiplierOverallQuery="select round(avg(multipliers), $precision) as overall_mean_multiplier from (select (round(avg(t.latency_percentile) / (avg(f.latency_percentile) + .000001), $precision)) as multipliers from from_results as f join to_results as t on f.test_name = t.test_name where f.test_name != 'bulk_insert' group by f.test_name)"
|
||||
|
||||
tpccLatencyQuery="select f.test_name as test_name, f.server_name, f.server_version, avg(f.latency_percentile) as from_latency_median, t.server_name, t.server_version, avg(t.latency_percentile) as to_latency_median, ROUND(avg(t.latency_percentile) / (avg(f.latency_percentile) + .000001), $precision) as multiplier from from_results as f join to_results as t on f.test_name = t.test_name where f.test_name LIKE '$tpccRegex' group by f.test_name;"
|
||||
tpccTpsQuery="select f.test_name as test_name, f.server_name, f.server_version, avg(f.sql_transactions_per_second) as tps, t.test_name as test_name, t.server_name, t.server_version, avg(t.sql_transactions_per_second) as tps from from_results as f join to_results as t on f.test_name = t.test_name where f.test_name LIKE 'tpcc%' group by f.test_name;"
|
||||
tpccLatencyQuery="select f.test_name as tpcc_latency, f.server_name, f.server_version, avg(f.latency_percentile) as from_latency_median, t.server_name, t.server_version, avg(t.latency_percentile) as to_latency_median, ROUND(avg(t.latency_percentile) / (avg(f.latency_percentile) + .000001), $precision) as multiplier from from_results as f join to_results as t on f.test_name = t.test_name where f.test_name LIKE '$tpccRegex' group by f.test_name;"
|
||||
tpccTpsQuery="select f.test_name as tpcc_tps, f.server_name, f.server_version, avg(f.sql_transactions_per_second) as from_tps, t.test_name as test_name, t.server_name, t.server_version, avg(t.sql_transactions_per_second) as to_tps, ROUND(avg(t.latency_percentile) / (avg(f.latency_percentile) + .000001), $precision) as multiplier from from_results as f join to_results as t on f.test_name = t.test_name where f.test_name LIKE 'tpcc%' group by f.test_name;"
|
||||
tpccTpsMultiplierQuery="select round(avg(t.latency_percentile) / (avg(f.latency_percentile) + .000001), $precision) as tpcc_tps_multiplier from from_results as f join to_results as t on f.test_name = t.test_name where f.test_name like 'tpcc%' group by f.test_name"
|
||||
|
||||
echo '
|
||||
{
|
||||
@@ -109,6 +110,7 @@ echo '
|
||||
"--sysbenchQueries='"$meanMultiplierOverallQuery"'",
|
||||
"--tpccQueries='"$tpccLatencyQuery"'",
|
||||
"--tpccQueries='"$tpccTpsQuery"'"
|
||||
"--tpccQueries='"$tpccTpsMultiplierQuery"'"
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
@@ -71,6 +71,10 @@ func (b *doltTpccBenchmarkerImpl) Benchmark(ctx context.Context) (Results, error
|
||||
}
|
||||
defer os.RemoveAll(testRepo)
|
||||
|
||||
if err := configureServer(ctx, b.serverConfig.GetServerExec(), testRepo); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
serverParams, err := b.serverConfig.GetServerArgs()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -114,3 +118,19 @@ func GetTpccTests(config TpccConfig) []Test {
|
||||
}
|
||||
return tests
|
||||
}
|
||||
|
||||
func configureServer(ctx context.Context, doltPath, dbPath string) error {
|
||||
queries := []string{
|
||||
"set @@PERSIST.dolt_stats_auto_refresh_enabled = 1;",
|
||||
"set @@PERSIST.dolt_stats_auto_refresh_interval = 2;",
|
||||
"set @@PERSIST.dolt_stats_auto_refresh_threshold = 1.0;",
|
||||
}
|
||||
for _, q := range queries {
|
||||
q := ExecCommand(ctx, doltPath, "sql", "-q", q)
|
||||
q.Dir = dbPath
|
||||
if err := q.Run(); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ var _ TestParams = &tpccTestParamsImpl{}
|
||||
// NewDefaultTpccParams returns default TpccTestParams.
|
||||
func NewDefaultTpccParams() *tpccTestParamsImpl {
|
||||
return &tpccTestParamsImpl{
|
||||
NumThreads: 2, // TODO: When ready, expose as command line argument.
|
||||
NumThreads: 1, // TODO: When ready, expose as command line argument.
|
||||
ScaleFactor: 1,
|
||||
Tables: 1,
|
||||
TrxLevel: tpccTransactionLevelRr,
|
||||
|
||||
Reference in New Issue
Block a user