diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2020-04-09 20:40:48 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2020-04-09 20:40:48 +0000 |
commit | 769a19ddb4adb8f69cb5483dce27c07e5862357e (patch) | |
tree | a52b46163baa1bd0bbe4d5d13f2f20d6a3d8b62a /searchcore | |
parent | 3c2d8d9b5937426617df29a5cb182cf346ef8834 (diff) |
Simplify after PR feedback.
Diffstat (limited to 'searchcore')
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp | 27 |
1 files changed, 12 insertions, 15 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp b/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp index 24e0f2f43b3..bee8a0e0473 100644 --- a/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp @@ -56,7 +56,7 @@ public: : PutDoneContext(std::move(token), gidToLidChangeHandler, std::move(doc), gid, lid, serialNum, enableNotifyPut), _moveDoneCtx(std::move(moveDoneCtx)) {} - ~PutDoneContextForMove() = default; + ~PutDoneContextForMove() override = default; }; std::shared_ptr<PutDoneContext> @@ -81,7 +81,7 @@ createPutDoneContext(FeedToken token, IGidToLidChangeHandler &gidToLidChangeHand std::shared_ptr<const Document> doc, const document::GlobalId &gid, uint32_t lid, SerialNum serialNum, bool enableNotifyPut) { - return createPutDoneContext(token, gidToLidChangeHandler, std::move(doc), gid, lid, serialNum, enableNotifyPut, IDestructorCallback::SP()); + return createPutDoneContext(std::move(token), gidToLidChangeHandler, std::move(doc), gid, lid, serialNum, enableNotifyPut, IDestructorCallback::SP()); } std::shared_ptr<UpdateDoneContext> @@ -111,7 +111,7 @@ public: : RemoveDoneContext(std::move(token), executor, documentMetaStore, std::move(pendingNotifyRemoveDone) ,lid), _moveDoneCtx(std::move(moveDoneCtx)) {} - ~RemoveDoneContextForMove() = default; + ~RemoveDoneContextForMove() override = default; }; std::shared_ptr<RemoveDoneContext> @@ -143,17 +143,17 @@ std::vector<document::GlobalId> getGidsToRemove(const IDocumentMetaStore &metaSt return gids; } -void putMetaData(documentmetastore::IStore &meta_store, const GlobalId & gid, const DocumentId & doc_id, +void putMetaData(documentmetastore::IStore &meta_store, const DocumentId & doc_id, const DocumentOperation &op, bool is_removed_doc) { documentmetastore::IStore::Result putRes( - meta_store.put(gid, + meta_store.put(doc_id.getGlobalId(), op.getBucketId(), op.getTimestamp(), op.getSerializedDocSize(), op.getLid())); if (!putRes.ok()) { throw IllegalStateException( make_string("Could not put <lid, gid> pair for %sdocument with id '%s' and gid '%s'", is_removed_doc ? "removed " : "", doc_id.toString().c_str(), - gid.toString().c_str())); + doc_id.getGlobalId().toString().c_str())); } assert(op.getLid() == putRes._lid); } @@ -174,14 +174,15 @@ void removeMetaData(documentmetastore::IStore &meta_store, const GlobalId & gid, } void -moveMetaData(documentmetastore::IStore &meta_store, const GlobalId & gid, const DocumentOperation &op) +moveMetaData(documentmetastore::IStore &meta_store, const DocumentId & doc_id, const DocumentOperation &op) { + (void) doc_id; assert(op.getLid() != op.getPrevLid()); assert(meta_store.validLid(op.getPrevLid())); assert(!meta_store.validLid(op.getLid())); const RawDocumentMetaData &meta(meta_store.getRawMetaData(op.getPrevLid())); (void) meta; - assert(meta.getGid() == gid); + assert(meta.getGid() == doc_id.getGlobalId()); assert(meta.getTimestamp() == op.getTimestamp()); meta_store.move(op.getPrevLid(), op.getLid()); } @@ -531,7 +532,7 @@ void StoreOnlyFeedView::prepareRemove(RemoveOperation &rmOp) { documentmetastore::IStore::Result inspectRes = _metaStore.inspect(rmOp.getGlobalId()); - if (_params._subDbType == SubDbType::REMOVED) { + if ((_params._subDbType == SubDbType::REMOVED) && (rmOp.getType() == FeedOperation::REMOVE)) { rmOp.setDbDocumentId(DbDocumentId(_params._subDbId, inspectRes._lid)); } setPrev(rmOp, inspectRes, _params._subDbId, _params._subDbType == SubDbType::REMOVED); @@ -590,10 +591,6 @@ StoreOnlyFeedView::internalRemove(FeedToken token, const RemoveOperationWithGid PendingNotifyRemoveDone pendingNotifyRemoveDone = adjustMetaStore(rmOp, rmOp.getGlobalId(), dummy); considerEarlyAck(token); - if (rmOp.getValidDbdId(_params._subDbId)) { - internalRemove(std::move(token), serialNum, std::move(pendingNotifyRemoveDone), - rmOp.getPrevLid(), IDestructorCallback::SP()); - } if (rmOp.getValidPrevDbdId(_params._subDbId)) { if (rmOp.changedDbdId()) { assert(!rmOp.getValidDbdId(_params._subDbId)); @@ -630,9 +627,9 @@ StoreOnlyFeedView::adjustMetaStore(const DocumentOperation &op, const GlobalId & op.getValidPrevDbdId(_params._subDbId) && op.getLid() != op.getPrevLid()) { - moveMetaData(_metaStore, docId.getGlobalId(), op); + moveMetaData(_metaStore, docId, op); } else { - putMetaData(_metaStore, gid, docId, op, _params._subDbType == SubDbType::REMOVED); + putMetaData(_metaStore, docId, op, _params._subDbType == SubDbType::REMOVED); } } else if (op.getValidPrevDbdId(_params._subDbId)) { _gidToLidChangeHandler.notifyRemove(gid, serialNum); |