We accidentally ran into this error when sending a map that had a Datomic DB inside of it to a transaction function (but it’s the same with atoms, etc.). It’s logical that this wouldn’t work (the object would have to be serialized and put on the wire etc.), but the error message is not the greatest. It lead to some head-scratching.
Could this be asserted ahead of time and a clearer error issued?
Execution error at com.cognitect.transit.impl.AbstractEmitter/marshal (AbstractEmitter.java:194). Not supported: class clojure.lang.Atom