This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-12-07
Channels
- # adventofcode (38)
- # aleph (1)
- # bangalore-clj (3)
- # beginners (126)
- # boot (165)
- # boulder-clojurians (5)
- # cider (42)
- # cljsrn (11)
- # clojure (203)
- # clojure-greece (6)
- # clojure-hk (1)
- # clojure-italy (11)
- # clojure-new-zealand (1)
- # clojure-nl (1)
- # clojure-russia (112)
- # clojure-spec (86)
- # clojure-uk (176)
- # clojurescript (38)
- # code-reviews (2)
- # core-async (2)
- # cryogen (2)
- # cursive (16)
- # datascript (2)
- # datomic (80)
- # events (2)
- # garden (28)
- # hoplon (115)
- # jobs (1)
- # jobs-discuss (7)
- # klipse (50)
- # lein-figwheel (15)
- # liberator (17)
- # luminus (6)
- # off-topic (8)
- # om (31)
- # onyx (26)
- # parinfer (4)
- # planck (35)
- # protorepl (26)
- # quil (2)
- # re-frame (50)
- # reagent (21)
- # ring (5)
- # rum (2)
- # schema (1)
- # untangled (29)
- # vim (10)
- # yada (40)
So just wondering if anyone has any useful Grafana ( riemann, influx ) queries that they have put together for onyx?
Code survival graph for Onyx core:
Is there another hook to clean/mutate aggregation state other than apply-state-update and the two refinement options?
@yonatanel: no but I'm interested in hearing about any use cases that need anything else
Sure. 🙂
@lucasbradstreet I do event sourcing, implemented with aggregation that accumulates the events together with the aggregate state, and then save the events to durable store in a sync function. Only then I can discard them from state. Currently, I can't discard them until the next call to aggregation/apply-state-update.
@yonatanel Discard only happens after sync
finishes execution.
I'm using accumulating refinement, not discarding. I need part of the state forever
Ah man. Raynes passed away ._.
the aggregate is composed of events and the "reduce" of them. The reduce keeps living, the events can go to a store and be cleaned from the aggregate
@yonatanel If you can draw up a more concrete example, we can look at making a new refinement mode to support it, if that’s appropriate.
@michaeldrogalis I put my cqrs example on github. Can you look at the aggregation and say if you understand the use case? https://github.com/yonatane/onyx-cqrs-example/blob/master/src/onyx_cqrs_example/account.cljs
Yep, will check it out shortly
@yonatanel Yeah, I think you need a custom refinement that respects the properties of your aggregate
@michaeldrogalis I don't think it's documented but I see code in onyx/refinements.cljc and onyx/windowing/window_compile.clj that uses trigger refinement calls similar to aggregation calls.
@yonatanel Sorry? Do you have a question about it?
Yeah. The refinement interface is a public API
Do we not doc that in the cheat sheet? Probably not :/
Will get on that if not