mirror of https://gitee.com/bigwinds/arangodb
Fixed further AQL optimizer tests. Still some issues in new IndexNode
This commit is contained in:
parent
9d7024b28d
commit
31cf31f7b7
|
@ -305,6 +305,7 @@ function optimizerIndexesInOrTestSuite () {
|
|||
return node.type;
|
||||
});
|
||||
|
||||
require("org/arangodb/aql/explainer").explain(query[0]);
|
||||
// ensure the index is used
|
||||
assertNotEqual(-1, nodeTypes.indexOf("IndexNode"), query);
|
||||
|
||||
|
@ -341,6 +342,7 @@ function optimizerIndexesInOrTestSuite () {
|
|||
return node.type;
|
||||
});
|
||||
|
||||
require("org/arangodb/aql/explainer").explain(query[0]);
|
||||
// ensure the index is used
|
||||
assertNotEqual(-1, nodeTypes.indexOf("IndexNode"), query);
|
||||
|
||||
|
@ -516,6 +518,7 @@ function optimizerIndexesInOrTestSuite () {
|
|||
return node.type;
|
||||
});
|
||||
|
||||
require("org/arangodb/aql/explainer").explain(query[0]);
|
||||
// ensure an index is used
|
||||
assertNotEqual(-1, nodeTypes.indexOf("IndexNode"), query);
|
||||
|
||||
|
@ -546,6 +549,7 @@ function optimizerIndexesInOrTestSuite () {
|
|||
return node.type;
|
||||
});
|
||||
|
||||
require("org/arangodb/aql/explainer").explain(query[0]);
|
||||
// ensure an index is used
|
||||
assertNotEqual(-1, nodeTypes.indexOf("IndexNode"), query);
|
||||
|
||||
|
@ -659,6 +663,7 @@ function optimizerIndexesInOrTestSuite () {
|
|||
var results = AQL_EXECUTE(query[0]);
|
||||
assertEqual(query[1].length, results.json.length, query);
|
||||
for (var i = 0; i < results.json.length; ++i) {
|
||||
require("internal").print(query[1][i]);
|
||||
assertEqual(query[1][i], results.json[i], query);
|
||||
}
|
||||
assertTrue(results.stats.scannedIndex > 0);
|
||||
|
|
|
@ -511,9 +511,10 @@ function optimizerIndexesSortTestSuite () {
|
|||
var plan = AQL_EXPLAIN(query).plan;
|
||||
var nodeTypes = plan.nodes.map(function(node) {
|
||||
if (node.type === "IndexNode") {
|
||||
assertEqual(idx.id.replace(/^.+\//g, ''), node.index.id);
|
||||
assertEqual("skiplist", node.index.type);
|
||||
assertTrue(node.index.sparse);
|
||||
assertEqual(node.indexes.length, 1);
|
||||
assertEqual(idx.id.replace(/^.+\//g, ''), node.indexes[0].id);
|
||||
assertEqual("skiplist", node.indexes[0].type);
|
||||
assertTrue(node.indexes[0].sparse);
|
||||
}
|
||||
return node.type;
|
||||
});
|
||||
|
@ -575,10 +576,10 @@ function optimizerIndexesSortTestSuite () {
|
|||
var plan = AQL_EXPLAIN(query).plan;
|
||||
var nodeTypes = plan.nodes.map(function(node) {
|
||||
if (node.type === "IndexNode") {
|
||||
assertNotEqual(idx1.id.replace(/^.+\//g, ''), node.index.id);
|
||||
assertEqual(idx2.id.replace(/^.+\//g, ''), node.index.id);
|
||||
assertEqual("skiplist", node.index.type);
|
||||
assertFalse(node.index.sparse);
|
||||
assertNotEqual(idx1.id.replace(/^.+\//g, ''), node.indexes[0].id);
|
||||
assertEqual(idx2.id.replace(/^.+\//g, ''), node.indexes[0].id);
|
||||
assertEqual("skiplist", node.indexes[0].type);
|
||||
assertFalse(node.indexes[0].sparse);
|
||||
}
|
||||
return node.type;
|
||||
});
|
||||
|
@ -610,9 +611,10 @@ function optimizerIndexesSortTestSuite () {
|
|||
var plan = AQL_EXPLAIN(query).plan;
|
||||
var nodeTypes = plan.nodes.map(function(node) {
|
||||
if (node.type === "IndexNode") {
|
||||
assertEqual(idx.id.replace(/^.+\//g, ''), node.index.id);
|
||||
assertEqual("skiplist", node.index.type);
|
||||
assertTrue(node.index.sparse);
|
||||
assertEqual(node.indexes.length, 1);
|
||||
assertEqual(idx.id.replace(/^.+\//g, ''), node.indexes[0].id);
|
||||
assertEqual("skiplist", node.indexes[0].type);
|
||||
assertTrue(node.indexes[0].sparse);
|
||||
}
|
||||
return node.type;
|
||||
});
|
||||
|
@ -673,6 +675,7 @@ function optimizerIndexesSortTestSuite () {
|
|||
return node.type;
|
||||
});
|
||||
|
||||
require("org/arangodb/aql/explainer").explain(query);
|
||||
// no index is used for sorting
|
||||
assertEqual(-1, nodeTypes.indexOf("IndexNode"), query);
|
||||
assertNotEqual(-1, nodeTypes.indexOf("SortNode"), query);
|
||||
|
|
Loading…
Reference in New Issue