Skip to content
This repository has been archived by the owner on Sep 12, 2018. It is now read-only.

[query] Exploit AVET and VAET indexes in query engine #757

Open
ncalexan opened this issue Jun 22, 2018 · 0 comments
Open

[query] Exploit AVET and VAET indexes in query engine #757

ncalexan opened this issue Jun 22, 2018 · 0 comments
Labels
A-query Issues or requests for query capabilities.

Comments

@ncalexan
Copy link
Member

ncalexan commented Jun 22, 2018

The SQLite schema defining the datoms table (and the indexes upon it) specifies the AVET and VAET indexes as partial: see https://github.com/mozilla/mentat/blob/master/db/src/db.rs#L180-L181 and https://github.com/mozilla/mentat/blob/master/db/src/db.rs#L183-185. The only way the SQLite query engine can exploit those indexes is if the produced SQL constrains the query, in some way to have the relevant index_{avet,vaet} columns set -- and we don't do that right now.

There's a similar but technically distinct case that we do support. The :db/fulltext true case is managed as index_fulltext and as a separate table. If we wanted to, we could manage the partial indexes as separate tables manually. It's not clear what is the more desirable SQLite schema.

@ncalexan ncalexan added the A-query Issues or requests for query capabilities. label Jun 22, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
A-query Issues or requests for query capabilities.
Projects
None yet
Development

No branches or pull requests

1 participant