Known limitations for AQL queries

The following limitations are known for AQL queries:

  • An AQL query cannot use more than 1000 result registers. One result register is needed for every named query variable and for internal/anonymous query variables.
  • An AQL query cannot use more than 2048 collections/shards.
  • It is not possible to use a collection in a read operation after it was used for a write operation in the same AQL query.
  • In the cluster, all collections that are accessed dynamically must be stated in the query’s initial WITH statement. These are either accesses via the DOCUMENT() function or traversals working with collection sets (instead of named graphs).
  • Subqueries that are used inside expressions are pulled out of these expressions and executed beforehand. That means that subqueries do not participate in lazy evaluation of operands, for example in the ternary operator.