mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +01:00
force SQLite to choose particular index for attribute search since it sometimes led to very inefficient query plans
This commit is contained in:
parent
79e7762c72
commit
571772069a
@ -31,7 +31,8 @@ module.exports = function(filters, selectedColumns = 'notes.*') {
|
||||
// can match notes because @tag can be both "shopping" and "christmas"
|
||||
const alias = "attr_" + property + "_" + attrFilterId++;
|
||||
|
||||
joins[alias] = `LEFT JOIN attributes AS ${alias} `
|
||||
// forcing to use particular index since SQLite query planner would often choose something pretty bad
|
||||
joins[alias] = `LEFT JOIN attributes AS ${alias} INDEXED BY IDX_attributes_noteId_index `
|
||||
+ `ON ${alias}.noteId = notes.noteId `
|
||||
+ `AND ${alias}.name = '${property}' AND ${alias}.isDeleted = 0`;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user