This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-10-24
Channels
- # aleph (1)
- # babashka (2)
- # beginners (25)
- # calva (5)
- # cider (8)
- # cljdoc (4)
- # clojure (81)
- # clojure-europe (41)
- # clojure-spec (11)
- # clojurescript (7)
- # conjure (1)
- # data-science (1)
- # datomic (25)
- # defnpodcast (3)
- # events (2)
- # figwheel-main (8)
- # fulcro (5)
- # helix (4)
- # hugsql (1)
- # java (2)
- # off-topic (35)
- # onyx (18)
- # pathom (8)
- # rdf (5)
- # re-frame (9)
- # reagent (3)
- # reitit (1)
- # shadow-cljs (39)
- # tools-deps (53)
- # xtdb (23)
datomic-pro-1.0.6202 throws ActiveMQInternalErrorException
when I try to create or connect to a Datomic DB:
clj
Clojure 1.10.1
user=> (require '[datomic.api :as d])
nil
user=> (d/connect "datomic:)
Execution error at datomic.peer/get-connection$fn (peer.clj:661).
Could not find newdb in catalog
user=> (d/create-database "datomic:)
Execution error (ActiveMQInternalErrorException) at org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl/sendBlocking (ChannelImpl.java:404).
null
I’ve tried with both Oracle JDK 15 and OpenJDK 15.I see you are connecting to the DB and then attempting to create the DB? Did this DB already exist or was it the product of a backup/restore? Did you recently upgrade to the new version of Datomic-pro? Or are you saying that this worked before you moved to JDK15? If so, what version were you previously running where this worked? I am going to go test with JDK 15 right now.
Full story here: https://stackoverflow.com/q/64512606/198927
I've re-created the behavior and logged an anomaly for us to investigate further. In general, I am updating our docs to indicate that Datomic on-prem is tested to run against LTS versions of Java (8 and 11). @U051SPP9Z I agree with your assertion elsewhere that we should have a feature to detect when not on an LTS java version and throw a warning to move to one. I am looking at options for such a feature and logging a feature request for further investigation.
Does anybody know if there's a relation between db's T value and the txInstant of an entity?
Essentially I have a database and if I do (:t db)
I get 7 as value. On the other hand, if I look for a txInstant for an entity via (def query '[:find ?tx :where [?e :person/id _ ?tx]])
I get very long number instead
What I am trying to do is "Given a certain entity ID, what was the t
that has introduced/updated it?
For anybody interested: https://ask.datomic.com/index.php/457/relation-between-t-and-db-txinstant
Forgive me for not answering on ask, but this blog may interest you: https://observablehq.com/@favila/datomic-internals
Thanks @UDF11HLKC
You can call datomic.api
functions in your queries. Or you can at least on client + peer server
@UDF11HLKC Ah ok so maybe it's only executed on the peer?
I'm a bit confused, I can't find such namespace anywhere and it does not work when doing it in a query (d/q '[:find ?e ?tx ?t :where [?e :person/id _ ?tx] [((t->tx ?tx)) ?t]] db)
which makes sense, since it even the docs says that the functions executed must be in the class path.
This would be a great question to ask on the new forum https://ask.datomic.com
Just opened this week!
For anybody interested: https://ask.datomic.com/index.php/457/relation-between-t-and-db-txinstant