I think, I have a bug in the REPL in situations where functions are used in queries.
(d/q '[:find ?name
:where
[?e :person/name ?name]
[(employee? ?name)]]
db)
It works. But when I change the implementation of employee? , recompile it and execute the same query, Datalevin still uses the old function. Datalevin must have cached the results and incorrectly deliver them even if the function changed. Could this be? Is this a known bug?Maybe reopening it?
We do have test for this use case, where we with-redefs functions to see if the newly defined functions were used in query. And it does. So maybe it is about the REPL not updating the function?
Note the custom functions need to be qualified.