[erlang-questions] release upgrades and code loading

Mike Oxford <>
Thu Feb 13 20:35:03 CET 2014


 [{"1.0.6",[],
   [{load_object_code,{app1,"*201**40213.1*",[app1]}},
    {load_object_code,{app2,"*20140**213.1*",[app2]}},

Replacing a version with itself?



On Thu, Feb 13, 2014 at 11:03 AM, Ivan Uemlianin <> wrote:

> Dear Mike
>
> Thanks for your help.
>
> Here's a recent relup.  After this upgrade, I had to manually code_load
> and purge app1:
>
> {"1.0.7",
>  [{"1.0.6",[],
>    [{load_object_code,{app1,"20140213.1",[app1]}},
>     {load_object_code,{app2,"20140213.1",[app2]}},
>     point_of_no_return,
>     {suspend,[app1]},
>     {load,{app1,brutal_purge,brutal_purge}},
>     {code_change,up,[{app1,[from1to2]}]},
>     {resume,[app1]},
>     {suspend,[app2]},
>     {load,{app2,brutal_purge,brutal_purge}},
>     {code_change,up,[{app2,[from1to2]}]},
>     {resume,[app2]}]}],
>  [{"1.0.6",[],
>    [{load_object_code,{app1,"20140211.1",[app1]}},
>     {load_object_code,{app2,"20140207.1",[app2]}},
>     point_of_no_return,
>     {suspend,[app1]},
>     {code_change,down,[{app1,[from2to1]}]},
>     {load,{app1,brutal_purge,brutal_purge}},
>     {resume,[app1]},
>     {suspend,[app2]},
>     {code_change,down,[{app2,[from2to1]}]},
>     {load,{app2,brutal_purge,brutal_purge}},
>     {resume,[app2]}]}]}.
>
> Best wishes
>
> Ivan
>
>
>
> On 13/02/2014 18:54, Mike Oxford wrote:
>
>> Is your brutal_purge on the PostPurge or the PrePurge?
>>
>>
>> On Thu, Feb 13, 2014 at 10:00 AM, Ivan Uemlianin <
>> <mailto:>> wrote:
>>
>>     Dear All
>>
>>     I am just getting started with live release upgrades, using relx and
>>     following this tutorial:
>>
>>     http://blog.troutwine.us/2013/__09/13/trivial_otp_releases.__html
>>
>>     <http://blog.troutwine.us/2013/09/13/trivial_otp_releases.html>
>>
>>     Everything seems to work as advertised, except sometimes I need to
>>     explicitly load the code into the running vm (i.e., using
>>     code_load_file/1) for the new stuff to take effect.  The function
>>     release_handler:which___releases/0 reports the new release as active
>>
>>     and permanent, but I can see from behaviour that old versions of
>>     certain modules are still running and handling data.
>>
>>     I can't be much more specific I'm afraid.  One example: one
>>     application uses cowboy.  If a release upgrade changes a cowboy
>>     resource module, the new release version might still be running the
>>     old version of that module until I load_file and purge.
>>
>>     Why might this be happening?  Am I missing something in the
>>     packaging and upgrade process?  Is there a better way I can write my
>>     modules?
>>
>>     If the information above is too vague, what should I look out for
>>     next time this happens?
>>
>>     With thanks and best wishes
>>
>>     Ivan
>>
>>
>>     --
>>     ==============================__==============================
>>
>>     Ivan A. Uemlianin PhD
>>     Llaisdy
>>     Speech Technology Research and Development
>>
>>      <mailto:>
>>     www.llaisdy.com <http://www.llaisdy.com>
>>     llaisdy.wordpress.com <http://llaisdy.wordpress.com>
>>     github.com/llaisdy <http://github.com/llaisdy>
>>     www.linkedin.com/in/__ivanuemlianin
>>     <http://www.linkedin.com/in/ivanuemlianin>
>>
>>                              festina lente
>>     ==============================__==============================
>>     _________________________________________________
>>     erlang-questions mailing list
>>      <mailto:>
>>     http://erlang.org/mailman/__listinfo/erlang-questions
>>     <http://erlang.org/mailman/listinfo/erlang-questions>
>>
>>
>>
> --
> ============================================================
> Ivan A. Uemlianin PhD
> Llaisdy
> Speech Technology Research and Development
>
>                     
>                      www.llaisdy.com
>                          llaisdy.wordpress.com
>               github.com/llaisdy
>                      www.linkedin.com/in/ivanuemlianin
>
>                         festina lente
> ============================================================
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20140213/ddae3376/attachment.html>


More information about the erlang-questions mailing list