Skip to content
Snippets Groups Projects
  1. Feb 06, 2014
  2. Feb 04, 2014
  3. Jan 31, 2014
  4. Jan 29, 2014
  5. Jan 27, 2014
  6. Jan 21, 2014
  7. Jan 17, 2014
  8. Jan 16, 2014
  9. Jan 14, 2014
    • Richard Mudgett's avatar
      verbosity: Fix performance of console verbose messages. · 828f339a
      Richard Mudgett authored
      The per console verbose level feature as previously implemented caused a
      large performance penalty.  The fix required some minor incompatibilities
      if the new rasterisk is used to connect to an earlier version.  If the new
      rasterisk connects to an older Asterisk version then the root console
      verbose level is always affected by the "core set verbose" command of the
      remote console even though it may appear to only affect the current
      console.  If an older version of rasterisk connects to the new version
      then the "core set verbose" command will have no effect.
      
      * Fixed the verbose performance by not generating a verbose message if
      nothing is going to use it and then filtered any generated verbose
      messages before actually sending them to the remote consoles.
      
      * Split the "core set debug" and "core set verbose" CLI commands to remove
      the per module verbose support that cannot work with the per console
      verbose level.
      
      * Added a silent option to the "core set verbose" command.
      
      * Fixed "core set debug off" tab completion.
      
      * Made "core show settings" list the current console verbosity in addition
      to the root console verbosity.
      
      * Changed the default verbose level of the 'verbose' setting in the
      logger.conf [logfiles] section.  The default is now to once again follow
      the current root console level.  As a result, using the AMI Command action
      with "core set verbose" could again set the root console verbose level and
      affect the verbose level logged.
      
      (closes issue AST-1252)
      Reported by: Guenther Kelleter
      
      Review: https://reviewboard.asterisk.org/r/3114/
      ........
      
      Merged revisions 405431 from http://svn.asterisk.org/svn/asterisk/branches/11
      ........
      
      Merged revisions 405432 from http://svn.asterisk.org/svn/asterisk/branches/12
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@405436 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      828f339a
  10. Jan 06, 2014
  11. Jan 02, 2014
  12. Dec 23, 2013
  13. Dec 20, 2013
  14. Dec 19, 2013
    • Richard Mudgett's avatar
      Voicemail: Remove mailbox identifier format (box@context) assumptions in the system. · e4803bbd
      Richard Mudgett authored
      This change is in preparation for external MWI support.
      
      Removed code from the system for normal mailbox handling that appends
      @default to the mailbox identifier if it does not have a context.  The
      only exception is the legacy hasvoicemail users.conf option.  The legacy
      option will only work for app_voicemail mailboxes.  The system cannot make
      any assumptions about the format of the mailbox identifer used by
      app_voicemail.
      
      chan_sip and chan_dahdi/sig_pri had the most changes because they both
      tried to interpret the mailbox identifier.  chan_sip just stored and
      compared the two components.  chan_dahdi actually used the box
      information.
      
      The ISDN MWI support configuration options had to be reworked because
      chan_dahdi was parsing the box@context format to get the box number.  As a
      result the mwi_vm_boxes chan_dahdi.conf option was added and is documented
      in the chan_dahdi.conf.sample file.
      
      Review: https://reviewboard.asterisk.org/r/3072/
      ........
      
      Merged revisions 404348 from http://svn.asterisk.org/svn/asterisk/branches/12
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@404350 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      e4803bbd
  15. Dec 18, 2013
  16. Dec 17, 2013
  17. Dec 16, 2013
  18. Dec 11, 2013
  19. Nov 22, 2013
  20. Nov 15, 2013
  21. Nov 08, 2013
  22. Nov 02, 2013
  23. Oct 23, 2013
  24. Oct 14, 2013
  25. Oct 08, 2013
  26. Oct 04, 2013
  27. Sep 30, 2013
    • Jonathan Rose's avatar
      configuration samples: Pull all parking related stuff out of features.conf · 8fbe62f5
      Jonathan Rose authored
      This patch also adds documentation for parking from features.conf to
      res_parking.conf
      ........
      
      Merged revisions 400205 from http://svn.asterisk.org/svn/asterisk/branches/12
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@400206 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      8fbe62f5
    • David M. Lee's avatar
      Multiple revisions 399887,400138,400178,400180-400181 · 2de42c2a
      David M. Lee authored
      ........
        r399887 | dlee | 2013-09-26 10:41:47 -0500 (Thu, 26 Sep 2013) | 1 line
        
        Minor performance bump by not allocate manager variable struct if we don't need it
      ........
        r400138 | dlee | 2013-09-30 10:24:00 -0500 (Mon, 30 Sep 2013) | 23 lines
        
        Stasis performance improvements
        
        This patch addresses several performance problems that were found in
        the initial performance testing of Asterisk 12.
        
        The Stasis dispatch object was allocated as an AO2 object, even though
        it has a very confined lifecycle. This was replaced with a straight
        ast_malloc().
        
        The Stasis message router was spending an inordinate amount of time
        searching hash tables. In this case, most of our routers had 6 or
        fewer routes in them to begin with. This was replaced with an array
        that's searched linearly for the route.
        
        We more heavily rely on AO2 objects in Asterisk 12, and the memset()
        in ao2_ref() actually became noticeable on the profile. This was
        #ifdef'ed to only run when AO2_DEBUG was enabled.
        
        After being misled by an erroneous comment in taskprocessor.c during
        profiling, the wrong comment was removed.
        
        Review: https://reviewboard.asterisk.org/r/2873/
      ........
        r400178 | dlee | 2013-09-30 13:26:27 -0500 (Mon, 30 Sep 2013) | 24 lines
        
        Taskprocessor optimization; switch Stasis to use taskprocessors
        
        This patch optimizes taskprocessor to use a semaphore for signaling,
        which the OS can do a better job at managing contention and waiting
        that we can with a mutex and condition.
        
        The taskprocessor execution was also slightly optimized to reduce the
        number of locks taken.
        
        The only observable difference in the taskprocessor implementation is
        that when the final reference to the taskprocessor goes away, it will
        execute all tasks to completion instead of discarding the unexecuted
        tasks.
        
        For systems where unnamed semaphores are not supported, a really
        simple semaphore implementation is provided. (Which gives identical
        performance as the original taskprocessor implementation).
        
        The way we ended up implementing Stasis caused the threadpool to be a
        burden instead of a boost to performance. This was switched to just
        use taskprocessors directly for subscriptions.
        
        Review: https://reviewboard.asterisk.org/r/2881/
      ........
        r400180 | dlee | 2013-09-30 13:39:34 -0500 (Mon, 30 Sep 2013) | 28 lines
        
        Optimize how Stasis forwards are dispatched
        
        This patch optimizes how forwards are dispatched in Stasis.
        
        Originally, forwards were dispatched as subscriptions that are invoked
        on the publishing thread. This did not account for the vast number of
        forwards we would end up having in the system, and the amount of work it
        would take to walk though the forward subscriptions.
        
        This patch modifies Stasis so that rather than walking the tree of
        forwards on every dispatch, when forwards and subscriptions are changed,
        the subscriber list for every topic in the tree is changed.
        
        This has a couple of benefits. First, this reduces the workload of
        dispatching messages. It also reduces contention when dispatching to
        different topics that happen to forward to the same aggregation topic
        (as happens with all of the channel, bridge and endpoint topics).
        
        Since forwards are no longer subscriptions, the bulk of this patch is
        simply changing stasis_subscription objects to stasis_forward objects
        (which, admittedly, I should have done in the first place.)
        
        Since this required me to yet again put in a growing array, I finally
        abstracted that out into a set of ast_vector macros in
        asterisk/vector.h.
        
        Review: https://reviewboard.asterisk.org/r/2883/
      ........
        r400181 | dlee | 2013-09-30 13:48:57 -0500 (Mon, 30 Sep 2013) | 28 lines
        
        Remove dispatch object allocation from Stasis publishing
        
        While looking for areas for performance improvement, I realized that an
        unused feature in Stasis was negatively impacting performance.
        
        When a message is sent to a subscriber, a dispatch object is allocated
        for the dispatch, containing the topic the message was published to, the
        subscriber the message is being sent to, and the message itself.
        
        The topic is actually unused by any subscriber in Asterisk today. And
        the subscriber is associated with the taskprocessor the message is being
        dispatched to.
        
        First, this patch removes the unused topic parameter from Stasis
        subscription callbacks.
        
        Second, this patch introduces the concept of taskprocessor local data,
        data that may be set on a taskprocessor and provided along with the data
        pointer when a task is pushed using the ast_taskprocessor_push_local()
        call. This allows the task to have both data specific to that
        taskprocessor, in addition to data specific to that invocation.
        
        With those two changes, the dispatch object can be removed completely,
        and the message is simply refcounted and sent directly to the
        taskprocessor.
        
        Review: https://reviewboard.asterisk.org/r/2884/
      ........
      
      Merged revisions 399887,400138,400178,400180-400181 from http://svn.asterisk.org/svn/asterisk/branches/12
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@400186 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      2de42c2a
    • Kinsey Moore's avatar
      chan_sip: Allow Asterisk to retry after 403 on register · b44ce141
      Kinsey Moore authored
      This adds a global option in chan_sip to allow it to continue
      attempting registration if a 403 is received, clearing the cached nonce
      and treating it as a non-fatal response. Normally, this would cause
      registration attempts to that endpoint to stop.
      
      This also adds a similar per-outbound-registration option to chan_pjsip
      which allows the retry interval to be altered for 403 responses to
      REGISTER requests.
      
      (closes issue ASTERISK-17138)
      Review: https://reviewboard.asterisk.org/r/2874/
      Reported by: Rudi
      ........
      
      Merged revisions 400137 from http://svn.asterisk.org/svn/asterisk/branches/1.8
      ........
      
      Merged revisions 400140 from http://svn.asterisk.org/svn/asterisk/branches/11
      ........
      
      Merged revisions 400141 from http://svn.asterisk.org/svn/asterisk/branches/12
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@400142 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      b44ce141
  28. Sep 28, 2013
  29. Sep 27, 2013
  30. Sep 11, 2013
  31. Aug 30, 2013
  32. Aug 29, 2013
  33. Aug 23, 2013
  34. Aug 20, 2013
  35. Aug 15, 2013
  36. Jul 31, 2013
  37. Jul 30, 2013
    • Mark Michelson's avatar
      The large GULP->PJSIP renaming effort. · 735b30ad
      Mark Michelson authored
      The general gist is to have a clear boundary between old SIP stuff
      and new SIP stuff by having the word "SIP" for old stuff and "PJSIP"
      for new stuff. Here's a brief rundown of the changes:
      
      * The word "Gulp" in dialstrings, functions, and CLI commands is now
        "PJSIP"
      * chan_gulp.c is now chan_pjsip.c
      * Function names in chan_gulp.c that were "gulp_*" are now "chan_pjsip_*"
      * All files that were "res_sip*" are now "res_pjsip*"
      * The "res_sip" directory is now "res_pjsip"
      * Files in the "res_pjsip" directory that began with "sip_*" are now "pjsip_*"
      * The configuration file is now "pjsip.conf" instead of "res_sip.conf"
      * The module info for all PJSIP-related files now uses "PJSIP" instead of "SIP"
      * CLI and AMI commands created by Asterisk's PJSIP modules now have "pjsip" as
      the starting word instead of "sip"
      
      
      
      git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@395764 65c4cc65-6c06-0410-ace0-fbb531ad65f3
      735b30ad
Loading