3 ms·
Sad, neither MongooseIM, nor ejabberd use proper Erlang/OTP SASL release system, so hot updates can be done with relup (http://erlang.org/doc/man/relup.html htt
by drdaeman 10y ago
Sad, neither MongooseIM, nor ejabberd use proper Erlang/OTP SASL release system, so hot updates can be done with relup (http://erlang.org/doc/man/relup.html http://erlang.org/doc/man/relup.html)
Smaller modules can be upgraded from Erlang shell, but it's seems to be impossible to update a server without shutting it down.
- nyconyco 10y agoMongooseIM (and ejabberd) are too big and complex to allow full hot code reloading. Moreover this feature is quite rarely used in any Erlang software.
- toast0 10y agoI'm not sure how you've measured how often hot code reloading is used? I use it for almost all of my production pushes. However, I agree that it's generally hard to use it for third party software; upgrades would either become cumbersome because you have to follow the same piecewise upgrade process the developer followed, or the developer would have to do a lot of extra work to ensure upgrades between releases were solid; the recent addition of atomic loading of multiple modules would probably help.
- nyconyco 10y agoI could point to this: https://stackoverflow.com/questions/31080970/erlang-hot-code-loading-not-widely-used https://stackoverflow.com/questions/31080970/erlang-hot-code...