It seems pattern matching is broken on remote servers. Is this an expected discrepency?
The following code works locally (ie. with a datalevin path of "./data" but not remotely (ie. with a datalevin path of a remote server dtlv://...):
Locally (with a {:db/id 1 :dataset/name "foo"} entity)
(d/q
'[:find ?e
:in $
:where [?e :dataset/name _]]
@conn)
;; => #{[1]}
(d/q
'[:find ?e
:in $
:where [?e :dataset/name "foo"]]
@conn)
;; => #{[1]}
Remote:
(d/q
'[:find ?e
:in $
:where [?e :dataset/name _]]
@conn)
;; => #{}
(d/q
'[:find ?e
:in $
:where [?e :dataset/name "foo"]]
@conn)
;; => #{[1]})I am taking a look. Thanks for reporting.
It would be better you can produce more complete repro, my naive attempt to reproduce does not pan out.
also, it would be nice to include version, platform, etc
it's v0.10.7 on Mac locally, and v0.10.7 on linux remotely
I won't have time to create a repro though so if it doesn't show up then it might be difficult to nail down
then you can try the master branch to see if it works for you. It may have been fixed, as we did fix a stale meta data bug on the server.