This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-07-04
Channels
- # admin-announcements (14)
- # aleph (3)
- # beginners (75)
- # boot (95)
- # carry (4)
- # cider (23)
- # clojure (39)
- # clojure-android (3)
- # clojure-brasil (2)
- # clojure-dev (17)
- # clojure-gamedev (1)
- # clojure-mexico (12)
- # clojure-poland (12)
- # clojure-romania (1)
- # clojure-russia (10)
- # clojure-spec (8)
- # clojure-uk (36)
- # clojurescript (34)
- # core-async (4)
- # datomic (40)
- # emacs (1)
- # events (7)
- # hoplon (119)
- # instaparse (52)
- # keechma (71)
- # mount (4)
- # off-topic (9)
- # om (4)
- # onyx (3)
- # other-languages (23)
- # protorepl (3)
- # re-frame (9)
- # reagent (26)
- # rethinkdb (5)
- # spacemacs (2)
- # testing (1)
- # yada (1)
Is there a reason upgrading to 5385 would give me a “Transactor request timed out” even after destroying and re-creating the database, etc, etc?
I see this in the logs org.hornetq.core.server - HQ222190: Disallowing use of vulnerable protocol: SSLv2Hello. See
but it’s just a WARN.
Also: {:event :transactor/admin-command, :cmd :create-database, :arg {:db-name “my_db"}, :result {:exists “my_db"}, :pid 83706, :tid 125}
2016-07-04 12:12:45 | DEBUG | org.hornetq.core.client | ClientSessionFactoryImpl received backup update for live/backup pair = TransportConfiguration(name=4a096a42-421b-11e6-b265-a7082dd004e2, factory=org-hornetq-core-remoting-impl-netty-NettyConnectorFactory) ?trust-store-path=datomic/transactor-trust-jks&trust-store-password=transactor&port=4334&ssl-enabled=false&key-store-path=datomic/transactor-key-jks&key-store-password=****&host=127-0-0-1 / null but it didn't belong to TransportConfiguration(name=4a096a42-421b-11e6-b265-a7082dd004e2, factory=org-hornetq-core-remoting-impl-netty-NettyConnectorFactory) ?trust-store-path=datomic/transactor-trust-jks&trust-store-password=transactor&port=4334&ssl-enabled=false&key-store-path=datomic/transactor-key-jks&key-store-password=****&host=127-0-0-1
2016-07-04 12:12:45 | ERROR | org.hornetq.core.client | HQ214000: Failed to call onMessage
java.io.EOFException: null
at org.fressian.impl.RawInput.readRawByte(RawInput.java:40)
at org.fressian.FressianReader.readNextCode(FressianReader.java:927)
at org.fressian.FressianReader.readObject(FressianReader.java:274)
at datomic.hornet$create_deserializer$fn__6605.invoke(hornet.clj:353)
at datomic.hornet$create_rpc_client$fn__6638.invoke(hornet.clj:412)
at datomic.hornet$set_handler$reify__6592.onMessage(hornet.clj:288)
at org.hornetq.core.client.impl.ClientConsumerImpl.callOnMessage(ClientConsumerImpl.java:1116)
at org.hornetq.core.client.impl.ClientConsumerImpl.access$500(ClientConsumerImpl.java:56)
at org.hornetq.core.client.impl.ClientConsumerImpl$Runner.run(ClientConsumerImpl.java:1251)
at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:104)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Something in my client app is messing things up. I can run an inlein script and connect just fine.
aleph -> [io.netty/netty-all "4.1.0.CR3”]
, datomic -> [io.netty/netty-all "4.0.13.Final"]
What do you do when you have incompatible dependencies like this? If I exclude from datomic, it’s broken. If from aleph, aleph is broken.
this is the problem colloquially known as “jar hell”. The “tree” of dependencies is flattened into a linear classpath (often with little control from a user standpoint) where the jar version being used is whichever happens to come “first”, rather than the one that is actually needed by a particular dependency. This is one of the primary motivations for the classpath module system being added in Java 9.
Usually you first try to exclude unneeded deps
Then try to find a version that is harmonious with both
Then change versions of the upstream deps to find a compatible set
Then pester people producing those deps
From a lib perspective, there are other solutions as well, like modifying the dep to use a new package root such that there is no package conflict
The use of custom classloaders with dynamic classpaths can sometimes be helpful in isolating parts of the classpath from the other
I can revert to the earlier version of Datomic, I guess. Interesting that there’s some weird nuance such that any newer version of netty breaks datomic.
would be good to report that
yes, either of those