aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore/src
diff options
context:
space:
mode:
authorTor Brede Vekterli <vekterli@verizonmedia.com>2020-05-25 11:56:09 +0000
committerTor Brede Vekterli <vekterli@verizonmedia.com>2020-05-26 13:55:53 +0000
commit2c8db3de8a721af856fee825af5a48d10313ff1e (patch)
treec448617bdfdd577ab1aad8d73ac7cf369a97dcb4 /searchcore/src
parent1026f130814d5063fce95092a860e01e10f4ecca (diff)
Propagate provider tombstone metadata to internal SPI GetResult
Diffstat (limited to 'searchcore/src')
-rw-r--r--searchcore/src/tests/proton/persistenceengine/persistenceengine_test.cpp1
-rw-r--r--searchcore/src/vespa/searchcore/proton/persistenceengine/persistenceengine.cpp2
2 files changed, 2 insertions, 1 deletions
diff --git a/searchcore/src/tests/proton/persistenceengine/persistenceengine_test.cpp b/searchcore/src/tests/proton/persistenceengine/persistenceengine_test.cpp
index 2927457a6a5..d6a3fea4735 100644
--- a/searchcore/src/tests/proton/persistenceengine/persistenceengine_test.cpp
+++ b/searchcore/src/tests/proton/persistenceengine/persistenceengine_test.cpp
@@ -686,6 +686,7 @@ TEST_F("require that get returns the first document found", SimpleFixture) {
EXPECT_EQUAL(tstamp1, result.getTimestamp());
ASSERT_TRUE(result.hasDocument());
EXPECT_EQUAL(*doc1, result.getDocument());
+ EXPECT_FALSE(result.is_tombstone());
}
TEST_F("require that createIterator does", SimpleFixture) {
diff --git a/searchcore/src/vespa/searchcore/proton/persistenceengine/persistenceengine.cpp b/searchcore/src/vespa/searchcore/proton/persistenceengine/persistenceengine.cpp
index 91ccac6fce1..1dc5199557a 100644
--- a/searchcore/src/vespa/searchcore/proton/persistenceengine/persistenceengine.cpp
+++ b/searchcore/src/vespa/searchcore/proton/persistenceengine/persistenceengine.cpp
@@ -434,7 +434,7 @@ PersistenceEngine::get(const Bucket& b, const document::FieldSet& fields, const
search::DocumentMetaData meta = retriever.getDocumentMetaData(did);
if (meta.timestamp != 0 && meta.bucketId == b.getBucketId()) {
if (meta.removed) {
- return GetResult();
+ return GetResult::make_for_tombstone(meta.timestamp);
}
document::Document::UP doc = retriever.getDocument(meta.lid);
if (!doc || doc->getId().getGlobalId() != meta.gid) {