summaryrefslogtreecommitdiffstats
path: root/storage/src/tests
diff options
context:
space:
mode:
authorTor Brede Vekterli <vekterli@yahooinc.com>2022-01-19 15:01:25 +0100
committerGitHub <noreply@github.com>2022-01-19 15:01:25 +0100
commit4f9b94048fac3b20f39acc1601e5cae8bc791e84 (patch)
tree0986ef2535cac684c2c0e64b1dfdc94f8d8d5efa /storage/src/tests
parentc1ef6231340552c83282dd300ff68c00245eea33 (diff)
parentefe929581809e5a1e4db895e08e22ad07ae10757 (diff)
Merge pull request #20875 from vespa-engine/vekterli/disallow-none-fieldset-for-visitors
Expicitly reject "none"-fieldset for external visitors
Diffstat (limited to 'storage/src/tests')
-rw-r--r--storage/src/tests/distributor/visitoroperationtest.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/storage/src/tests/distributor/visitoroperationtest.cpp b/storage/src/tests/distributor/visitoroperationtest.cpp
index ea99186a434..6c597b620dd 100644
--- a/storage/src/tests/distributor/visitoroperationtest.cpp
+++ b/storage/src/tests/distributor/visitoroperationtest.cpp
@@ -252,6 +252,20 @@ TEST_F(VisitorOperationTest, no_bucket) {
runEmptyVisitor(msg));
}
+TEST_F(VisitorOperationTest, none_fieldset_is_rejected) {
+ enable_cluster_state("distributor:1 storage:1");
+ auto msg = std::make_shared<api::CreateVisitorCommand>(
+ makeBucketSpace(), "dumpvisitor", "instance", "");
+ msg->addBucketToBeVisited(document::BucketId(16, 1));
+ msg->addBucketToBeVisited(nullId);
+ msg->setFieldSet("[none]");
+
+ EXPECT_EQ("CreateVisitorReply(last=BucketId(0x0000000000000000)) "
+ "ReturnCode(ILLEGAL_PARAMETERS, Field set '[none]' is not supported "
+ "for external visitor operations. Use '[id]' to return documents with no fields set.)",
+ runEmptyVisitor(msg));
+}
+
TEST_F(VisitorOperationTest, only_super_bucket_and_progress_allowed) {
enable_cluster_state("distributor:1 storage:1");