Fork me on GitHub
#datomic
<
2021-09-09
>
az19:09:04

Hi all, working with in memory com.datomic/datomic-free "0.9.5697" - Running

(d/q '[:find ?e
         :keys id
         :where [?e :person/name "Bob"]]
       (d/db conn))
Getting error
Execution error (IllegalArgumentException) at datomic.query/validate-query (query.clj:316).
Argument :keys in :find is not a variable
Any ideas? Are keys not available in the mem db?

2
Joe Lane19:09:13

@U0AJQJCQ1 :keys is not available in free, however it is with https://docs.datomic.com/cloud/dev-local.html , which is available free of charge.

enn21:09:20

Will excising an entity also excise component entities?

Fredrik21:09:02

When the target of excision is an entity, and a datom to be excised is a reference whose attribute has :db/isComponent true, then the component entity (and all of its attributes) will be excised recursively.
https://docs.datomic.com/on-prem/reference/excision.html#excise-specific-entities

Fredrik21:09:26

Also,

When excising an entire entity, all component entities are also excised, as are all inbound references to the excised entity.
So the answer is yes.

enn21:09:50

perfect, thank you, I missed that section

Fredrik21:09:37

You're welcome 🙂 I was wondering the same at some point, and knew I had read this somewhere before.