diff options
author | Tor Egge <Tor.Egge@online.no> | 2021-11-22 11:08:39 +0100 |
---|---|---|
committer | Tor Egge <Tor.Egge@online.no> | 2021-11-22 11:08:39 +0100 |
commit | 2e2a88aa12e9d00555d06f249b91f5d98a96edf5 (patch) | |
tree | c8bab500719b4e98aa1c131d1c5be09338e05ce5 /searchcore | |
parent | 9800e317b56d8276c3ef6765cfd15525be3183c1 (diff) |
Simplify MaintenanceController::killJobs() and remove dead code.
Diffstat (limited to 'searchcore')
3 files changed, 5 insertions, 13 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/maintenancecontroller.cpp b/searchcore/src/vespa/searchcore/proton/server/maintenancecontroller.cpp index c4826bba8ea..6b606298026 100644 --- a/searchcore/src/vespa/searchcore/proton/server/maintenancecontroller.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/maintenancecontroller.cpp @@ -31,9 +31,9 @@ public: }; bool -isRunningOrRunnable(const MaintenanceJobRunner & job, const Executor * master) { +isRunnable(const MaintenanceJobRunner & job, const Executor * master) { return (&job.getExecutor() == master) - ? job.isRunning() + ? false : job.isRunnable(); } @@ -99,14 +99,14 @@ MaintenanceController::killJobs() job->stop(); // Make sure no more tasks are added to the executor } for (auto &job : _jobs) { - while (isRunningOrRunnable(*job, &_masterThread)) { + while (isRunnable(*job, &_masterThread)) { std::this_thread::sleep_for(1ms); } } - JobList tmpJobs = _jobs; + JobList tmpJobs; { Guard guard(_jobsLock); - _jobs.clear(); + tmpJobs.swap(_jobs); } // Hold jobs until existing tasks have been drained _masterThread.execute(makeLambdaTask([this, jobs=std::move(tmpJobs)]() { diff --git a/searchcore/src/vespa/searchcore/proton/server/maintenancejobrunner.cpp b/searchcore/src/vespa/searchcore/proton/server/maintenancejobrunner.cpp index 16d74479ebe..9eb0596ff1f 100644 --- a/searchcore/src/vespa/searchcore/proton/server/maintenancejobrunner.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/maintenancejobrunner.cpp @@ -77,13 +77,6 @@ MaintenanceJobRunner::MaintenanceJobRunner(Executor &executor, IMaintenanceJob:: } bool -MaintenanceJobRunner::isRunning() const -{ - Guard guard(_lock); - return _running; -} - -bool MaintenanceJobRunner::isRunnable() const { Guard guard(_lock); diff --git a/searchcore/src/vespa/searchcore/proton/server/maintenancejobrunner.h b/searchcore/src/vespa/searchcore/proton/server/maintenancejobrunner.h index 151cc302cd3..17f244e6621 100644 --- a/searchcore/src/vespa/searchcore/proton/server/maintenancejobrunner.h +++ b/searchcore/src/vespa/searchcore/proton/server/maintenancejobrunner.h @@ -31,7 +31,6 @@ public: MaintenanceJobRunner(vespalib::Executor &executor, IMaintenanceJob::UP job); void run() override; void stop(); - bool isRunning() const; bool isRunnable() const; const vespalib::Executor & getExecutor() const { return _executor; } const IMaintenanceJob &getJob() const { return *_job; } |