summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNikolay Perfilov <[email protected]>2024-09-20 17:47:51 +0300
committerGitHub <[email protected]>2024-09-20 17:47:51 +0300
commit202d1fff6d6caf29eabf4126c5fd5837de1c8161 (patch)
tree154f6e2773c2a274507b7cd0946b3de95c020b37
parent314943f12cc633839785fdf334cad3a4d372a9ac (diff)
Query workload over query service (#9564)
-rw-r--r--ydb/public/lib/ydb_cli/commands/query_workload.cpp18
-rw-r--r--ydb/public/lib/ydb_cli/commands/query_workload.h2
2 files changed, 11 insertions, 9 deletions
diff --git a/ydb/public/lib/ydb_cli/commands/query_workload.cpp b/ydb/public/lib/ydb_cli/commands/query_workload.cpp
index 09446cda4ff..9aadd3149a1 100644
--- a/ydb/public/lib/ydb_cli/commands/query_workload.cpp
+++ b/ydb/public/lib/ydb_cli/commands/query_workload.cpp
@@ -1,6 +1,7 @@
#include "query_workload.h"
#include <ydb/public/lib/ydb_cli/commands/ydb_common.h>
+#include <ydb/public/sdk/cpp/client/ydb_query/client.h>
#include <library/cpp/histogram/hdr/histogram.h>
#include <util/system/thread.h>
#include <util/system/mutex.h>
@@ -77,11 +78,11 @@ TCommandQueryWorkload::TCommandQueryWorkload()
}
TCommandQueryWorkloadRun::TCommandQueryWorkloadRun()
- : TYdbOperationCommand("run", {}, "Run YDB query workload")
+ : TYdbSimpleCommand("run", {}, "Run YDB query workload")
{}
void TCommandQueryWorkloadRun::Config(TConfig& config) {
- TYdbOperationCommand::Config(config);
+ TYdbSimpleCommand::Config(config);
config.Opts->AddLongOption('q', "query", "Query to execute") .RequiredArgument("[String]").StoreResult(&Query);
config.Opts->AddLongOption('t', "threads", "Number of parallel threads; 1 if not specified").DefaultValue(1).StoreResult(&Threads);
config.Opts->AddLongOption('d', "delay", "Interval delay in seconds; 1 if not specified").DefaultValue(1).StoreResult(&IntervalSeconds);
@@ -102,14 +103,15 @@ int TCommandQueryWorkloadRun::Run(TConfig& config) {
pool.SafeAddFunc([&] {
try {
TDriver driver = CreateDriver(config);
- NScripting::TScriptingClient client(driver);
+ NQuery::TQueryClient client(driver);
- NScripting::TExecuteYqlRequestSettings settings;
- settings.CollectQueryStats(NTable::ECollectQueryStatsMode::Basic);
+ NQuery::TExecuteQuerySettings settings;
+ settings.StatsMode(NQuery::EStatsMode::Basic);
while (!IsInterrupted() && !ThreadTerminated.load()) {
- auto asyncResult = client.StreamExecuteYqlScript(
+ auto asyncResult = client.StreamExecuteQuery(
Query,
+ NQuery::TTxControl::NoTx(),
FillSettings(settings)
);
@@ -129,8 +131,8 @@ int TCommandQueryWorkloadRun::Run(TConfig& config) {
ThrowOnError(streamPart);
}
- if (streamPart.HasQueryStats()) {
- const auto& queryStats = streamPart.GetQueryStats();
+ if (streamPart.GetStats()) {
+ const auto& queryStats = streamPart.GetStats().GetRef();
local_duration += queryStats.GetTotalDuration();
}
}
diff --git a/ydb/public/lib/ydb_cli/commands/query_workload.h b/ydb/public/lib/ydb_cli/commands/query_workload.h
index 033bb0e8844..0c03b9cd3a3 100644
--- a/ydb/public/lib/ydb_cli/commands/query_workload.h
+++ b/ydb/public/lib/ydb_cli/commands/query_workload.h
@@ -11,7 +11,7 @@ public:
TCommandQueryWorkload();
};
-class TCommandQueryWorkloadRun : public TYdbOperationCommand, public TInterruptibleCommand
+class TCommandQueryWorkloadRun : public TYdbSimpleCommand, public TInterruptibleCommand
{
public:
TCommandQueryWorkloadRun();