Monday, June 1, 2020

Datomic Peer? or Client?

Photo by Alex Powell from Pexels
I just stated a new job at Taxbit where I am working in Clojure and Datomic full-time for the first time.  I have been dabbling on personal projects for a number of years now but this is my first time being paid to work in this environment.





Working to update datomic-schema, the client v. peer issue became a real problem.

onyx-datomic has a way to determine which client is being used

Differences between :find

I have a syntax question. This is working:
(d/q '[:find (pull ?e [*])
       :where [?e :team/id]] db)
This is not, and is throwing Exception
(d/q '[:find [(pull ?e [*]) ...]
       :where [?e :team/id]] db)
Exception
ExceptionInfo Only find-rel elements are allowed in client find-spec
I’m using datomic-pro-0.9.5661
brett14:04:04
All I changed is the binding form. I see it in both links you sent.
marshall14:04:01
The client only supports the find-rel form. You can use the other binding forms for inputs, but not in the find specification

Reference