onyx

FYI: alternative Onyx :onyx: chat is at <https://gitter.im/onyx-platform/onyx> ; log can be found at <https://clojurians-log.clojureverse.org/onyx/index.html>
Lutz 2018-09-20T07:42:03.000100Z

Is there any documentation on how :reduce tasks work? Is there any difference between a terminal :reduce task and an terminal (i.e., :output) task with plugin :onyx.peer.function/function?

Lutz 2018-09-20T11:25:00.000100Z

Lutz 2018-09-20T11:31:34.000100Z

I have a workaround for above watermark triggering issue. I can explain it and maybe you can tell if that is a good idea or not. I know the incoming data are chronological. I want fixed windows of these data. (I also know that there are no empty windows). Watermark triggering does not work in my specific case, I know now. What I do to get the same behaviour, though, is the following: In an upstream task I emit an additional segment for each processed segment, where I include just a special keyword and a timestamp by <the same time of the original segment minus the window range> to make sure it will end up in the previous window. With a punctuation trigger I check if an incoming segment has the special keyword, and if yes, I trigger. Are there any ways in which this can break or is a bad idea otherwise? E.g., does this still work if you scale up the number of peers?

lucasbradstreet 2018-09-20T21:39:23.000100Z

This approach will have problems if you scale up to more peers and don’t emit a segment that will reach each peer.

lucasbradstreet 2018-09-20T21:39:55.000100Z

Which can be hard to do if you have a grouping-fn, and extremely difficult if not because the peer it’ll be sent to is randomised then.