mirror of https://gitee.com/bigwinds/arangodb
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
This commit is contained in:
commit
7fa0fc7d33
|
@ -445,7 +445,8 @@ function multiCollectionGraphSuite () {
|
||||||
},
|
},
|
||||||
|
|
||||||
testNoBindParameterSingleForFilter: function () {
|
testNoBindParameterSingleForFilter: function () {
|
||||||
var query = "FOR s IN " + vn + " SORT s FOR x, e, p IN OUTBOUND s " + en + " FILTER p.vertices[1]._key == s._key SORT x RETURN x";
|
var query = "FOR s IN " + vn + " SORT s FOR x, e, p IN OUTBOUND s " +
|
||||||
|
en + " FILTER p.vertices[1]._key == s._key SORT x RETURN x";
|
||||||
var result = db._query(query).toArray();
|
var result = db._query(query).toArray();
|
||||||
assertEqual(result.length, 0);
|
assertEqual(result.length, 0);
|
||||||
var plans = AQL_EXPLAIN(query, { }, opts).plans;
|
var plans = AQL_EXPLAIN(query, { }, opts).plans;
|
||||||
|
@ -455,8 +456,9 @@ function multiCollectionGraphSuite () {
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
testNoBindParameterSingleForFilter: function () {
|
testNoBindParameterV8Function: function () {
|
||||||
var query = "FOR s IN " + vn + " SORT s FOR x, e, p IN OUTBOUND s " + en + " FILTER p.vertices[1]._key == NOOPT(V8(RAND())) SORT x RETURN x";
|
var query = "FOR s IN " + vn + " SORT s FOR x, e, p IN OUTBOUND s " +
|
||||||
|
en + " FILTER p.vertices[1]._key == NOOPT(V8(RAND())) SORT x RETURN x";
|
||||||
var result = db._query(query).toArray();
|
var result = db._query(query).toArray();
|
||||||
assertEqual(result.length, 0);
|
assertEqual(result.length, 0);
|
||||||
var plans = AQL_EXPLAIN(query, { }, opts).plans;
|
var plans = AQL_EXPLAIN(query, { }, opts).plans;
|
||||||
|
@ -785,16 +787,11 @@ function multiEdgeCollectionGraphSuite () {
|
||||||
|
|
||||||
var g;
|
var g;
|
||||||
const gn = "UnitTestGraph";
|
const gn = "UnitTestGraph";
|
||||||
const vn2 = "UnitTestVertexCollection2";
|
|
||||||
const en2 = "UnitTestEdgeCollection2";
|
const en2 = "UnitTestEdgeCollection2";
|
||||||
var ruleName = "merge-traversal-filter";
|
var ruleName = "merge-traversal-filter";
|
||||||
var paramEnabled = { optimizer: { rules: [ "-all", "+" + ruleName ] } };
|
var paramEnabled = { optimizer: { rules: [ "-all", "+" + ruleName ] } };
|
||||||
var opts = _.clone(paramEnabled);
|
var opts = _.clone(paramEnabled);
|
||||||
|
|
||||||
// We always use the same query, the result should be identical.
|
|
||||||
var validateResult = function (result) {
|
|
||||||
};
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|
||||||
setUp: function() {
|
setUp: function() {
|
||||||
|
@ -809,7 +806,7 @@ function multiEdgeCollectionGraphSuite () {
|
||||||
|
|
||||||
vc = db._create(vn, {numberOfShards: 4});
|
vc = db._create(vn, {numberOfShards: 4});
|
||||||
ec = db._createEdgeCollection(en, {numberOfShards: 4});
|
ec = db._createEdgeCollection(en, {numberOfShards: 4});
|
||||||
ec2 = db._createEdgeCollection(en2, {numberOfShards: 4});
|
var ec2 = db._createEdgeCollection(en2, {numberOfShards: 4});
|
||||||
|
|
||||||
g = gm._create(gn, [gm._relation(en, vn, vn), gm._relation(en2, vn, vn)]);
|
g = gm._create(gn, [gm._relation(en, vn, vn), gm._relation(en2, vn, vn)]);
|
||||||
|
|
||||||
|
@ -835,7 +832,7 @@ function multiEdgeCollectionGraphSuite () {
|
||||||
|
|
||||||
testTwoVertexCollectionsInOutbound: function () {
|
testTwoVertexCollectionsInOutbound: function () {
|
||||||
/* this test is intended to trigger the clone functionality. */
|
/* this test is intended to trigger the clone functionality. */
|
||||||
expectResult = ['B', 'C', 'D', 'E'];
|
var expectResult = ['B', 'C', 'D', 'E'];
|
||||||
var query = "FOR x IN ANY @startId GRAPH @graph SORT x._id RETURN x._key";
|
var query = "FOR x IN ANY @startId GRAPH @graph SORT x._id RETURN x._key";
|
||||||
var bindVars = {
|
var bindVars = {
|
||||||
graph: gn,
|
graph: gn,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*jshint globalstrict:false, strict:false, maxlen: 500 */
|
/*jshint globalstrict:false, strict:false, maxlen: 500 */
|
||||||
/*global assertEqual, assertTrue, assertNotEqual, AQL_EXPLAIN, AQL_EXECUTE */
|
/*global assertEqual, assertTrue, assertNotEqual, AQL_EXPLAIN, AQL_EXECUTE, AQL_EXECUTEJSON */
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief tests for optimizer rules
|
/// @brief tests for optimizer rules
|
||||||
|
@ -43,7 +43,6 @@ function optimizerRuleTestSuite () {
|
||||||
var paramEnabled = { optimizer: { rules: [ "-all", "+" + ruleName ] } };
|
var paramEnabled = { optimizer: { rules: [ "-all", "+" + ruleName ] } };
|
||||||
var paramDisabled = { optimizer: { rules: [ "+all", "-" + ruleName ] } };
|
var paramDisabled = { optimizer: { rules: [ "+all", "-" + ruleName ] } };
|
||||||
var graphName = "myUnittestGraph";
|
var graphName = "myUnittestGraph";
|
||||||
var ruleName = "merge-traversal-filter";
|
|
||||||
var opts = _.clone(paramEnabled);
|
var opts = _.clone(paramEnabled);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
@ -57,7 +56,7 @@ function optimizerRuleTestSuite () {
|
||||||
opts.allPlans = true;
|
opts.allPlans = true;
|
||||||
opts.verbosePlans = true;
|
opts.verbosePlans = true;
|
||||||
|
|
||||||
try { graph_module._drop(graphName, true); } catch (x) {};
|
try { graph_module._drop(graphName, true); } catch (x) {}
|
||||||
|
|
||||||
var graph = graph_module._create(graphName, [
|
var graph = graph_module._create(graphName, [
|
||||||
graph_module._relation("edges", "circles", ["circles"])]);
|
graph_module._relation("edges", "circles", ["circles"])]);
|
||||||
|
|
Loading…
Reference in New Issue