This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-06-09
Channels
- # beginners (121)
- # boot (28)
- # cider (106)
- # clara (57)
- # cljs-dev (70)
- # cljsrn (6)
- # clojure (145)
- # clojure-dev (7)
- # clojure-italy (36)
- # clojure-russia (42)
- # clojure-spec (26)
- # clojure-uk (127)
- # clojurescript (103)
- # core-async (10)
- # cursive (56)
- # datascript (66)
- # datomic (16)
- # defnpodcast (1)
- # emacs (18)
- # events (6)
- # figwheel (1)
- # jobs (1)
- # luminus (1)
- # lumo (44)
- # off-topic (58)
- # om (17)
- # onyx (2)
- # parinfer (75)
- # pedestal (4)
- # re-frame (18)
- # ring (4)
- # ring-swagger (8)
- # rum (7)
- # spacemacs (7)
- # specter (2)
- # sql (4)
- # unrepl (39)
- # untangled (17)
- # vim (3)
- # yada (21)
@cfleming Really difficult to figure out what's causing this. I think I was on a few EAP's past the 1.5.0 and didn't have the issue at all. Then boom, all in a sudden it's super slow and almost unusable. The ticket you linked seems to be my issue as well. I found that simply going over a local symbol (so it gets highlighted) and then moving the cursor over a function (global symbol) and repeating this back and forth will eventually spin the CPU to 200%. I see editor.cljs.editor_resolver.resolve_unqualified
and resolve_normal_symbol
very high in a CPU profile.
Yeah, currently it works for me. Downgraded to 1.5.0-eap1. I'll profile when it acts up again
Great, thanks. I’ve had a couple of snapshots from the others in that issue, but never found anything conclusive (or really, anything to suggest that it’s Cursive, although it seems like it must be).
I can't toggle the "start CPU usage profiling" option. Reading thru: https://intellij-support.jetbrains.com/hc/en-us/articles/207241235-Reporting-performance-problems
Yeah, but right now the problem is pretty much gone. I also upgrade to the latest version of Cursive again. So it doesn't seem to have been introduced by Cursive recently.
I also did disable all plugins. I'm not sure if that did it. I'm hesitant to binary search them.
Yeah, it might be some interaction with another plugin, it’s hard to tell - that would explain why I can’t reproduce it, though.
I’m pretty sure nothing that should dramatically affect editing perfomance has changed in a while though.
It is really weird, and it was incredibly frustrating. I'm just too scared to make it not-work again 😄
Actually, which were the plugins you disabled? Perhaps I’ll install them and see if I see any problems.
I’ve found that my IntelliJ locks up a lot recently, but I haven’t worried about it since I’m running an EAP and debug a lot, which makes things funky.
I'm enabling them right now to see if the problem comes back up. The plugins: Gauge, String manipulation, YAML, Bash
@cfleming So super weird, but if I go over the .-a
in (.-a xy)
it'll lock up for a few seconds
Any other work fine. Like:
(combine-cmp
(cmp-num (.-e d1) (.-e d2))
(cmp-attr (.-a d1) (.-a d2))
(cmp-val (.-v d1) (.-v d2))
(cmp-num (.-tx d1) (.-tx d2)))
Someone reported a while ago that CLJS interop provoked problems for them - I wonder if that is the issue.
Can you check for auto-generated thread dumps as described here: https://intellij-support.jetbrains.com/hc/en-us/articles/206544899-Getting-a-thread-dump-when-IDE-hangs-and-doesn-t-respond
I PM’ed you some lines from your log - it looks to me like there might be an issue with the auto-indent detection. You could try disabling that at Settings->Editor->Code Style->Detect and use existing file indents
That might help, and the code style thing might help as well, although try the invalidate first since funky indexes might cause that too.
I did yesterday, didn't help. But I'll try again. The detect indent disabling didn't seem to help.
Ok. I’ve been planning to rewrite that indexing, perhaps I need to move that up if it’s possibly the cause of all this.
Ok. I’ll take a look at that index on Monday. I’ve been meaning to look at it anyway since it’s old and crufty.
Humm. I was asked how many clojure developers are there. @cfleming do you know how many active cursive accounts there are (aka I assume something checks for updates everyso often) - so you must know the # of active users...