浏览代码

fix: query searching for two or more properties is extremely slow

close #8947
Tienson Qin 2 年之前
父节点
当前提交
e0f519b7ab
共有 1 个文件被更改,包括 4 次插入7 次删除
  1. 4 7
      deps/db/src/logseq/db/rules.cljc

+ 4 - 7
deps/db/src/logseq/db/rules.cljc

@@ -131,13 +131,10 @@
      [?b :block/properties ?prop]
      [(missing? $ ?b :block/name)]
      [(get ?prop ?key) ?v]
-     (or-join [?v]
-              [(= ?v ?val)]
-              [(contains? ?v ?val)]
-              ;; For integer pages that aren't strings
-              (and
-               [(str ?val) ?str-val]
-               [(contains? ?v ?str-val)]))]
+     [(str ?val) ?str-val]
+     (or [(= ?v ?val)]
+         [(contains? ?v ?val)]
+         [(contains? ?v ?str-val)])]
 
    :page-ref
    '[(page-ref ?b ?page-name)