summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--documentapi/src/tests/messagebus/messagebus_test.cpp2
-rw-r--r--documentapi/src/tests/messages/messages50test.cpp10
-rw-r--r--documentapi/src/tests/messages/messages52test.cpp9
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/messages/getdocumentreply.h3
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h15
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h4
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/policies/documentrouteselectorpolicy.cpp6
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/policies/searchcolumnpolicy.cpp10
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp4
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp19
-rw-r--r--searchcore/src/apps/vespa-dump-feed/vespa-dump-feed.cpp12
-rw-r--r--storage/src/tests/storageserver/documentapiconvertertest.cpp145
-rw-r--r--storage/src/tests/visiting/visitormanagertest.cpp2
-rw-r--r--storage/src/tests/visiting/visitortest.cpp12
-rw-r--r--storage/src/vespa/storage/storageserver/documentapiconverter.cpp4
-rw-r--r--storageserver/src/tests/storageservertest.cpp13
16 files changed, 90 insertions, 180 deletions
diff --git a/documentapi/src/tests/messagebus/messagebus_test.cpp b/documentapi/src/tests/messagebus/messagebus_test.cpp
index 7cad7356c8e..d8920b0577b 100644
--- a/documentapi/src/tests/messagebus/messagebus_test.cpp
+++ b/documentapi/src/tests/messagebus/messagebus_test.cpp
@@ -81,7 +81,7 @@ void Test::testMessage() {
new document::DocumentUpdate(*testdoc_type,
document::DocumentId(document::DocIdString(
"testdoc", "testme2")))));
- EXPECT_TRUE(!(upd1.getDocumentUpdate()->getId() == upd2.getDocumentUpdate()->getId()));
+ EXPECT_TRUE(!(upd1.getDocumentUpdate().getId() == upd2.getDocumentUpdate().getId()));
DocumentMessage& msg2 = static_cast<DocumentMessage&>(upd2);
EXPECT_TRUE(msg2.getType() == DocumentProtocol::MESSAGE_UPDATEDOCUMENT);
diff --git a/documentapi/src/tests/messages/messages50test.cpp b/documentapi/src/tests/messages/messages50test.cpp
index 8c20ef77201..964e4e12288 100644
--- a/documentapi/src/tests/messages/messages50test.cpp
+++ b/documentapi/src/tests/messages/messages50test.cpp
@@ -444,8 +444,8 @@ Messages50Test::testPutDocumentMessage()
mbus::Routable::UP obj = deserialize("PutDocumentMessage", DocumentProtocol::MESSAGE_PUTDOCUMENT, lang);
if (EXPECT_TRUE(obj.get() != NULL)) {
PutDocumentMessage &ref = static_cast<PutDocumentMessage&>(*obj);
- EXPECT_TRUE(ref.getDocument()->getType().getName() == "testdoc");
- EXPECT_TRUE(ref.getDocument()->getId().toString() == "doc:scheme:");
+ EXPECT_TRUE(ref.getDocument().getType().getName() == "testdoc");
+ EXPECT_TRUE(ref.getDocument().getId().toString() == "doc:scheme:");
EXPECT_EQUAL(666u, ref.getTimestamp());
EXPECT_EQUAL(37u, ref.getApproxSize());
}
@@ -737,7 +737,7 @@ Messages50Test::testUpdateDocumentMessage()
mbus::Routable::UP obj = deserialize("UpdateDocumentMessage", DocumentProtocol::MESSAGE_UPDATEDOCUMENT, lang);
if (EXPECT_TRUE(obj.get() != NULL)) {
UpdateDocumentMessage &ref = static_cast<UpdateDocumentMessage&>(*obj);
- EXPECT_EQUAL(*upd, *ref.getDocumentUpdate());
+ EXPECT_EQUAL(*upd, ref.getDocumentUpdate());
EXPECT_EQUAL(666u, ref.getOldTimestamp());
EXPECT_EQUAL(777u, ref.getNewTimestamp());
EXPECT_EQUAL(85u, ref.getApproxSize());
@@ -1047,8 +1047,8 @@ Messages50Test::testGetDocumentReply()
if (EXPECT_TRUE(obj.get() != NULL)) {
GetDocumentReply &ref = static_cast<GetDocumentReply&>(*obj);
- EXPECT_EQUAL(string("testdoc"), ref.getDocument()->getType().getName());
- EXPECT_EQUAL(string("doc:scheme:"), ref.getDocument()->getId().toString());
+ EXPECT_EQUAL(string("testdoc"), ref.getDocument().getType().getName());
+ EXPECT_EQUAL(string("doc:scheme:"), ref.getDocument().getId().toString());
}
}
return true;
diff --git a/documentapi/src/tests/messages/messages52test.cpp b/documentapi/src/tests/messages/messages52test.cpp
index d6394012688..33eb5134dce 100644
--- a/documentapi/src/tests/messages/messages52test.cpp
+++ b/documentapi/src/tests/messages/messages52test.cpp
@@ -52,8 +52,8 @@ Messages52Test::testPutDocumentMessage()
if (EXPECT_TRUE(routableUp.get() != nullptr)) {
auto & deserializedMsg = static_cast<PutDocumentMessage &>(*routableUp);
- EXPECT_EQUAL(msg.getDocument()->getType().getName(), deserializedMsg.getDocument()->getType().getName());
- EXPECT_EQUAL(msg.getDocument()->getId().toString(), deserializedMsg.getDocument()->getId().toString());
+ EXPECT_EQUAL(msg.getDocument().getType().getName(), deserializedMsg.getDocument().getType().getName());
+ EXPECT_EQUAL(msg.getDocument().getId().toString(), deserializedMsg.getDocument().getId().toString());
EXPECT_EQUAL(msg.getTimestamp(), deserializedMsg.getTimestamp());
EXPECT_EQUAL(67u, deserializedMsg.getApproxSize());
EXPECT_EQUAL(msg.getCondition().getSelection(), deserializedMsg.getCondition().getSelection());
@@ -90,8 +90,7 @@ Messages52Test::testUpdateDocumentMessage()
const DocumentTypeRepo & repo = getTypeRepo();
const document::DocumentType & docType = *repo.getDocumentType("testdoc");
- document::DocumentUpdate::SP docUpdate(new document::DocumentUpdate(docType,
- document::DocumentId("doc:scheme:")));
+ auto docUpdate = std::make_shared<document::DocumentUpdate>(docType, document::DocumentId("doc:scheme:"));
docUpdate->addFieldPathUpdate(document::FieldPathUpdate::CP(
new document::RemoveFieldPathUpdate("intfield", "testdoc.intfield > 0")));
@@ -108,7 +107,7 @@ Messages52Test::testUpdateDocumentMessage()
if (EXPECT_TRUE(routableUp.get() != nullptr)) {
auto & deserializedMsg = static_cast<UpdateDocumentMessage &>(*routableUp);
- EXPECT_EQUAL(*msg.getDocumentUpdate(), *deserializedMsg.getDocumentUpdate());
+ EXPECT_EQUAL(msg.getDocumentUpdate(), deserializedMsg.getDocumentUpdate());
EXPECT_EQUAL(msg.getOldTimestamp(), deserializedMsg.getOldTimestamp());
EXPECT_EQUAL(msg.getNewTimestamp(), deserializedMsg.getNewTimestamp());
EXPECT_EQUAL(115u, deserializedMsg.getApproxSize());
diff --git a/documentapi/src/vespa/documentapi/messagebus/messages/getdocumentreply.h b/documentapi/src/vespa/documentapi/messagebus/messages/getdocumentreply.h
index f4feb712d8d..2cff36325ab 100644
--- a/documentapi/src/vespa/documentapi/messagebus/messages/getdocumentreply.h
+++ b/documentapi/src/vespa/documentapi/messagebus/messages/getdocumentreply.h
@@ -38,7 +38,8 @@ public:
*
* @return The document.
*/
- const DocumentSP & getDocument() const { return _document; }
+ const document::Document & getDocument() const { return *_document; }
+ bool hasDocument() const { return _document.get() != nullptr; }
/**
* Sets the document retrieved.
diff --git a/documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h b/documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h
index 38419bafa40..9bc1c088dfa 100644
--- a/documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h
+++ b/documentapi/src/vespa/documentapi/messagebus/messages/putdocumentmessage.h
@@ -13,15 +13,11 @@ private:
uint64_t _time;
protected:
- // Implements DocumentMessage.
DocumentReply::UP doCreateReply() const override;
public:
- /**
- * Convenience typedef.
- */
- typedef std::unique_ptr<PutDocumentMessage> UP;
- typedef std::shared_ptr<PutDocumentMessage> SP;
+ using UP = std::unique_ptr<PutDocumentMessage>;
+ using SP = std::shared_ptr<PutDocumentMessage>;
/**
* Constructs a new document message for deserialization.
@@ -41,7 +37,8 @@ public:
*
* @return The document.
*/
- const DocumentSP & getDocument() const { return _document; }
+ const DocumentSP & getDocumentSP() const { return _document; }
+ const document::Document & getDocument() const { return *_document; }
/**
* Sets the document to put.
@@ -63,13 +60,9 @@ public:
* @param time The timestamp to set.
*/
void setTimestamp(uint64_t time) { _time = time; }
-
bool hasSequenceId() const override;
-
uint64_t getSequenceId() const override;
-
uint32_t getType() const override;
-
string toString() const override { return "putdocumentmessage"; }
};
diff --git a/documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h b/documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h
index c1ce6224c5c..3a320960515 100644
--- a/documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h
+++ b/documentapi/src/vespa/documentapi/messagebus/messages/updatedocumentmessage.h
@@ -42,8 +42,8 @@ public:
*
* @return The update.
*/
- const DocumentUpdateSP & getDocumentUpdate() const { return _documentUpdate; }
-
+ const DocumentUpdateSP & getDocumentUpdateSP() const { return _documentUpdate; }
+ const document::DocumentUpdate & getDocumentUpdate() const { return *_documentUpdate; }
/**
* Sets the document update to perform.
*
diff --git a/documentapi/src/vespa/documentapi/messagebus/policies/documentrouteselectorpolicy.cpp b/documentapi/src/vespa/documentapi/messagebus/policies/documentrouteselectorpolicy.cpp
index 011b54305bb..6756f694267 100644
--- a/documentapi/src/vespa/documentapi/messagebus/policies/documentrouteselectorpolicy.cpp
+++ b/documentapi/src/vespa/documentapi/messagebus/policies/documentrouteselectorpolicy.cpp
@@ -124,12 +124,10 @@ DocumentRouteSelectorPolicy::select(mbus::RoutingContext &context, const vespali
const mbus::Message &msg = context.getMessage();
switch(msg.getType()) {
case DocumentProtocol::MESSAGE_PUTDOCUMENT:
- return it->second->contains(*static_cast<const PutDocumentMessage&>(msg).getDocument()) ==
- Result::True;
+ return it->second->contains(static_cast<const PutDocumentMessage&>(msg).getDocument()) == Result::True;
case DocumentProtocol::MESSAGE_UPDATEDOCUMENT:
- return it->second->contains(*static_cast<const UpdateDocumentMessage&>(msg).getDocumentUpdate()) !=
- Result::False;
+ return it->second->contains(static_cast<const UpdateDocumentMessage&>(msg).getDocumentUpdate()) != Result::False;
case DocumentProtocol::MESSAGE_MULTIOPERATION:
{
diff --git a/documentapi/src/vespa/documentapi/messagebus/policies/searchcolumnpolicy.cpp b/documentapi/src/vespa/documentapi/messagebus/policies/searchcolumnpolicy.cpp
index a6b1e200cd4..38610aca551 100644
--- a/documentapi/src/vespa/documentapi/messagebus/policies/searchcolumnpolicy.cpp
+++ b/documentapi/src/vespa/documentapi/messagebus/policies/searchcolumnpolicy.cpp
@@ -53,20 +53,20 @@ SearchColumnPolicy::select(mbus::RoutingContext &context)
const mbus::Message &msg = context.getMessage();
switch(msg.getType()) {
case DocumentProtocol::MESSAGE_PUTDOCUMENT:
- id = &static_cast<const PutDocumentMessage&>(msg).getDocument()->getId();
+ id = &static_cast<const PutDocumentMessage&>(msg).getDocument().getId();
break;
case DocumentProtocol::MESSAGE_GETDOCUMENT:
- id = &static_cast<const GetDocumentMessage&>(msg).getDocumentId();
+ id = &static_cast<const GetDocumentMessage&>(msg).getDocumentId();
break;
case DocumentProtocol::MESSAGE_REMOVEDOCUMENT:
- id = &static_cast<const RemoveDocumentMessage&>(msg).getDocumentId();
+ id = &static_cast<const RemoveDocumentMessage&>(msg).getDocumentId();
break;
case DocumentProtocol::MESSAGE_UPDATEDOCUMENT:
- id = &static_cast<const UpdateDocumentMessage&>(msg).getDocumentUpdate()->getId();
- break;
+ id = &static_cast<const UpdateDocumentMessage&>(msg).getDocumentUpdate().getId();
+ break;
case DocumentProtocol::MESSAGE_MULTIOPERATION:
bucketId = (static_cast<const MultiOperationMessage&>(msg)).getBucketId();
diff --git a/documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp b/documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp
index cace5b6576a..b7b451e8ddf 100644
--- a/documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp
+++ b/documentapi/src/vespa/documentapi/messagebus/policies/storagepolicy.cpp
@@ -119,7 +119,7 @@ StoragePolicy::doSelect(mbus::RoutingContext &context)
document::BucketId id;
switch(msg.getType()) {
case DocumentProtocol::MESSAGE_PUTDOCUMENT:
- id = _bucketIdFactory.getBucketId(static_cast<const PutDocumentMessage&>(msg).getDocument()->getId());
+ id = _bucketIdFactory.getBucketId(static_cast<const PutDocumentMessage&>(msg).getDocument().getId());
break;
case DocumentProtocol::MESSAGE_GETDOCUMENT:
@@ -131,7 +131,7 @@ StoragePolicy::doSelect(mbus::RoutingContext &context)
break;
case DocumentProtocol::MESSAGE_UPDATEDOCUMENT:
- id = _bucketIdFactory.getBucketId(static_cast<const UpdateDocumentMessage&>(msg).getDocumentUpdate()->getId());
+ id = _bucketIdFactory.getBucketId(static_cast<const UpdateDocumentMessage&>(msg).getDocumentUpdate().getId());
break;
case DocumentProtocol::MESSAGE_MULTIOPERATION:
diff --git a/documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp b/documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp
index b566e36d8d5..504b3fcdf4f 100644
--- a/documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp
+++ b/documentapi/src/vespa/documentapi/messagebus/routablefactories50.cpp
@@ -567,13 +567,16 @@ RoutableFactories50::GetDocumentReplyFactory::doDecode(document::ByteBuffer &buf
GetDocumentReply &reply = static_cast<GetDocumentReply&>(*ret);
bool hasDocument = decodeBoolean(buf);
+ document::Document * document = nullptr;
if (hasDocument) {
- reply.setDocument(std::make_shared<document::Document>(_repo, buf));
+ auto doc = std::make_shared<document::Document>(_repo, buf);
+ document = doc.get();
+ reply.setDocument(std::move(doc));
}
int64_t lastModified = decodeLong(buf);
reply.setLastModified(lastModified);
- if (reply.getDocument()) {
- reply.getDocument()->setLastModified(lastModified);
+ if (hasDocument) {
+ document->setLastModified(lastModified);
}
return ret;
@@ -584,10 +587,10 @@ RoutableFactories50::GetDocumentReplyFactory::doEncode(const DocumentReply &obj,
{
const GetDocumentReply &reply = static_cast<const GetDocumentReply&>(obj);
- buf.putByte(reply.getDocument().get() == NULL ? 0 : 1);
- if (reply.getDocument().get() != NULL) {
+ buf.putByte(reply.hasDocument() ? 1 : 0);
+ if (reply.hasDocument()) {
nbostream stream;
- reply.getDocument()->serialize(stream);
+ reply.getDocument().serialize(stream);
buf.putBytes(stream.peek(), stream.size());
}
buf.putLong(reply.getLastModified());
@@ -691,7 +694,7 @@ RoutableFactories50::PutDocumentMessageFactory::doEncode(const DocumentMessage &
auto & msg = static_cast<const PutDocumentMessage &>(obj);
nbostream stream;
- msg.getDocument()->serialize(stream);
+ msg.getDocument().serialize(stream);
buf.putBytes(stream.peek(), stream.size());
buf.putLong(static_cast<int64_t>(msg.getTimestamp()));
@@ -948,7 +951,7 @@ RoutableFactories50::UpdateDocumentMessageFactory::doEncode(const DocumentMessag
const UpdateDocumentMessage &msg = static_cast<const UpdateDocumentMessage&>(obj);
vespalib::nbostream stream;
- msg.getDocumentUpdate()->serializeHEAD(stream);
+ msg.getDocumentUpdate().serializeHEAD(stream);
buf.putBytes(stream.peek(), stream.size());
buf.putLong((int64_t)msg.getOldTimestamp());
buf.putLong((int64_t)msg.getNewTimestamp());
diff --git a/searchcore/src/apps/vespa-dump-feed/vespa-dump-feed.cpp b/searchcore/src/apps/vespa-dump-feed/vespa-dump-feed.cpp
index c38811e1962..d942049192a 100644
--- a/searchcore/src/apps/vespa-dump-feed/vespa-dump-feed.cpp
+++ b/searchcore/src/apps/vespa-dump-feed/vespa-dump-feed.cpp
@@ -4,13 +4,9 @@
#include <vespa/config/print/fileconfigwriter.h>
#include <vespa/document/config/config-documenttypes.h>
#include <vespa/document/document.h>
-#include <vespa/document/repo/documenttyperepo.h>
#include <vespa/documentapi/documentapi.h>
#include <vespa/documentapi/loadtypes/loadtypeset.h>
#include <vespa/messagebus/destinationsession.h>
-#include <vespa/messagebus/imessagehandler.h>
-#include <vespa/messagebus/iprotocol.h>
-#include <vespa/messagebus/message.h>
#include <vespa/messagebus/protocolset.h>
#include <vespa/messagebus/rpcmessagebus.h>
#include <vespa/vespalib/io/fileutil.h>
@@ -56,7 +52,7 @@ private:
OutputFile &_dat;
size_t _numDocs;
- void handleDocumentPut(document::Document::SP doc);
+ void handleDocumentPut(const document::Document::SP & doc);
virtual void handleMessage(mbus::Message::UP message) override;
public:
@@ -66,9 +62,9 @@ public:
};
void
-FeedHandler::handleDocumentPut(document::Document::SP doc)
+FeedHandler::handleDocumentPut(const document::Document::SP & doc)
{
- if (doc.get() != 0) {
+ if (doc) {
vespalib::nbostream datStream(12345);
vespalib::nbostream idxStream(12);
doc->serialize(datStream);
@@ -86,7 +82,7 @@ FeedHandler::handleMessage(mbus::Message::UP message)
documentapi::DocumentMessage::UP msg((documentapi::DocumentMessage*)message.release());
switch (msg->getType()) {
case documentapi::DocumentProtocol::MESSAGE_PUTDOCUMENT:
- handleDocumentPut(((documentapi::PutDocumentMessage&)(*msg)).getDocument());
+ handleDocumentPut(((documentapi::PutDocumentMessage&)(*msg)).getDocumentSP());
break;
default:
break;
diff --git a/storage/src/tests/storageserver/documentapiconvertertest.cpp b/storage/src/tests/storageserver/documentapiconvertertest.cpp
index a0553625c8c..3830d3b71cb 100644
--- a/storage/src/tests/storageserver/documentapiconvertertest.cpp
+++ b/storage/src/tests/storageserver/documentapiconvertertest.cpp
@@ -13,7 +13,6 @@
#include <vespa/document/bucket/bucketidfactory.h>
#include <vespa/config/subscription/configuri.h>
#include <vespa/vespalib/testkit/test_kit.h>
-#include <climits>
using document::DataType;
using document::DocIdString;
@@ -78,15 +77,12 @@ CPPUNIT_TEST_SUITE_REGISTRATION(DocumentApiConverterTest);
void DocumentApiConverterTest::testPut()
{
- Document::SP
- doc(new Document(_html_type, DocumentId(DocIdString("test", "test"))));
+ Document::SP doc(new Document(_html_type, DocumentId(DocIdString("test", "test"))));
documentapi::PutDocumentMessage putmsg(doc);
putmsg.setTimestamp(1234);
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(putmsg, _repo);
-
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(putmsg, _repo);
api::PutCommand* pc = dynamic_cast<api::PutCommand*>(cmd.get());
CPPUNIT_ASSERT(pc);
@@ -100,26 +96,23 @@ void DocumentApiConverterTest::testPut()
api::PutReply* pr = dynamic_cast<api::PutReply*>(rep.get());
CPPUNIT_ASSERT(pr);
- std::unique_ptr<mbus::Message> mbusmsg =
- _converter->toDocumentAPI(*pc, _repo);
+ std::unique_ptr<mbus::Message> mbusmsg = _converter->toDocumentAPI(*pc, _repo);
documentapi::PutDocumentMessage* mbusput = dynamic_cast<documentapi::PutDocumentMessage*>(mbusmsg.get());
CPPUNIT_ASSERT(mbusput);
- CPPUNIT_ASSERT(mbusput->getDocument().get() == doc.get());
+ CPPUNIT_ASSERT(mbusput->getDocumentSP().get() == doc.get());
CPPUNIT_ASSERT(mbusput->getTimestamp() == 1234);
};
void DocumentApiConverterTest::testForwardedPut()
{
- Document::SP
- doc(new Document(_html_type, DocumentId(DocIdString("test", "test"))));
+ Document::SP doc(new Document(_html_type, DocumentId(DocIdString("test", "test"))));
documentapi::PutDocumentMessage* putmsg = new documentapi::PutDocumentMessage(doc);
std::unique_ptr<mbus::Reply> reply(((documentapi::DocumentMessage*)putmsg)->createReply());
reply->setMessage(std::unique_ptr<mbus::Message>(putmsg));
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(*putmsg, _repo);
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(*putmsg, _repo);
((storage::api::PutCommand*)cmd.get())->setTimestamp(1234);
std::unique_ptr<storage::api::StorageReply> rep = cmd->makeReply();
@@ -132,8 +125,7 @@ void DocumentApiConverterTest::testForwardedPut()
void DocumentApiConverterTest::testRemove()
{
documentapi::RemoveDocumentMessage removemsg(document::DocumentId(document::DocIdString("test", "test")));
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(removemsg, _repo);
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(removemsg, _repo);
api::RemoveCommand* rc = dynamic_cast<api::RemoveCommand*>(cmd.get());
@@ -148,8 +140,7 @@ void DocumentApiConverterTest::testRemove()
api::RemoveReply* pr = dynamic_cast<api::RemoveReply*>(rep.get());
CPPUNIT_ASSERT(pr);
- std::unique_ptr<mbus::Message> mbusmsg =
- _converter->toDocumentAPI(*rc, _repo);
+ std::unique_ptr<mbus::Message> mbusmsg = _converter->toDocumentAPI(*rc, _repo);
documentapi::RemoveDocumentMessage* mbusremove = dynamic_cast<documentapi::RemoveDocumentMessage*>(mbusmsg.get());
CPPUNIT_ASSERT(mbusremove);
@@ -159,11 +150,9 @@ void DocumentApiConverterTest::testRemove()
void DocumentApiConverterTest::testGet()
{
documentapi::GetDocumentMessage getmsg(
- document::DocumentId(document::DocIdString("test", "test")),
- "foo bar");
+ document::DocumentId(document::DocIdString("test", "test")), "foo bar");
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(getmsg, _repo);
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(getmsg, _repo);
api::GetCommand* rc = dynamic_cast<api::GetCommand*>(cmd.get());
@@ -174,17 +163,10 @@ void DocumentApiConverterTest::testGet()
void DocumentApiConverterTest::testCreateVisitor()
{
- documentapi::CreateVisitorMessage cv(
- "mylib",
- "myinstance",
- "control-dest",
- "data-dest");
+ documentapi::CreateVisitorMessage cv("mylib", "myinstance", "control-dest", "data-dest");
cv.setTimeRemaining(123456);
-
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(cv, _repo);
-
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(cv, _repo);
api::CreateVisitorCommand* pc = dynamic_cast<api::CreateVisitorCommand*>(cmd.get());
CPPUNIT_ASSERT(pc);
@@ -197,17 +179,9 @@ void DocumentApiConverterTest::testCreateVisitor()
void DocumentApiConverterTest::testCreateVisitorHighTimeout()
{
- documentapi::CreateVisitorMessage cv(
- "mylib",
- "myinstance",
- "control-dest",
- "data-dest");
-
+ documentapi::CreateVisitorMessage cv("mylib", "myinstance", "control-dest", "data-dest");
cv.setTimeRemaining((uint64_t)std::numeric_limits<uint32_t>::max() + 1); // Will be INT_MAX
-
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(cv, _repo);
-
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(cv, _repo);
api::CreateVisitorCommand* pc = dynamic_cast<api::CreateVisitorCommand*>(cmd.get());
CPPUNIT_ASSERT(pc);
@@ -215,65 +189,40 @@ void DocumentApiConverterTest::testCreateVisitorHighTimeout()
CPPUNIT_ASSERT_EQUAL(vespalib::string("myinstance"), pc->getInstanceId());
CPPUNIT_ASSERT_EQUAL(vespalib::string("control-dest"), pc->getControlDestination());
CPPUNIT_ASSERT_EQUAL(vespalib::string("data-dest"), pc->getDataDestination());
- CPPUNIT_ASSERT_EQUAL((uint32_t) std::numeric_limits<int32_t>::max(),
- pc->getTimeout());
+ CPPUNIT_ASSERT_EQUAL((uint32_t) std::numeric_limits<int32_t>::max(), pc->getTimeout());
}
void DocumentApiConverterTest::testCreateVisitorReplyNotReady()
{
- documentapi::CreateVisitorMessage cv(
- "mylib",
- "myinstance",
- "control-dest",
- "data-dest");
-
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(cv, _repo);
+ documentapi::CreateVisitorMessage cv("mylib", "myinstance", "control-dest", "data-dest");
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(cv, _repo);
CPPUNIT_ASSERT(cmd.get());
api::CreateVisitorCommand& cvc = dynamic_cast<api::CreateVisitorCommand&>(*cmd);
-
api::CreateVisitorReply cvr(cvc);
cvr.setResult(api::ReturnCode(api::ReturnCode::NOT_READY, "not ready"));
std::unique_ptr<documentapi::CreateVisitorReply> reply(
- dynamic_cast<documentapi::CreateVisitorReply*>(
- cv.createReply().release()));
+ dynamic_cast<documentapi::CreateVisitorReply*>(cv.createReply().release()));
CPPUNIT_ASSERT(reply.get());
-
_converter->transferReplyState(cvr, *reply);
-
CPPUNIT_ASSERT_EQUAL((uint32_t)documentapi::DocumentProtocol::ERROR_NODE_NOT_READY, reply->getError(0).getCode());
-
- CPPUNIT_ASSERT_EQUAL(document::BucketId(INT_MAX), reply->getLastBucket());
+ CPPUNIT_ASSERT_EQUAL(document::BucketId(std::numeric_limits<int>::max()), reply->getLastBucket());
}
void DocumentApiConverterTest::testCreateVisitorReplyLastBucket()
{
- documentapi::CreateVisitorMessage cv(
- "mylib",
- "myinstance",
- "control-dest",
- "data-dest");
-
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(cv, _repo);
+ documentapi::CreateVisitorMessage cv("mylib", "myinstance", "control-dest", "data-dest");
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(cv, _repo);
CPPUNIT_ASSERT(cmd.get());
api::CreateVisitorCommand& cvc = dynamic_cast<api::CreateVisitorCommand&>(*cmd);
-
-
api::CreateVisitorReply cvr(cvc);
cvr.setLastBucket(document::BucketId(123));
-
-
std::unique_ptr<documentapi::CreateVisitorReply> reply(
- dynamic_cast<documentapi::CreateVisitorReply*>(
- cv.createReply().release()));
+ dynamic_cast<documentapi::CreateVisitorReply*>(cv.createReply().release()));
CPPUNIT_ASSERT(reply.get());
-
_converter->transferReplyState(cvr, *reply);
-
CPPUNIT_ASSERT_EQUAL(document::BucketId(123), reply->getLastBucket());
}
@@ -282,8 +231,7 @@ void DocumentApiConverterTest::testDestroyVisitor()
{
documentapi::DestroyVisitorMessage cv("myinstance");
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(cv, _repo);
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(cv, _repo);
api::DestroyVisitorCommand* pc = dynamic_cast<api::DestroyVisitorCommand*>(cmd.get());
@@ -302,8 +250,7 @@ DocumentApiConverterTest::testVisitorInfo()
vicmd.setBucketsCompleted(bucketsCompleted);
- std::unique_ptr<mbus::Message> mbusmsg =
- _converter->toDocumentAPI(vicmd, _repo);
+ std::unique_ptr<mbus::Message> mbusmsg = _converter->toDocumentAPI(vicmd, _repo);
documentapi::VisitorInfoMessage* mbusvi = dynamic_cast<documentapi::VisitorInfoMessage*>(mbusmsg.get());
CPPUNIT_ASSERT(mbusvi);
@@ -323,8 +270,7 @@ DocumentApiConverterTest::testVisitorInfo()
void
DocumentApiConverterTest::testDocBlock()
{
- Document::SP
- doc(new Document(_html_type, DocumentId(DocIdString("test", "test"))));
+ Document::SP doc(new Document(_html_type, DocumentId(DocIdString("test", "test"))));
char buffer[10000];
vdslib::WritableDocumentList docBlock(_repo, buffer, sizeof(buffer));
@@ -335,11 +281,9 @@ DocumentApiConverterTest::testDocBlock()
bucketId.setUsedBits(32);
api::DocBlockCommand dbcmd(bucketId, docBlock, std::shared_ptr<void>());
-
dbcmd.setTimeout(123456);
- std::unique_ptr<mbus::Message> mbusmsg =
- _converter->toDocumentAPI(dbcmd, _repo);
+ std::unique_ptr<mbus::Message> mbusmsg = _converter->toDocumentAPI(dbcmd, _repo);
documentapi::MultiOperationMessage* mbusdb = dynamic_cast<documentapi::MultiOperationMessage*>(mbusmsg.get());
CPPUNIT_ASSERT(mbusdb);
@@ -370,12 +314,10 @@ DocumentApiConverterTest::testDocBlockWithKeepTimeStamps()
{
CPPUNIT_ASSERT_EQUAL(dbcmd.keepTimeStamps(), false);
- std::unique_ptr<mbus::Message> mbusmsg =
- _converter->toDocumentAPI(dbcmd, _repo);
+ std::unique_ptr<mbus::Message> mbusmsg = _converter->toDocumentAPI(dbcmd, _repo);
documentapi::MultiOperationMessage* mbusdb = dynamic_cast<documentapi::MultiOperationMessage*>(mbusmsg.get());
CPPUNIT_ASSERT(mbusdb);
-
CPPUNIT_ASSERT_EQUAL(mbusdb->keepTimeStamps(), false);
}
@@ -383,12 +325,10 @@ DocumentApiConverterTest::testDocBlockWithKeepTimeStamps()
dbcmd.keepTimeStamps(true);
CPPUNIT_ASSERT_EQUAL(dbcmd.keepTimeStamps(), true);
- std::unique_ptr<mbus::Message> mbusmsg =
- _converter->toDocumentAPI(dbcmd, _repo);
+ std::unique_ptr<mbus::Message> mbusmsg = _converter->toDocumentAPI(dbcmd, _repo);
documentapi::MultiOperationMessage* mbusdb = dynamic_cast<documentapi::MultiOperationMessage*>(mbusmsg.get());
CPPUNIT_ASSERT(mbusdb);
-
CPPUNIT_ASSERT_EQUAL(mbusdb->keepTimeStamps(), true);
}
@@ -399,8 +339,7 @@ void
DocumentApiConverterTest::testMultiOperation()
{
//create a document
- Document::SP
- doc(new Document(_html_type, DocumentId(DocIdString("test", "test"))));
+ Document::SP doc(new Document(_html_type, DocumentId(DocIdString("test", "test"))));
document::BucketIdFactory fac;
document::BucketId bucketId = fac.getBucketId(doc->getId());
@@ -409,17 +348,13 @@ DocumentApiConverterTest::testMultiOperation()
{
documentapi::MultiOperationMessage momsg(_repo, bucketId, 10000);
- vdslib::WritableDocumentList operations(_repo, &(momsg.getBuffer()[0]),
- momsg.getBuffer().size());
+ vdslib::WritableDocumentList operations(_repo, &(momsg.getBuffer()[0]), momsg.getBuffer().size());
operations.addPut(*doc, 100);
-
momsg.setOperations(operations);
-
CPPUNIT_ASSERT(momsg.getBuffer().size() > 0);
// Convert it to Storage API
- std::unique_ptr<api::StorageCommand> stcmd =
- _converter->toStorageAPI(momsg, _repo);
+ std::unique_ptr<api::StorageCommand> stcmd = _converter->toStorageAPI(momsg, _repo);
api::MultiOperationCommand* mocmd = dynamic_cast<api::MultiOperationCommand*>(stcmd.get());
CPPUNIT_ASSERT(mocmd);
@@ -443,8 +378,7 @@ DocumentApiConverterTest::testMultiOperation()
mocmd.getOperations().addPut(*doc, 100);
// Convert it to documentapi
- std::unique_ptr<mbus::Message> mbmsg =
- _converter->toDocumentAPI(mocmd, _repo);
+ std::unique_ptr<mbus::Message> mbmsg = _converter->toDocumentAPI(mocmd, _repo);
documentapi::MultiOperationMessage* momsg = dynamic_cast<documentapi::MultiOperationMessage*>(mbmsg.get());
CPPUNIT_ASSERT(momsg);
@@ -473,33 +407,28 @@ DocumentApiConverterTest::testBatchDocumentUpdate()
{
document::DocumentId docId(document::UserDocIdString("userdoc:test:1234:test1"));
- document::DocumentUpdate::SP update(
- new document::DocumentUpdate(_html_type, docId));
+ document::DocumentUpdate::SP update(new document::DocumentUpdate(_html_type, docId));
updates.push_back(update);
}
{
document::DocumentId docId(document::UserDocIdString("userdoc:test:1234:test2"));
- document::DocumentUpdate::SP update(
- new document::DocumentUpdate(_html_type, docId));
+ document::DocumentUpdate::SP update(new document::DocumentUpdate(_html_type, docId));
updates.push_back(update);
}
{
document::DocumentId docId(document::UserDocIdString("userdoc:test:1234:test3"));
- document::DocumentUpdate::SP update(
- new document::DocumentUpdate(_html_type, docId));
+ document::DocumentUpdate::SP update(new document::DocumentUpdate(_html_type, docId));
updates.push_back(update);
}
- std::shared_ptr<documentapi::BatchDocumentUpdateMessage> msg(
- new documentapi::BatchDocumentUpdateMessage(1234));
+ auto msg = std::make_shared<documentapi::BatchDocumentUpdateMessage>(1234);
for (std::size_t i = 0; i < updates.size(); ++i) {
msg->addUpdate(updates[i]);
}
- std::unique_ptr<storage::api::StorageCommand> cmd =
- _converter->toStorageAPI(*msg, _repo);
+ std::unique_ptr<storage::api::StorageCommand> cmd = _converter->toStorageAPI(*msg, _repo);
api::BatchDocumentUpdateCommand* batchCmd = dynamic_cast<api::BatchDocumentUpdateCommand*>(cmd.get());
CPPUNIT_ASSERT(batchCmd);
CPPUNIT_ASSERT_EQUAL(updates.size(), batchCmd->getUpdates().size());
diff --git a/storage/src/tests/visiting/visitormanagertest.cpp b/storage/src/tests/visiting/visitormanagertest.cpp
index 974c756359f..3f1e9b69963 100644
--- a/storage/src/tests/visiting/visitormanagertest.cpp
+++ b/storage/src/tests/visiting/visitormanagertest.cpp
@@ -298,7 +298,7 @@ VisitorManagerTest::getMessagesAndReply(
switch (session.sentMessages[i]->getType()) {
case documentapi::DocumentProtocol::MESSAGE_PUTDOCUMENT:
docs.push_back(static_cast<documentapi::PutDocumentMessage&>(
- *session.sentMessages[i]).getDocument());
+ *session.sentMessages[i]).getDocumentSP());
break;
case documentapi::DocumentProtocol::MESSAGE_REMOVEDOCUMENT:
docIds.push_back(static_cast<documentapi::RemoveDocumentMessage&>(
diff --git a/storage/src/tests/visiting/visitortest.cpp b/storage/src/tests/visiting/visitortest.cpp
index 85fbb6207bb..8abe7a3857d 100644
--- a/storage/src/tests/visiting/visitortest.cpp
+++ b/storage/src/tests/visiting/visitortest.cpp
@@ -333,26 +333,22 @@ VisitorTest::getMessagesAndReply(
{
vespalib::MonitorGuard guard(session.getMonitor());
CPPUNIT_ASSERT(!session.sentMessages.empty());
- std::unique_ptr<documentapi::DocumentMessage> msg(
- std::move(session.sentMessages.front()));
+ std::unique_ptr<documentapi::DocumentMessage> msg(std::move(session.sentMessages.front()));
session.sentMessages.pop_front();
CPPUNIT_ASSERT(msg->getPriority() < 16);
switch (msg->getType()) {
case documentapi::DocumentProtocol::MESSAGE_PUTDOCUMENT:
docs.push_back(
- static_cast<documentapi::PutDocumentMessage&>(*msg)
- .getDocument());
+ static_cast<documentapi::PutDocumentMessage&>(*msg).getDocumentSP());
break;
case documentapi::DocumentProtocol::MESSAGE_REMOVEDOCUMENT:
docIds.push_back(
- static_cast<documentapi::RemoveDocumentMessage&>(*msg)
- .getDocumentId());
+ static_cast<documentapi::RemoveDocumentMessage&>(*msg).getDocumentId());
break;
case documentapi::DocumentProtocol::MESSAGE_VISITORINFO:
infoMessages.push_back(
- static_cast<documentapi::VisitorInfoMessage&>(*msg)
- .getErrorMessage());
+ static_cast<documentapi::VisitorInfoMessage&>(*msg).getErrorMessage());
break;
default:
break;
diff --git a/storage/src/vespa/storage/storageserver/documentapiconverter.cpp b/storage/src/vespa/storage/storageserver/documentapiconverter.cpp
index 7dc5581d44e..9df177a32dd 100644
--- a/storage/src/vespa/storage/storageserver/documentapiconverter.cpp
+++ b/storage/src/vespa/storage/storageserver/documentapiconverter.cpp
@@ -36,7 +36,7 @@ DocumentApiConverter::toStorageAPI(documentapi::DocumentMessage& fromMsg,
case DocumentProtocol::MESSAGE_PUTDOCUMENT:
{
documentapi::PutDocumentMessage& from(static_cast<documentapi::PutDocumentMessage&>(fromMsg));
- api::PutCommand::UP to(new api::PutCommand(document::BucketId(0), from.getDocument(), from.getTimestamp()));
+ api::PutCommand::UP to(new api::PutCommand(document::BucketId(0), from.getDocumentSP(), from.getTimestamp()));
to->setCondition(from.getCondition());
toMsg = std::move(to);
break;
@@ -44,7 +44,7 @@ DocumentApiConverter::toStorageAPI(documentapi::DocumentMessage& fromMsg,
case DocumentProtocol::MESSAGE_UPDATEDOCUMENT:
{
documentapi::UpdateDocumentMessage& from(static_cast<documentapi::UpdateDocumentMessage&>(fromMsg));
- api::UpdateCommand::UP to(new api::UpdateCommand(document::BucketId(0), from.getDocumentUpdate(),
+ api::UpdateCommand::UP to(new api::UpdateCommand(document::BucketId(0), from.getDocumentUpdateSP(),
from.getNewTimestamp()));
to->setOldTimestamp(from.getOldTimestamp());
to->setCondition(from.getCondition());
diff --git a/storageserver/src/tests/storageservertest.cpp b/storageserver/src/tests/storageservertest.cpp
index 2564c500cbc..f3595afe1e7 100644
--- a/storageserver/src/tests/storageservertest.cpp
+++ b/storageserver/src/tests/storageservertest.cpp
@@ -6,7 +6,6 @@
#include <vespa/document/base/testdocman.h>
#include <vespa/documentapi/documentapi.h>
#include <vespa/messagebus/rpcmessagebus.h>
-#include <fstream>
#include <vespa/memfilepersistence/spi/memfilepersistenceprovider.h>
#include <vespa/messagebus/staticthrottlepolicy.h>
#include <vespa/messagebus/testlib/slobrok.h>
@@ -14,17 +13,15 @@
#include <vespa/storageapi/mbusprot/storagereply.h>
#include <vespa/storageapi/message/bucketsplitting.h>
#include <vespa/storageapi/message/state.h>
-#include <vespa/storage/common/nodestateupdater.h>
#include <vespa/storage/common/statusmetricconsumer.h>
-#include <vespa/memfilepersistence/memfile/memfilecache.h>
#include <tests/testhelper.h>
-#include <vespa/vdstestlib/cppunit/macros.h>
#include <tests/dummystoragelink.h>
#include <vespa/slobrok/sbmirror.h>
#include <vespa/storageserver/app/distributorprocess.h>
#include <vespa/storageserver/app/memfileservicelayerprocess.h>
#include <vespa/vespalib/util/exceptions.h>
#include <sys/time.h>
+#include <fstream>
#include <vespa/log/log.h>
LOG_SETUP(".storageservertest");
@@ -388,9 +385,8 @@ namespace {
if (msg->getType() == DocumentProtocol::MESSAGE_PUTDOCUMENT)
{
documentapi::PutDocumentMessage& putMsg(
- static_cast<documentapi::PutDocumentMessage&>(
- *msg));
- std::cerr << " - " << putMsg.getDocument()->getId();
+ static_cast<documentapi::PutDocumentMessage&>(*msg));
+ std::cerr << " - " << putMsg.getDocument().getId();
}
std::cerr << "\n";
}
@@ -419,8 +415,7 @@ namespace {
}
FastOS_Thread::Sleep(1);
}
- LOG(info, "Currently, we have received %u ok replies and have %u "
- "pending ones.",
+ LOG(info, "Currently, we have received %u ok replies and have %u pending ones.",
_processedOk, _currentPending);
}
};