Fork me on GitHub
#onyx
<
2016-06-11
>
michaeldrogalis01:06:14

@aaelony: Scroll up a bit, someone asked that a few messages before you. That's a bug in BookKeeper reconnecting to ZooKeeper too quickly.

michaeldrogalis01:06:37

We lobbied for a fix a while ago, not sure how seriously it was taken. It's hard to get quick turn around on problems in Apache projects.

gardnervickers01:06:42

Try clearing your /tmp folder of bookeeper*

devth21:06:19

The more I dig into Onyx the more I like what I see. Awesome project!

michaeldrogalis21:06:16

@devth: Thanks! 🙂 Lots more to come this summer!

devth21:06:44

Sweet, looking forward to more goodness 😎

devth21:06:43

I'm trying to read a result out of a core async channel in a test. I'm expecting it to be a Datomic entity, which I prn just fine in my function/task, but if I try to: (prn (<!! out)) or (prn (first (take-segments! out))) at the end of my test, I see this exception which I don't recognize:

{:type :reader, :throwable #error {
 :cause "No implementation of method: :read-char of protocol: #'clojure.tools.reader.reader-types/Reader found for class: java.lang.String"
 :via
 [{:type clojure.lang.ExceptionInfo
   :message "No implementation of method: :read-char of protocol: #'clojure.tools.reader.reader-types/Reader found for class: java.lang.String"
   :data {:type :reader-exception}
   :at [clojure.core$ex_info invokeStatic "core.clj" 4617]}
  {:type java.lang.IllegalArgumentException
   :message "No implementation of method: :read-char of protocol: #'clojure.tools.reader.reader-types/Reader found for class: java.lang.String"
   :at [clojure.core$_cache_protocol_fn invokeStatic "core_deftype.clj" 568]}]
Do I need to do something special to pull a result out?

devth22:06:18

Ah, if I count it it looks like there are 3 results. One of my intermediate fns returns a collection – I thought it'd treat each of those collection items as a separate segment.

devth22:06:24

I'm expecting more like 300 segments

michaeldrogalis22:06:00

@devn: You can only send Clojure maps between tasks.

michaeldrogalis22:06:30

You can return a vector of maps, which get unrolled and passed one by one downstream

devth22:06:47

Ah, I think it was a list of maps. I'll mapv or something

lucasbradstreet22:06:56

List of maps should work too. I'd consider that a bug

devth22:06:14

So it was actually a datomic.query.EntityMap

lucasbradstreet22:06:27

Ah, yeah, that'd do it

devth22:06:53

Works now!