Hi Nuria,
Am 18.02.2013 12:10, schrieb Nuria Garcia:
Compiling:
- rewriting where clause to predicate(s)
- pre-evaluating db:open("Authors")
- simplifying descendant-or-self step(s)
- pre-evaluating db:open("Books")
- simplifying descendant-or-self step(s)
- simplifying descendant-or-self step(s)
- swapping operands: descendant::*:book/*:idauthor = $Author/descendant::author/idauthor
- simplifying descendant-or-self step(s)
- simplifying descendant-or-self step(s)
It seems that the predicate into which the `where` clause is rewritten is not converted into an index access. Nothing in the query should cause this, so the problem seems to be (one of) the databases.
Are you sure that the text index of the "Books" database is up-to-date? You can check that in the GUI under "Database -> Open & Manage..." or with the command `INFO INDEX TEXT` [1]. If it is outdated, you have to update it via "Database -> Properties... -> Optimize..." in the GUI or the `OPTIMIZE` command [2]. You can also recreate the database with incremental updates activated via the `OPDINDEX` option [3], but this only affects the text and attribute indices.
Hope this helps, cheers, Leo
[1] http://docs.basex.org/wiki/Commands#INFO_INDEX [2] http://docs.basex.org/wiki/Commands#OPTIMIZE [3] http://docs.basex.org/wiki/Options#UPDINDEX