Abnormal surge of memory after upgrade elixir version to 1.15.6 on Heroku dyno

We are recently considering upgrade the elixir version from 1.8.1 to 1.15.6 as well as the phoenix framework. We tried it firstly in staging env and found that the memory usage increased dramatically: from 300M to 700M.

Use top command:

I did some diagnosis by some tools such as observer_cli or just :erlang.memory() and found the amounts reported by these tools were far smaller than those from top command or Heroku metrics:

oc

So I am very confused about these numbers: which one is more credible? Or why they vary so sharply?

Neweer version of otp maybe reserves more memory up front? Just shooting ideas from the hip here

1 Like

Downgrade erlang from 26 to 25 and the problem disappeared!