summaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorTor Brede Vekterli <vekterli@yahoo-inc.com>2017-10-16 15:40:50 +0000
committerTor Brede Vekterli <vekterli@yahoo-inc.com>2017-11-14 13:39:49 +0000
commit5519e892e22c7f6fd8da068ff7ab876ee3161faf (patch)
tree88e5b2be5d8f265317b2a03b6b39e2395ce628bc /storage
parent69fcc4a227ffb93c5a825077421d462b1427ba24 (diff)
Use new C++ document selection parser
Based on Flex/Bison and replaces old Spirit.Classic parser. New parser is pure and does not require any locking, unlike the previous implementation. This also removes parsing of the deprecated searchcolumn feature. Adds build-time dependencies on Flex and Bison.
Diffstat (limited to 'storage')
-rw-r--r--storage/src/tests/distributor/twophaseupdateoperationtest.cpp8
-rw-r--r--storage/src/tests/distributor/visitoroperationtest.cpp3
-rw-r--r--storage/src/vespa/storage/persistence/fieldvisitor.h1
3 files changed, 6 insertions, 6 deletions
diff --git a/storage/src/tests/distributor/twophaseupdateoperationtest.cpp b/storage/src/tests/distributor/twophaseupdateoperationtest.cpp
index a7418629f81..16d317551e0 100644
--- a/storage/src/tests/distributor/twophaseupdateoperationtest.cpp
+++ b/storage/src/tests/distributor/twophaseupdateoperationtest.cpp
@@ -1070,9 +1070,8 @@ TwoPhaseUpdateOperationTest::testSafePathConditionParseFailureFailsWithIllegalPa
"timestamp 0, timestamp of updated doc: 0) "
"ReturnCode(ILLEGAL_PARAMETERS, "
"Failed to parse test and set condition: "
- "Unexpected token at position 16 "
- "('==fran...c') in query 'testdoctype1."
- "san==fran...cisco',)"s,
+ "syntax error, unexpected . at column 24 when "
+ "parsing selection 'testdoctype1.san==fran...cisco')"s,
sender.getLastReply(true));
}
@@ -1096,7 +1095,8 @@ TwoPhaseUpdateOperationTest::testSafePathConditonUnknownDocTypeFailsWithIllegalP
"timestamp 0, timestamp of updated doc: 0) "
"ReturnCode(ILLEGAL_PARAMETERS, "
"Failed to parse test and set condition: "
- "Document type langbein not found)"s,
+ "Document type 'langbein' not found at column 1 "
+ "when parsing selection 'langbein.headerval=1234')"s,
sender.getLastReply(true));
}
diff --git a/storage/src/tests/distributor/visitoroperationtest.cpp b/storage/src/tests/distributor/visitoroperationtest.cpp
index 26f4fb3e784..972ccf41bfe 100644
--- a/storage/src/tests/distributor/visitoroperationtest.cpp
+++ b/storage/src/tests/distributor/visitoroperationtest.cpp
@@ -454,7 +454,8 @@ VisitorOperationTest::testInvalidOrderDocSelection()
CPPUNIT_ASSERT_EQUAL(
std::string("CreateVisitorReply(last=BucketId(0x0000000000000000)) "
"ReturnCode(ILLEGAL_PARAMETERS, Failed to parse document select "
- "string 'id.order(10,3)=1 and dummy': Document type dummy not found)"),
+ "string 'id.order(10,3)=1 and dummy': Document type 'dummy' not "
+ "found at column 22 when parsing selection 'id.order(10,3)=1 and dummy')"),
runEmptyVisitor(
createVisitorCommand("invalidOrderDoc",
id,
diff --git a/storage/src/vespa/storage/persistence/fieldvisitor.h b/storage/src/vespa/storage/persistence/fieldvisitor.h
index 96b73ca779b..4b47c68e33b 100644
--- a/storage/src/vespa/storage/persistence/fieldvisitor.h
+++ b/storage/src/vespa/storage/persistence/fieldvisitor.h
@@ -42,7 +42,6 @@ public:
void visitArithmeticValueNode(const document::select::ArithmeticValueNode &) override {}
void visitFunctionValueNode(const document::select::FunctionValueNode &) override {}
void visitIdValueNode(const document::select::IdValueNode &) override {}
- void visitSearchColumnValueNode(const document::select::SearchColumnValueNode &) override {}
void visitFloatValueNode(const document::select::FloatValueNode &) override {}
void visitVariableValueNode(const document::select::VariableValueNode &) override {}
void visitIntegerValueNode(const document::select::IntegerValueNode &) override {}