Closed
Description
From https://clojurians.slack.com/archives/C0617A8PQ/p1745491033246169
we upgraded cider-nrepl to 0.55.1 and today we had the case, where 11 cpus ran at 100% for around 45 minutes until we killed the process. I ran jstack and it looks like it has to do with latest changes to track-state
"clojure-agent-send-off-pool-7" #88 [3077360] prio=5 os_prio=0 cpu=2571688.20ms elapsed=3094.35s allocated=663M defined_classes=6 tid=0x00007fc44400a090 nid=30
0007fc4275fc000]
java.lang.Thread.State: RUNNABLE
at java.util.WeakHashMap.get([email protected]/WeakHashMap.java:415)
at cider.nrepl.middleware.track_state$get_metadata_if_changed_QMARK_.invokeStatic(track_state.clj:74)
at cider.nrepl.middleware.track_state$get_metadata_if_changed_QMARK_.invoke(track_state.clj:69)
at cider.nrepl.middleware.track_state$compute_var_meta.invokeStatic(track_state.clj:96)
at cider.nrepl.middleware.track_state$compute_var_meta.invoke(track_state.clj:89)
at cider.nrepl.middleware.track_state$compute_var_metas_for_namespace$fn__96498.invoke(track_state.clj:128)
at clojure.lang.PersistentHashMap$NodeSeq.kvreduce(PersistentHashMap.java:1309)
at clojure.lang.PersistentHashMap$BitmapIndexedNode.kvreduce(PersistentHashMap.java:804)
at clojure.lang.PersistentHashMap$NodeSeq.kvreduce(PersistentHashMap.java:1314)
at clojure.lang.PersistentHashMap$BitmapIndexedNode.kvreduce(PersistentHashMap.java:804)
at clojure.lang.PersistentHashMap$ArrayNode.kvreduce(PersistentHashMap.java:468)
at clojure.lang.PersistentHashMap.kvreduce(PersistentHashMap.java:238)
at clojure.core$fn__8555.invokeStatic(core.clj:6987)
at clojure.core$fn__8555.invoke(core.clj:6967)
at clojure.core.protocols$fn__8283$G__8278__8292.invoke(protocols.clj:174)
at clojure.core$reduce_kv.invokeStatic(core.clj:6998)
at clojure.core$reduce_kv.invoke(core.clj:6989)
at cider.nrepl.middleware.track_state$compute_var_metas_for_namespace.invokeStatic(track_state.clj:123)
at cider.nrepl.middleware.track_state$compute_var_metas_for_namespace.invoke(track_state.clj:114)
at cider.nrepl.middleware.track_state$ns_state.invokeStatic(track_state.clj:208)
at cider.nrepl.middleware.track_state$ns_state.invoke(track_state.clj:203)
at cider.nrepl.middleware.track_state$initial_project_state$fn__96550.invoke(track_state.clj:257)
at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:65)
at clojure.core.protocols$fn__8270.invokeStatic(protocols.clj:135)
at clojure.core.protocols$fn__8270.invoke(protocols.clj:123)
at clojure.core.protocols$fn__8229$G__8224__8238.invoke(protocols.clj:19)
at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
at clojure.core.protocols$fn__8262.invokeStatic(protocols.clj:74)
at clojure.core.protocols$fn__8262.invoke(protocols.clj:74)
at clojure.core.protocols$fn__8203$G__8198__8216.invoke(protocols.clj:13)
at clojure.core$reduce.invokeStatic(core.clj:6965)
at clojure.core$reduce.invoke(core.clj:6947)
at cider.nrepl.middleware.track_state$initial_project_state.invokeStatic(track_state.clj:253)
at cider.nrepl.middleware.track_state$initial_project_state.invoke(track_state.clj:250)
at cider.nrepl.middleware.track_state$calculate_changed_project_state_response.invokeStatic(track_state.clj:315)
at cider.nrepl.middleware.track_state$calculate_changed_project_state_response.invoke(track_state.clj:294)
at cider.nrepl.middleware.track_state$make_transport$reify__96576$fn__96578.invoke(track_state.clj:341)
at clojure.core$binding_conveyor_fn$fn__5842.invoke(core.clj:2047)
at clojure.lang.AFn.call(AFn.java:18)
at java.util.concurrent.FutureTask.run([email protected]/FutureTask.java:317)
at java.util.concurrent.ThreadPoolExecutor.runWorker([email protected]/ThreadPoolExecutor.java:1144)
at java.util.concurrent.ThreadPoolExecutor$Worker.run([email protected]/ThreadPoolExecutor.java:642)
at java.lang.Thread.runWith([email protected]/Thread.java:1596)
at java.lang.Thread.run([email protected]/Thread.java:1583)