diff --git a/arangod/Aql/ExecutionBlock.cpp b/arangod/Aql/ExecutionBlock.cpp index 9bc447ca6f..059a7aaee6 100644 --- a/arangod/Aql/ExecutionBlock.cpp +++ b/arangod/Aql/ExecutionBlock.cpp @@ -39,6 +39,16 @@ int ExecutionBlock::bind (std::map* params) { return TRI_ERROR_NO_ERROR; } +bool ExecutionBlock::hasMore () { + // FIXME: do this correctly! + return ! _done; +} + +bool ExecutionBlock::skip (size_t number) { + return true; +} + + //////////////////////////////////////////////////////////////////////////////// /// @brief functionality to walk an execution block recursively //////////////////////////////////////////////////////////////////////////////// @@ -57,7 +67,7 @@ void ExecutionBlock::walk (WalkerWorker* worker) { (*it)->walk(worker); } // Now handle a subquery: - if (_exePlan->getType() == ExecutionNode::SUBQUERY) { + if (_exeNode->getType() == ExecutionNode::SUBQUERY) { // auto p = static_cast(this); if (worker->enterSubquery(this, nullptr)) { ; // p->_subquery // p->_subquery->walk(worker); diff --git a/arangod/Aql/ExecutionBlock.h b/arangod/Aql/ExecutionBlock.h index acad0c4549..1a9002bd3e 100644 --- a/arangod/Aql/ExecutionBlock.h +++ b/arangod/Aql/ExecutionBlock.h @@ -51,7 +51,7 @@ namespace triagens { class ExecutionBlock { public: ExecutionBlock (ExecutionNode const* ep) - : _exePlan(ep), _done(false), _depth(0), _varOverview(nullptr) { + : _exeNode(ep), _done(false), _depth(0), _varOverview(nullptr) { } virtual ~ExecutionBlock (); @@ -448,7 +448,9 @@ namespace triagens { } } - bool skip (int number); + virtual bool hasMore (); + + virtual bool skip (size_t number); virtual int64_t count () { return 0; @@ -459,7 +461,7 @@ namespace triagens { } ExecutionNode const* getPlanNode () { - return _exePlan; + return _exeNode; } //////////////////////////////////////////////////////////////////////////////// @@ -468,7 +470,7 @@ namespace triagens { protected: - ExecutionNode const* _exePlan; + ExecutionNode const* _exeNode; //////////////////////////////////////////////////////////////////////////////// /// @brief our dependent nodes @@ -629,7 +631,7 @@ namespace triagens { return res; } - auto p = reinterpret_cast(_exePlan); + auto p = reinterpret_cast(_exeNode); V8ReadTransaction trx(p->_vocbase, p->_collname);