Re: [PATCH] Kannel bearerbox graceful restart support (via SIGHUP or HTTP admin command)

spameden <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Message-ID <CAHCALezRn2ksMCGB5H7STFxvt1GJM2h1bPEM55x5jTQv6mbgaw@mail.gmail.com>
Great work, Stipe!

That was really quick.

What about connected smsbox'es / sqlbox'es to the bearerbox when reload
happens?

Bearerbox is not closing the connection port right (so it's still accepting
requests from smsbox / sqlbox)?

2012/10/20 Stipe Tolj <[email protected]>

> Hi list,
>
> ok, this has been long awaited I guess: graceful restarting of Kannel
> bearerbox.
>
> At the moment we can shutdown a specific SMSC and restart it again. But we
> can't effectively move SMSC config parts in and out while keeping the
> bearerbox running for those SMSC connections that should be unchanged and
> supposed to keep running.
>
> This patchset allows this, by making use of a "checksum" for each 'group =
> smsc' context. So we can "detect" if there are groups that haven't changed,
> and hence will be kept running. Other groups are counter-compared based on
> their 'smsc-id' value.
>
> I.e. if the "newly" read-in config has a smsc-id = A and this smsc-id = A
> also exists in the "running" config, AND they do not match, hence the
> checksum doesn't match, then we assume there is a "change" for smsc-id = A.
> This results in the running smsc group to be shutdown and destroyed and the
> new smsc group to be started.
>
> Similar if there is a smsc-id = B in the running configuration, but is not
> present anymore in the new one, then we shutdown and destroy it. For the
> opposite side, smsc-id = C is in the new config, but not in the running
> config, we add it to the running config.
>
> I have tested this fairly, and it works pretty nice. BTW, it fixes even a
> couple of memory leaks that we haven't "detected" yet, due that we are not
> re-init'ing the corresponding data structure. There is STILL a memory leak
> in the cfg_read() when a config is broken and tried to be gracefully
> restarted. I need to work on this.
>
> Please test, I would love to see this going into SVN trunk ASAP. You can
> find the patchset at URL:
>
> http://www.kannel.org/~tolj/**patchsets/graceful/gateway-**
> graceful-restart.diff<http://www.kannel.org/~tolj/patchsets/graceful/gateway-graceful-restart.diff>
>
> After finalizing the current open patches, I would like to endorse Kannel
> 1.5.1 devel, giving it a 2-3 month time to settle for bug fixes and then
> push the release button for Kannel 1.6.0 stable.
>
> Comments always welcome.
> Stipe
>
> --
> ------------------------------**------------------------------**-------
> Kölner Landstrasse 419
> 40589 Düsseldorf, NRW, Germany
>
> tolj.org system architecture      Kannel Software Foundation (KSF)
> http://www.tolj.org/              http://www.kannel.org/
>
> mailto:st_{at}_tolj.org           mailto:stolj_{at}_kannel.org
> ------------------------------**------------------------------**-------
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.