Merged revisions 123274 via svnmerge from
authorMark Michelson <mmichelson@digium.com>
Tue, 17 Jun 2008 15:57:43 +0000 (15:57 +0000)
committerMark Michelson <mmichelson@digium.com>
Tue, 17 Jun 2008 15:57:43 +0000 (15:57 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r123274 | mmichelson | 2008-06-17 10:56:55 -0500 (Tue, 17 Jun 2008) | 12 lines

davidw pointed out that the holdtime calculation used by
app_queue does not use "boxcar" filtering as the comments
say. The term "boxcar" means that the number of samples used
to calculate stays constant, with new samples replacing the
oldest ones. The queue holdtime calculation uses all holdtime
samples collected since the queue was loaded, so the comment
has been changed to be accurate.

(closes issue #12781)
Reported by: davidw

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@123275 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_queue.c

index 6d40c39..ad1a46a 100644 (file)
@@ -483,7 +483,7 @@ struct call_queue {
        int numperiodicannounce;            /*!< The number of periodic announcements configured */
        int randomperiodicannounce;         /*!< Are periodic announcments randomly chosen */
        int roundingseconds;                /*!< How many seconds do we round to? */
-       int holdtime;                       /*!< Current avg holdtime, based on recursive boxcar filter */
+       int holdtime;                       /*!< Current avg holdtime, based on an exponential average */
        int callscompleted;                 /*!< Number of queue calls completed */
        int callsabandoned;                 /*!< Number of queue calls abandoned */
        int servicelevel;                   /*!< seconds setting for servicelevel*/
@@ -1927,7 +1927,7 @@ static void recalc_holdtime(struct queue_ent *qe, int newholdtime)
 {
        int oldvalue;
 
-       /* Calculate holdtime using a recursive boxcar filter */
+       /* Calculate holdtime using an exponential average */
        /* Thanks to SRT for this contribution */
        /* 2^2 (4) is the filter coefficient; a higher exponent would give old entries more weight */