[erlang-questions] release upgrades and code loading

Paul Davis <>
Thu Feb 13 21:17:59 CET 2014


Mike, pretty sure its upgrading two apps to the same version.

app1 is 20140211.1 -> 20140213.1
app2 is 20140207.1 -> 20140213.1

On Thu, Feb 13, 2014 at 1:59 PM, Mike Oxford <> wrote:
> It looks like you're trying to suspend version 20140213.1 and replace it
> with 20140213.1 (the same version.)
>
>
>
> On Thu, Feb 13, 2014 at 11:51 AM, Ivan Uemlianin <> wrote:
>>
>> Sorry don't follow
>>
>> --
>> festina lente
>>
>>
>> On 13 Feb 2014, at 19:35, Mike Oxford <> wrote:
>>
>>  [{"1.0.6",[],
>>    [{load_object_code,{app1,"20140213.1",[app1]}},
>>     {load_object_code,{app2,"20140213.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
>>> ============================================================
>>
>>
>
>
> _______________________________________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-questions
>



More information about the erlang-questions mailing list