diff options
author | aozeritsky <aozeritsky@yandex-team.ru> | 2022-03-16 15:19:42 +0300 |
---|---|---|
committer | aozeritsky <aozeritsky@yandex-team.ru> | 2022-03-16 15:19:42 +0300 |
commit | 0942409d3af1f6027548c2f73db1af9ef34b2f51 (patch) | |
tree | 854b39567f8a1c3c2864b97e3526a15d0fe723eb | |
parent | 2243ad12e06925668d7102c33d7b761fd016b204 (diff) | |
download | ydb-0942409d3af1f6027548c2f73db1af9ef34b2f51.tar.gz |
YQL-13760: Set anon_limit
ref:196364ea7be19f3ae79e5301c603a3c9c998eb8e
-rw-r--r-- | ydb/library/yql/providers/dq/task_runner/tasks_runner_pipe.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/ydb/library/yql/providers/dq/task_runner/tasks_runner_pipe.cpp b/ydb/library/yql/providers/dq/task_runner/tasks_runner_pipe.cpp index dfc063e903d..7af7fccc5d2 100644 --- a/ydb/library/yql/providers/dq/task_runner/tasks_runner_pipe.cpp +++ b/ydb/library/yql/providers/dq/task_runner/tasks_runner_pipe.cpp @@ -342,8 +342,17 @@ private: void Kill() override { try { // see YQL-13760 - TShellCommand cmd(PortoCtl, {"set", ContainerName, "anon_limit", "0"}); - cmd.Run().Wait(); + TShellCommand cmd1(PortoCtl, {"get", ContainerName, "anon_limit"}); + cmd1.Run().Wait(); + i64 anonLimit = FromString<i64>(cmd1.GetOutput()); + TShellCommand cmd2(PortoCtl, {"get", ContainerName, "anon_usage"}); + cmd2.Run().Wait(); + i64 anonUsage = FromString<i64>(cmd2.GetOutput()); + if (anonUsage >= anonLimit) { + TShellCommand cmd3(PortoCtl, {"set", ContainerName, "anon_limit", + ToString(anonUsage+(1<<20))}); + cmd3.Run().Wait(); + } } catch (...) { YQL_LOG(DEBUG) << "Cannot set anon_limit: " << CurrentExceptionMessage(); } |