This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-09-05
Channels
- # 100-days-of-code (1)
- # announcements (9)
- # aws (1)
- # beginners (195)
- # braveandtrue (60)
- # calva (3)
- # cider (36)
- # cljs-dev (3)
- # clojure (124)
- # clojure-canada (13)
- # clojure-dev (18)
- # clojure-germany (2)
- # clojure-italy (2)
- # clojure-losangeles (1)
- # clojure-nl (9)
- # clojure-russia (1)
- # clojure-spec (20)
- # clojure-uk (109)
- # clojurescript (49)
- # core-logic (29)
- # cursive (7)
- # datomic (62)
- # defnpodcast (1)
- # devcards (11)
- # docker (3)
- # duct (6)
- # figwheel (13)
- # figwheel-main (57)
- # fulcro (2)
- # graphql (11)
- # hyperfiddle (3)
- # jobs (5)
- # jobs-discuss (9)
- # leiningen (2)
- # lumo (1)
- # off-topic (12)
- # onyx (2)
- # pedestal (1)
- # portkey (2)
- # rdf (1)
- # re-frame (39)
- # reitit (13)
- # remote-jobs (2)
- # rum (5)
- # shadow-cljs (82)
- # tools-deps (48)
- # unrepl (3)
- # vim (12)
- # yada (1)
I’m seeing this Ion-specific error :db.error/invalid-rule-fn The following forms do not name predicates or fns: (clojure.string/starts-with?)
when using rules in a query. the same clause works fine when not in a rule. This query runs fine when invoked from laptop to cloud but fails with the above when deployed as an Ion. It previously worked fine as a non-rule clause in an Ion. Any suggestions?
@steveb8n that seems not-right 🙂. We will try to repro.
that was a good problem description already!
@steveb8n I am working on reproducing this error for the team to review. Would you be able to put your rule and query in a gist? I was able to invoke a rule without running into an error and I want to look at the specifics of your case and incorporate them into my testing.
I'm having scaling issues that are coming to a head. I believe it's Datomic related. I have queries that are intermittently taking a long time to execute. Like 3-5 seconds for a query that used to take a few milliseconds. Any advice on where to look and try to figure this out ?
can you reliably reproduce?
i've taken some endpoints away from datomic and used elasticsearch and that sees to have relieved some of the pressure
i can reproduce a few slow queries, but can't reproduce the ones that are supposed to be fast but are acting slow
Hey @U1DBQAAMB this is getting a little hard to track. We’d like to ask that you log a support case to <mailto:[email protected]|[email protected]>. With all of the points you’ve run into so far (memcached, query performance etc). I also reached out so we can setup a call, but it will be great to have all of this information in a case we can track and update.
I sent an email. The gist is datomic queries are taking too long, my site keeps going down. My clients are ok with adding more servers and such especially for this week (this is their highest volume week of the year). I'm replacing datomic endpoints with elasticsearch endpoints, it's relieving some of the pressure, but some dead simple endpoints that sometimes take 5MS to load are intermittently taking over 5seconds, sometimes as long as a minute.
When they hit a minute, then containers get taken offf the load balancer, and i start having lots of issues. I've already added another server. I'm using Elastic Container services. There are 3 containers per server and 4 servers in total.
I'm seeing that there are only 4 peers connected (i guess peers work by IP? which would maybe explain why i'm not getting a performance bump by adding more containers ? )
hi @U4YGF4NGM I would start with https://docs.datomic.com/cloud/troubleshooting.html#check-alerts-first
it seems like my ion deploys fail randomly, and changing an inconsequential thing and push/deploying again fixes it. Trying to figure out why
okay, I just tried running a deploy from the codedeploy dashboard, and I’m seeing that the deploy-validate script is failing
the log tail for the deploy-validate is just
[stdout]Received 503
[stdout]Received 503
[stdout]Received 503
...
You might be experiencing out of memory errors like me and others. Causes intermittent deploy fails on solo. You would see this in the logs as a stackoverflow
If so, there is a work around by editing the CF template but you should verify it first
@steveb8n do you know offhand what exactly I should be searching for in my cloudwatch logs?
You should be able to see stackoverflow in the logs for http invocations. If not, then maybe that's not it
> in the logs for http invocations sorry, I’m very new to both AWS and datomic. I’m not sure what you mean by “http invocations.” All I’ve been doing is running the deploy commands, and they fail. The rollback succeeds and my app works as expected on the last successfully deployed revision I am on the solo topology, so this is the best lead I have so far.
:datomic.cluster-node/-main failed: java.lang.StackOverflowError, compiling:(riddley/compiler.clj:12:3)
Another team found a more reliable solution by editing the cloud formation template and increasing JVM mem params
But to do that, you have to upgrade the initial setup so you have access to the CF templates
:thinking_face: I’m trying to understand why overriding libs would fix it. do you mean forcing datomic to load your specified versions?
Yep, that's exactly what I did. I still occasionally see stackoverflows but then I just redeploy
The JVM fix was discussed by Stu about a week ago so you might find it by scrolling back slack retains enough history. Otherwise ping Stu for specifics
@steveb8n I’m going to assume you meant you overrode them locally. I asked two questions 😛
@U4YGF4NGM I answered on the ticket. You need to increase your stack size from -Xss256k to -Xss512k
that fixed it. I also had some code errors, not sure if the two were related at all. but at least I was able to see logs of my errors now
I’m trying to access query params in my api-gateway ion. I see that there is a :query-string
key passed in via the input map, although it’s not documented in the reference