summaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2022-03-28 11:43:52 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2022-03-28 14:49:19 +0000
commit1cd2c6a3ba9e392c00b91bfe3cf1215a80c6679f (patch)
tree4cbcddcf8922d4a3447d0806bfab26d935e8ccbe /storage
parent8976efd142145482d61d83755db2fab0a8b626a6 (diff)
Remove copy constructors.
Diffstat (limited to 'storage')
-rw-r--r--storage/src/tests/distributor/externaloperationhandlertest.cpp21
-rw-r--r--storage/src/tests/persistence/persistencetestutils.cpp8
-rw-r--r--storage/src/tests/persistence/persistencetestutils.h67
-rw-r--r--storage/src/tests/persistence/testandsettest.cpp11
4 files changed, 36 insertions, 71 deletions
diff --git a/storage/src/tests/distributor/externaloperationhandlertest.cpp b/storage/src/tests/distributor/externaloperationhandlertest.cpp
index 0e5372043ab..a6e2b9a2632 100644
--- a/storage/src/tests/distributor/externaloperationhandlertest.cpp
+++ b/storage/src/tests/distributor/externaloperationhandlertest.cpp
@@ -32,28 +32,22 @@ struct ExternalOperationHandlerTest : Test, DistributorStripeTestUtil {
document::TestDocMan _testDocMan;
document::BucketId findNonOwnedUserBucketInState(vespalib::stringref state);
- document::BucketId findOwned1stNotOwned2ndInStates(
- vespalib::stringref state1,
- vespalib::stringref state2);
+ document::BucketId findOwned1stNotOwned2ndInStates(vespalib::stringref state1, vespalib::stringref state2);
std::shared_ptr<api::GetCommand> makeGetCommandForUser(uint64_t id) const;
std::shared_ptr<api::GetCommand> makeGetCommand(const vespalib::string& id) const;
- std::shared_ptr<api::UpdateCommand> makeUpdateCommand(const vespalib::string& doc_type,
- const vespalib::string& id) const;
+ std::shared_ptr<api::UpdateCommand> makeUpdateCommand(const vespalib::string& doc_type, const vespalib::string& id) const;
std::shared_ptr<api::UpdateCommand> makeUpdateCommand() const;
std::shared_ptr<api::UpdateCommand> makeUpdateCommandForUser(uint64_t id) const;
- std::shared_ptr<api::PutCommand> makePutCommand(const vespalib::string& doc_type,
- const vespalib::string& id) const;
+ std::shared_ptr<api::PutCommand> makePutCommand(const vespalib::string& doc_type, const vespalib::string& id) const;
std::shared_ptr<api::RemoveCommand> makeRemoveCommand(const vespalib::string& id) const;
void verify_busy_bounced_due_to_no_active_state(std::shared_ptr<api::StorageCommand> cmd);
- void start_operation_verify_not_rejected(std::shared_ptr<api::StorageCommand> cmd,
- Operation::SP& out_generated);
+ void start_operation_verify_not_rejected(std::shared_ptr<api::StorageCommand> cmd, Operation::SP& out_generated);
void start_operation_verify_rejected(std::shared_ptr<api::StorageCommand> cmd);
- int64_t safe_time_not_reached_metric_count(
- const PersistenceOperationMetricSet & metrics) const {
+ int64_t safe_time_not_reached_metric_count(const PersistenceOperationMetricSet & metrics) const {
return metrics.failures.safe_time_not_reached.getLongValue("count");
}
@@ -61,8 +55,7 @@ struct ExternalOperationHandlerTest : Test, DistributorStripeTestUtil {
return metrics.failures.safe_time_not_reached.getLongValue("count");
}
- int64_t concurrent_mutatations_metric_count(
- const PersistenceOperationMetricSet& metrics) const {
+ int64_t concurrent_mutatations_metric_count(const PersistenceOperationMetricSet& metrics) const {
return metrics.failures.concurrent_mutations.getLongValue("count");
}
@@ -597,7 +590,7 @@ TEST_F(ExternalOperationHandlerTest, non_trivial_updates_are_rejected_if_feed_is
auto cmd = makeUpdateCommand("testdoctype1", "id:foo:testdoctype1::foo");
const auto* doc_type = _testDocMan.getTypeRepo().getDocumentType("testdoctype1");
- cmd->getUpdate()->addUpdate(FieldUpdate(doc_type->getField("title")).addUpdate(std::make_unique<AssignValueUpdate>(StringFieldValue("new value"))));
+ cmd->getUpdate()->addUpdate(FieldUpdate(doc_type->getField("title")).addUpdate(std::make_unique<AssignValueUpdate>(std::make_unique<StringFieldValue>("new value"))));
ASSERT_NO_FATAL_FAILURE(start_operation_verify_rejected(std::move(cmd)));
EXPECT_EQ("ReturnCode(NO_SPACE, External feed is blocked due to resource exhaustion: full disk)",
diff --git a/storage/src/tests/persistence/persistencetestutils.cpp b/storage/src/tests/persistence/persistencetestutils.cpp
index 3812e7b85c9..b0efed07fab 100644
--- a/storage/src/tests/persistence/persistencetestutils.cpp
+++ b/storage/src/tests/persistence/persistencetestutils.cpp
@@ -221,20 +221,20 @@ PersistenceTestUtils::doGetOnDisk(const document::BucketId& bucketId, const docu
}
document::DocumentUpdate::SP
-PersistenceTestUtils::createBodyUpdate(const document::DocumentId& docId, const document::FieldValue& updateValue)
+PersistenceTestUtils::createBodyUpdate(const document::DocumentId& docId, std::unique_ptr<document::FieldValue> updateValue)
{
const DocumentType* docType(getTypeRepo()->getDocumentType("testdoctype1"));
auto update = std::make_shared<document::DocumentUpdate>(*getTypeRepo(), *docType, docId);
- update->addUpdate(document::FieldUpdate(docType->getField("content")).addUpdate(std::make_unique<document::AssignValueUpdate>(updateValue)));
+ update->addUpdate(document::FieldUpdate(docType->getField("content")).addUpdate(std::make_unique<document::AssignValueUpdate>(std::move(updateValue))));
return update;
}
document::DocumentUpdate::SP
-PersistenceTestUtils::createHeaderUpdate(const document::DocumentId& docId, const document::FieldValue& updateValue)
+PersistenceTestUtils::createHeaderUpdate(const document::DocumentId& docId, std::unique_ptr<document::FieldValue> updateValue)
{
const DocumentType* docType(getTypeRepo()->getDocumentType("testdoctype1"));
auto update = std::make_shared<document::DocumentUpdate>(*getTypeRepo(), *docType, docId);
- update->addUpdate(document::FieldUpdate(docType->getField("headerval")).addUpdate(std::make_unique<document::AssignValueUpdate>(updateValue)));
+ update->addUpdate(document::FieldUpdate(docType->getField("headerval")).addUpdate(std::make_unique<document::AssignValueUpdate>(std::move(updateValue))));
return update;
}
diff --git a/storage/src/tests/persistence/persistencetestutils.h b/storage/src/tests/persistence/persistencetestutils.h
index 4bbff9bb2ca..94ae7b9fb53 100644
--- a/storage/src/tests/persistence/persistencetestutils.h
+++ b/storage/src/tests/persistence/persistencetestutils.h
@@ -163,44 +163,23 @@ public:
/**
Returns the document that was inserted.
*/
- document::Document::SP doPutOnDisk(
- uint32_t location,
- spi::Timestamp timestamp,
- uint32_t minSize = 0,
- uint32_t maxSize = 128);
-
- document::Document::SP doPut(
- uint32_t location,
- spi::Timestamp timestamp,
- uint32_t minSize = 0,
- uint32_t maxSize = 128)
- { return doPutOnDisk(location, timestamp, minSize, maxSize); }
+ document::Document::SP doPutOnDisk(uint32_t location, spi::Timestamp timestamp, uint32_t minSize = 0, uint32_t maxSize = 128);
+
+ document::Document::SP doPut(uint32_t location, spi::Timestamp timestamp, uint32_t minSize = 0, uint32_t maxSize = 128) {
+ return doPutOnDisk(location, timestamp, minSize, maxSize);
+ }
/**
Returns the new doccount if document was removed, or -1 if not found.
*/
- bool doRemoveOnDisk(
- const document::BucketId& bid,
- const document::DocumentId& id,
- spi::Timestamp timestamp,
- bool persistRemove);
-
- bool doRemove(
- const document::BucketId& bid,
- const document::DocumentId& id,
- spi::Timestamp timestamp,
- bool persistRemove) {
+ bool doRemoveOnDisk(const document::BucketId& bid, const document::DocumentId& id, spi::Timestamp timestamp, bool persistRemove);
+ bool doRemove(const document::BucketId& bid, const document::DocumentId& id, spi::Timestamp timestamp, bool persistRemove) {
return doRemoveOnDisk(bid, id, timestamp, persistRemove);
}
- bool doUnrevertableRemoveOnDisk(const document::BucketId& bid,
- const document::DocumentId& id,
- spi::Timestamp timestamp);
+ bool doUnrevertableRemoveOnDisk(const document::BucketId& bid, const document::DocumentId& id, spi::Timestamp timestamp);
- bool doUnrevertableRemove(const document::BucketId& bid,
- const document::DocumentId& id,
- spi::Timestamp timestamp)
- {
+ bool doUnrevertableRemove(const document::BucketId& bid, const document::DocumentId& id, spi::Timestamp timestamp) {
return doUnrevertableRemoveOnDisk(bid, id, timestamp);
}
@@ -211,25 +190,19 @@ public:
* @unrevertableRemove If set, instead of adding put, turn put to remove.
* @usedBits Generate bucket to use from docid using this amount of bits.
*/
- void doRemove(const document::DocumentId& id, spi::Timestamp,
- bool unrevertableRemove = false, uint16_t usedBits = 16);
+ void doRemove(const document::DocumentId& id, spi::Timestamp, bool unrevertableRemove = false, uint16_t usedBits = 16);
- spi::GetResult doGetOnDisk(
- const document::BucketId& bucketId,
- const document::DocumentId& docId);
+ spi::GetResult doGetOnDisk(const document::BucketId& bucketId, const document::DocumentId& docId);
- spi::GetResult doGet(
- const document::BucketId& bucketId,
- const document::DocumentId& docId)
- { return doGetOnDisk(bucketId, docId); }
+ spi::GetResult doGet(const document::BucketId& bucketId, const document::DocumentId& docId) {
+ return doGetOnDisk(bucketId, docId);
+ }
- std::shared_ptr<document::DocumentUpdate> createBodyUpdate(
- const document::DocumentId& id,
- const document::FieldValue& updateValue);
+ std::shared_ptr<document::DocumentUpdate>
+ createBodyUpdate(const document::DocumentId& id, std::unique_ptr<document::FieldValue> updateValue);
- std::shared_ptr<document::DocumentUpdate> createHeaderUpdate(
- const document::DocumentId& id,
- const document::FieldValue& updateValue);
+ std::shared_ptr<document::DocumentUpdate>
+ createHeaderUpdate(const document::DocumentId& id, std::unique_ptr<document::FieldValue> updateValue);
uint16_t getDiskFromBucketDatabaseIfUnset(const document::Bucket &);
@@ -241,9 +214,7 @@ public:
*/
void doPut(const document::Document::SP& doc, spi::Timestamp, uint16_t usedBits = 16);
- void doPut(const document::Document::SP& doc,
- document::BucketId bid,
- spi::Timestamp time);
+ void doPut(const document::Document::SP& doc, document::BucketId bid, spi::Timestamp time);
spi::UpdateResult doUpdate(document::BucketId bid,
const std::shared_ptr<document::DocumentUpdate>& update,
diff --git a/storage/src/tests/persistence/testandsettest.cpp b/storage/src/tests/persistence/testandsettest.cpp
index 6e5fc491941..3245bd78a07 100644
--- a/storage/src/tests/persistence/testandsettest.cpp
+++ b/storage/src/tests/persistence/testandsettest.cpp
@@ -18,6 +18,7 @@ using std::shared_ptr;
using storage::spi::test::makeSpiBucket;
using document::test::makeDocumentBucket;
+using document::StringFieldValue;
using namespace ::testing;
namespace storage {
@@ -28,10 +29,10 @@ struct TestAndSetTest : PersistenceTestUtils {
static constexpr int RANDOM_SEED = 1234;
const document::BucketId BUCKET_ID{16, 4};
- const document::StringFieldValue MISMATCHING_HEADER{"Definitely nothing about loud canines"};
- const document::StringFieldValue MATCHING_HEADER{"Some string with woofy dog as a substring"};
- const document::StringFieldValue OLD_CONTENT{"Some old content"};
- const document::StringFieldValue NEW_CONTENT{"Freshly pressed and squeezed content"};
+ const StringFieldValue MISMATCHING_HEADER{"Definitely nothing about loud canines"};
+ const StringFieldValue MATCHING_HEADER{"Some string with woofy dog as a substring"};
+ const StringFieldValue OLD_CONTENT{"Some old content"};
+ const StringFieldValue NEW_CONTENT{"Freshly pressed and squeezed content"};
const document::Bucket BUCKET = makeDocumentBucket(BUCKET_ID);
unique_ptr<PersistenceHandler> persistenceHandler;
@@ -159,7 +160,7 @@ std::shared_ptr<api::UpdateCommand>
TestAndSetTest::conditional_update_test(bool createIfMissing, api::Timestamp updateTimestamp)
{
auto docUpdate = std::make_shared<document::DocumentUpdate>(_env->_testDocMan.getTypeRepo(), testDoc->getType(), testDocId);
- docUpdate->addUpdate(document::FieldUpdate(testDoc->getField("content")).addUpdate(std::make_unique<document::AssignValueUpdate>(NEW_CONTENT)));
+ docUpdate->addUpdate(document::FieldUpdate(testDoc->getField("content")).addUpdate(std::make_unique<document::AssignValueUpdate>(std::make_unique<StringFieldValue>(NEW_CONTENT))));
docUpdate->setCreateIfNonExistent(createIfMissing);
auto updateUp = std::make_unique<api::UpdateCommand>(BUCKET, docUpdate, updateTimestamp);