This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-07-08
Channels
- # aws-lambda (3)
- # beginners (27)
- # boot (4)
- # cljs-dev (26)
- # clojure (7)
- # clojure-spec (8)
- # clojure-uk (17)
- # clojurescript (1)
- # core-typed (2)
- # data-science (53)
- # datomic (24)
- # emacs (1)
- # fulcro (7)
- # luminus (1)
- # off-topic (2)
- # onyx (3)
- # pedestal (5)
- # planck (2)
- # portkey (50)
- # re-frame (15)
- # reagent (5)
- # reitit (2)
- # shadow-cljs (19)
- # tools-deps (15)
- # vim (2)
Hi @stuarthalloway I'm curious why the ion-event-example breaks the schema into keyed chunks and only migrates new chunks. Specifically: https://github.com/Datomic/ion-event-example/blob/master/src/datomic/ion/event_example.clj#L47
There would be less moving parts without the grouping. Perhaps there are performance considerations with loading the whole schema (even if 95% unchanged) each time. Can see it would be more managable working with a large edn schema file with chunks & would allow migration to report what schema chunks are being loaded...
hi @olivergeorge ! it is just sample code, I don't have any agenda about how people manage schemas and migrations
although I do have an agenda about "what" and "why" š http://blog.datomic.com/2017/01/the-ten-rules-of-schema-growth.html
Thanks for clarifying
(I'd love to see other people's approaches to declaring and migrating schema too.)
Iām working this out for myself right now. Iām deploying parts of my app using the ācomponentā lib where each component deploys itās own schema on start. It could be a bit heavyweight inside an Ion but so far itās ok. Iāll blog on this later if the pattern holds up as the app grows
Iāve used conformity a good bit with on-prem, for schema mgmt. Coming from aeons of using flyway/liquibase/etc in the java/sql world it seemed a good fit. It needs some love to get it working with the client api, been thinking about tackling a pr. But yeah for now @olivergeorge, Iām just memoizing the load of the whole thing
I have a couple questions about the ion-config.edn stuff
The :allow
section lists what datomic is allowed to call. The āentry pointsā if you will. In looking over the starter though, I donāt quite get how a function, thatās not a lambda would ever get executed directly, and need to be āallowedā. Are non-lambda funcs just there to take advantage of the namespace loading? If thatās the case maybe itād be cleaner to have a separate more explicit tag?
Also, the reference describes the ion function signatures. It appears that the transaction and query types are really just recommended conventions, while the lambda and web service types are describing the actual required function signature. Is this the case?
If I understand it correctly, you need to :allow
transaction and query functions. They aren't lambdas but they need to be declared in case an external client called them through a query or transaction.
ah lol. Iād jumped right into lambdas, etc and totally missed that we now have transaction funcs, etc via ions as well Was really missing the transaction funcs. We use them judiciously, but for some key functionality in for on-prem
hi, whatās the story for logging with ions? went poking around in the log for the lambda, then remembered that theyāre just the glue. And the system or whatever log just looks like health stuff
I haven't messed around with logging too much, but I would try prepending something searchable like the current namespace and then searching the "datomic-<compute-stack>" log-stream for it.
You can use any logging tech you would use for EC2, but stay tuned, help is on the way.
Iām fairly certain that āstdoutā logging isnāt showing up in the compute stackās log stream. Ok @stuarthalloway will try using CWL or datadog or something directly
@U380J7PAQ ... and help has arrived http://blog.datomic.com/2018/07/datomic-ion-cast.html
hey @stuarthalloway just an FYI, looks like the doc page has 2 copies of the same content https://docs.datomic.com/cloud/ions/ions-monitoring.html
thanks, will investigate!
@stuarthalloway What version of jackson-core does Datomic Ions use? I found that my code was getting broken only in my deployment because of my dependency on cheshire and its transitive dependency on jackson-(core|dataformat-smile|dataformat-cbor) 2.9.0. Pinning them down to 2.8.11 seems to have fixed it.
Hi @U0LSQU69Z! We just did an update to help people with this problem: https://docs.datomic.com/cloud/releases.html#402-8396
I am guessing you are on an older release than that one.