Fork me on GitHub
#mount
<
2021-01-11
>
crinklywrappr18:01:57

Hey guys, I am seeing a strange issue.

> (sort-by (comp :order val) < (into {} (map (fn [[k v]] [k (select-keys v [:order])]) (deref @#'mount/meta-state))))
(["#'fitness.db-pool-metrics/db-metrics" {:order 1}]
 ["#'fitness.db/ds" {:order 1}]
 ["#'fitness.db-pool-metrics/users-db-metrics" {:order 2}]
 ["#'fitness.db/users-ds" {:order 2}]
 ["#'fitness.db/encoder-ds" {:order 3}]
 ["#'fitness.state/ec2" {:order 4}]
 ["#'fitness.state/s3" {:order 5}]
 ["#'fitness.state/statsd" {:order 6}]
 ["#'fitness.encoder/encoder" {:order 7}]
 ["#'fitness.scheduler/scheduler-state" {:order 8}]
 ["#'fitness.scheduler/scheduler" {:order 9}]
 ["#'fitness.scheduler/websocket-scheduler" {:order 10}]
 ["#'fitness.api.ws/live-class-listener" {:order 11}]
 ["#'fitness.api.ws/heartbeat" {:order 12}]
 ["#'fitness.api.server/handler" {:order 13}]
 ["#'fitness.api.server/server" {:order 14}]
 ["#'fitness.edit/process" {:order 17}]
 ["#'fitness.load-test/live-class-generator" {:order 18}])

> @#'mount/state-seq
#<[email protected]: 2>
It looks like two of the components (the db-pool-metrics components) are being removed from spots 15 & 16 and placed in spots 1 & 2. I need some ideas how this could be happening. Looking at the mount.core it doesn't seem at all possible.

crinklywrappr18:01:34

I ran lein clean and that seems to have fixed it. Strange. Can anyone suggest an explanation? Obviously my environment was dirty but I don't know of any files Leiningen or Cider keeps which would do this over and over for each new repl.