You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When performing a db-diff using the latest datomic release I discovered that the db-diff function doesn't complete as expected due to an exception.
CompilerException java.lang.IllegalArgumentException: :db.error/not-a-keyword Cannot interpret as a keyword: Documentation string for an entity., no leading :, compiling:(/home/bjc/Workspace/wonderdrug/maestro/src/clj/maestro/datomic/migrations.clj:14:13)
This looks to be because the pull rule used by get-attributes defines a :db/doc [:db/ident].
When performing a db-diff using the latest datomic release I discovered that the
db-diff
function doesn't complete as expected due to an exception.CompilerException java.lang.IllegalArgumentException: :db.error/not-a-keyword Cannot interpret as a keyword: Documentation string for an entity., no leading :, compiling:(/home/bjc/Workspace/wonderdrug/maestro/src/clj/maestro/datomic/migrations.clj:14:13)
This looks to be because the pull rule used by
get-attributes
defines a:db/doc [:db/ident]
.This used to simply be ignored but as per more recent releases (see https://groups.google.com/forum/#!topic/datomic/F9-9KkKTSiE) this behavior has changed and causes an exception.
Changing the pull shape found at https://github.com/kibu-australia/rawat/blob/master/src/rawat/core.cljc#L213 to:
[:db/ident :db/unique :db/index :db/fulltext :db/isComponent :db/noHistory {:db/valueType [:db/ident] :db/cardinality [:db/ident]} :db/doc]
looks to resolve the problem (although I fear perhaps cause regressions in older datomic instances).
The text was updated successfully, but these errors were encountered: