[Home]

Summary:ASTERISK-15006: SIP subscriptions are lost after a reload
Reporter:Joshua Laroff (jlaroff)Labels:
Date Opened:2009-10-18 18:05:14Date Closed:2010-01-05 13:43:09.000-0600
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Channels/chan_sip/Subscriptions
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:SIP subscriptions are not persistent between reloads.
Issuing "reload" causes subscriptions to be lost.
Issuing a "sip reload" does not have the same effect.



****** ADDITIONAL INFORMATION ******

asterisk*CLI> sip show subscriptions
Peer             User        Call ID          Extension        Last state     Type            Mailbox    Expiry
xx.xx.xx.xx   100     460e9e6b-a882d2  118@local-exten Idle xpidf+xml       <none>     000240
xx.xx.xx.xx   122    f549380f-5cd952  118@local-exten Idle dialog-info+xml <none>     000060
xx.xx.xx.xx   588     b998dd88-1a1464  100@local-exten Idle dialog-info+xml <none>     000060
xx.xx.xx.xx   9997 6a732ec1-208449  9998@local-exte Idle dialog-info+xml <none>  000060

asterisk*CLI> reload
...
asterisk*CLI> sip show subscriptions
Peer             User        Call ID          Extension        Last state     Type            Mailbox    Expiry
0 active SIP subscriptions

Comments:By: Russell Bryant (russell) 2009-10-19 14:34:27

Was it you that I was working with on this issue at Astricon?

By: Joshua Laroff (jlaroff) 2009-10-19 14:46:45

Yes, same guy!
Also, this should have be filed as Channels/chan_sip/Subscriptions not General.

By: Erik Smith (eeman) 2009-10-29 22:29:16

I found this to also be the case in 1.6.0 branch as well.

By: Digium Subversion (svnbot) 2010-01-05 13:29:48.000-0600

Repository: asterisk
Revision: 237839

U   trunk/main/pbx.c

------------------------------------------------------------------------
r237839 | dvossel | 2010-01-05 13:29:47 -0600 (Tue, 05 Jan 2010) | 19 lines

fixes subscriptions being lost after 'module reload'

During a module reload if multiple extension configs are present,
such as both extensions.conf and extensions.ael, watchers for one
config's hints will be lost during the merging of the other config.

This happens because hint watchers are only preserved for the
current config being merged.  The old context list is destroyed
after the merging takes place, meaning any watchers that were not
perserved will be removed.

Now all hints are preserved during merging regardless of what config
file is being merged.  These hints are only restored if they
are present within the new context list.

(closes issue ASTERISK-15006)
Reported by: jlaroff


------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=237839

By: Digium Subversion (svnbot) 2010-01-05 13:30:45.000-0600

Repository: asterisk
Revision: 237840

_U  branches/1.6.2/
U   branches/1.6.2/main/pbx.c

------------------------------------------------------------------------
r237840 | dvossel | 2010-01-05 13:30:45 -0600 (Tue, 05 Jan 2010) | 25 lines

Merged revisions 237839 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r237839 | dvossel | 2010-01-05 13:29:47 -0600 (Tue, 05 Jan 2010) | 19 lines
 
 fixes subscriptions being lost after 'module reload'
 
 During a module reload if multiple extension configs are present,
 such as both extensions.conf and extensions.ael, watchers for one
 config's hints will be lost during the merging of the other config.
 
 This happens because hint watchers are only preserved for the
 current config being merged.  The old context list is destroyed
 after the merging takes place, meaning any watchers that were not
 perserved will be removed.
 
 Now all hints are preserved during merging regardless of what config
 file is being merged.  These hints are only restored if they
 are present within the new context list.
 
 (closes issue ASTERISK-15006)
 Reported by: jlaroff
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=237840

By: Digium Subversion (svnbot) 2010-01-05 13:31:44.000-0600

Repository: asterisk
Revision: 237841

_U  branches/1.6.1/
U   branches/1.6.1/main/pbx.c

------------------------------------------------------------------------
r237841 | dvossel | 2010-01-05 13:31:44 -0600 (Tue, 05 Jan 2010) | 25 lines

Merged revisions 237839 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r237839 | dvossel | 2010-01-05 13:29:47 -0600 (Tue, 05 Jan 2010) | 19 lines
 
 fixes subscriptions being lost after 'module reload'
 
 During a module reload if multiple extension configs are present,
 such as both extensions.conf and extensions.ael, watchers for one
 config's hints will be lost during the merging of the other config.
 
 This happens because hint watchers are only preserved for the
 current config being merged.  The old context list is destroyed
 after the merging takes place, meaning any watchers that were not
 perserved will be removed.
 
 Now all hints are preserved during merging regardless of what config
 file is being merged.  These hints are only restored if they
 are present within the new context list.
 
 (closes issue ASTERISK-15006)
 Reported by: jlaroff
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=237841

By: Digium Subversion (svnbot) 2010-01-05 13:43:07.000-0600

Repository: asterisk
Revision: 237843

_U  branches/1.6.0/
U   branches/1.6.0/main/pbx.c

------------------------------------------------------------------------
r237843 | dvossel | 2010-01-05 13:43:07 -0600 (Tue, 05 Jan 2010) | 25 lines

Merged revisions 237839 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r237839 | dvossel | 2010-01-05 13:29:47 -0600 (Tue, 05 Jan 2010) | 19 lines
 
 fixes subscriptions being lost after 'module reload'
 
 During a module reload if multiple extension configs are present,
 such as both extensions.conf and extensions.ael, watchers for one
 config's hints will be lost during the merging of the other config.
 
 This happens because hint watchers are only preserved for the
 current config being merged.  The old context list is destroyed
 after the merging takes place, meaning any watchers that were not
 perserved will be removed.
 
 Now all hints are preserved during merging regardless of what config
 file is being merged.  These hints are only restored if they
 are present within the new context list.
 
 (closes issue ASTERISK-15006)
 Reported by: jlaroff
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=237843