Fork me on GitHub

What is the reason for the topic being passed in to the tail position in I am looking at the arities for aggregate and I really only understand the first one (aggregate kgrouped initializer-fn adder-fn). Can anyone shed some light for me on what the others do? I am trying to get something like this to work. When I take out the topic in the last position I get garbage for a.

(-> (js/kstream builder topic1)
          (js/group-by (fn [[key {:keys [group] :as record}]] group))
            (constantly (do
                          (pp/pprint "I AM AT THE START!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
                          {:size 0}))
            (fn [a [key {:keys [size] :as b}]]
              (pp/pprint {:a a :b b}) (update a :size + size)))
          (js/peek (fn [v] (pp/pprint ["peek" v])))
          (js/to topic2))


You probably have to specify value-serde so it's parsed correctly. Try adding a topic-config as last argument. Something like {:topic-name "aggr-table" :value-serde (jackdaw.serdes/edn-serde)})


I figured it might be serde related. I'll investigate further. Thanks!


Also, I read more about Kafka streams in general and I think I now understand the remaining params. They are relevant to if you are using a KStream vs. a KTable.