From 5ad244d329d21bbf2753034f8cd173f416fda2d7 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Thu, 29 Oct 2020 21:15:36 +0000 Subject: GC unused visibility delay take 1. --- .../visibility_handler/visibility_handler_test.cpp | 22 ---------------------- .../vespa/searchcore/proton/server/documentdb.cpp | 8 +------- .../searchcore/proton/server/visibilityhandler.cpp | 4 ---- .../searchcore/proton/server/visibilityhandler.h | 4 ---- 4 files changed, 1 insertion(+), 37 deletions(-) (limited to 'searchcore') diff --git a/searchcore/src/tests/proton/server/visibility_handler/visibility_handler_test.cpp b/searchcore/src/tests/proton/server/visibility_handler/visibility_handler_test.cpp index 2048ecb5458..e3b2de4aed9 100644 --- a/searchcore/src/tests/proton/server/visibility_handler/visibility_handler_test.cpp +++ b/searchcore/src/tests/proton/server/visibility_handler/visibility_handler_test.cpp @@ -111,7 +111,6 @@ public: { _feedViewReal->setTracker(visibilityDelay); _getSerialNum.setSerialNum(currSerialNum); - _visibilityHandler.setVisibilityDelay(visibilityDelay); if (internal) { VisibilityHandler *visibilityHandler = &_visibilityHandler; auto task = makeLambdaTask([=]() { visibilityHandler->commit(); }); @@ -143,7 +142,6 @@ public: { _feedViewReal->setTracker(visibilityDelay); _getSerialNum.setSerialNum(currSerialNum); - _visibilityHandler.setVisibilityDelay(visibilityDelay); constexpr uint32_t MY_LID=13; proton::PendingLidTrackerBase * lidTracker = _feedViewReal->_tracker.get(); { @@ -170,31 +168,11 @@ TEST_F("Check external commit with zero visibility delay", Fixture) f.testCommit(0s, false, 0u, 0u, 0u); } -TEST_F("Check external commit with nonzero visibility delay", Fixture) -{ - f.testCommit(1s, false, 1u, 10u, 1u); -} - -TEST_F("Check external commit with nonzero visibility delay and no new feed operation", Fixture) -{ - f.testCommit(1s, false, 1u, 0u, 1u, 0u); -} - TEST_F("Check internal commit with zero visibility delay", Fixture) { f.testCommit(0s, true, 0u, 0u, 1u); } -TEST_F("Check internal commit with nonzero visibility delay", Fixture) -{ - f.testCommit(1s, true, 1u, 10u, 1u); -} - -TEST_F("Check internal commit with nonzero visibility delay and no new feed operation", Fixture) -{ - f.testCommit(1s, true, 1u, 0u, 1u, 0u); -} - TEST_F("Check external commitAndWait with zero visibility delay", Fixture) { f.testCommitAndWait(0s, false, 0u, 0u, 0u); diff --git a/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp b/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp index b35e1a88495..4f858203123 100644 --- a/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp @@ -208,8 +208,6 @@ DocumentDB::DocumentDB(const vespalib::string &baseDir, _lidSpaceCompactionHandlers.push_back(std::make_unique(_maintenanceController.getNotReadySubDB(), _docTypeName.getName())); _writeFilter.setConfig(loaded_config->getMaintenanceConfigSP()->getAttributeUsageFilterConfig()); - vespalib::duration visibilityDelay = loaded_config->getMaintenanceConfigSP()->getVisibilityDelay(); - _visibility.setVisibilityDelay(visibilityDelay); } void DocumentDB::registerReference() @@ -441,21 +439,17 @@ DocumentDB::applyConfig(DocumentDBConfig::SP configSnapshot, SerialNum serialNum commit_result = _feedHandler->storeOperationSync(op); sync(op.getSerialNum()); } - bool hasVisibilityDelayChanged = false; { bool elidedConfigSave = equalReplayConfig && tlsReplayDone; // Flush changes to attributes and memory index, cf. visibilityDelay _feedView.get()->forceCommit(elidedConfigSave ? serialNum : serialNum - 1, std::make_shared>(std::move(commit_result))); _writeService.sync(); - vespalib::duration visibilityDelay = configSnapshot->getMaintenanceConfigSP()->getVisibilityDelay(); - hasVisibilityDelayChanged = (visibilityDelay != _visibility.getVisibilityDelay()); - _visibility.setVisibilityDelay(visibilityDelay); } if (_state.getState() >= DDBState::State::APPLY_LIVE_CONFIG) { _writeServiceConfig.update(configSnapshot->get_threading_service_config()); } _writeService.setTaskLimit(_writeServiceConfig.defaultTaskLimit(), _writeServiceConfig.defaultTaskLimit()); - if (params.shouldSubDbsChange() || hasVisibilityDelayChanged) { + if (params.shouldSubDbsChange()) { applySubDBConfig(*configSnapshot, serialNum, params); if (serialNum < _feedHandler->getSerialNum()) { // Not last entry in tls. Reprocessing should already be done. diff --git a/searchcore/src/vespa/searchcore/proton/server/visibilityhandler.cpp b/searchcore/src/vespa/searchcore/proton/server/visibilityhandler.cpp index 3a44af517ee..5e8b7ccf58f 100644 --- a/searchcore/src/vespa/searchcore/proton/server/visibilityhandler.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/visibilityhandler.cpp @@ -14,7 +14,6 @@ VisibilityHandler::VisibilityHandler(const IGetSerialNum & serial, : _serial(serial), _writeService(writeService), _feedView(feedView), - _visibilityDelay(vespalib::duration::zero()), _lastCommitSerialNum(0), _lock() { @@ -36,9 +35,6 @@ VisibilityHandler::internalCommit(bool force) void VisibilityHandler::commit() { - if (hasVisibilityDelay()) { - internalCommit(true); - } } void diff --git a/searchcore/src/vespa/searchcore/proton/server/visibilityhandler.h b/searchcore/src/vespa/searchcore/proton/server/visibilityhandler.h index c22128685c1..bf4c594b83f 100644 --- a/searchcore/src/vespa/searchcore/proton/server/visibilityhandler.h +++ b/searchcore/src/vespa/searchcore/proton/server/visibilityhandler.h @@ -26,9 +26,6 @@ public: IThreadingService &threadingService, const FeedViewHolder &feedView); ~VisibilityHandler() override; - void setVisibilityDelay(vespalib::duration visibilityDelay) { _visibilityDelay = visibilityDelay; } - vespalib::duration getVisibilityDelay() const { return _visibilityDelay; } - bool hasVisibilityDelay() const { return _visibilityDelay != vespalib::duration::zero(); } void commit() override; void commitAndWait(ILidCommitState & unCommittedLidTracker) override; void commitAndWait(ILidCommitState &, uint32_t ) override; @@ -40,7 +37,6 @@ private: const IGetSerialNum & _serial; IThreadingService & _writeService; const FeedViewHolder & _feedView; - vespalib::duration _visibilityDelay; SerialNum _lastCommitSerialNum; std::mutex _lock; }; -- cgit v1.2.3