1
0
Fork 0

mark AQL functions FULLTEXT, NEAR, WITHIN, WITHIN_RECTANGLE as cacheable (#9771)

This commit is contained in:
Jan 2019-08-21 18:10:55 +02:00 committed by GitHub
parent 2c47fd9943
commit ba02dc4b4d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 8 deletions

View File

@ -443,14 +443,13 @@ void AqlFunctionFeature::addMiscFunctions() {
add({"WARN", ".,.", Function::makeFlags(FF::CanRunOnDBServer), &Functions::Warn}); // not deterministic and not cacheable
// NEAR, WITHIN, WITHIN_RECTANGLE and FULLTEXT are replaced by the AQL
// optimizer with collection-based subqueries they are all not marked as
// non-deterministic and non-cacheable here as they refer to documents
// note further that all of these function call will be replaced by equivalent
// subqueries by the optimizer
add({"NEAR", ".h,.,.|.,.", Function::makeFlags(), &Functions::NotImplemented});
add({"WITHIN", ".h,.,.,.|.", Function::makeFlags(), &Functions::NotImplemented});
add({"WITHIN_RECTANGLE", "h.,.,.,.,.", Function::makeFlags(), &Functions::NotImplemented});
add({"FULLTEXT", ".h,.,.|.", Function::makeFlags(), &Functions::NotImplemented});
// optimizer with collection-/index-based subqueries. they are all
// marked as deterministic and cacheable here as they are just
// placeholders for collection/index accesses nowaways.
add({"NEAR", ".h,.,.|.,.", Function::makeFlags(FF::Cacheable), &Functions::NotImplemented});
add({"WITHIN", ".h,.,.,.|.", Function::makeFlags(FF::Cacheable), &Functions::NotImplemented});
add({"WITHIN_RECTANGLE", "h.,.,.,.,.", Function::makeFlags(FF::Cacheable), &Functions::NotImplemented});
add({"FULLTEXT", ".h,.,.|.", Function::makeFlags(FF::Cacheable), &Functions::NotImplemented});
}
} // namespace aql