[asterisk-bugs] [Asterisk 0018284]: [patch] devicestate is not aggregated from all received events
Asterisk Bug Tracker
noreply at bugs.digium.com
Fri Nov 19 18:45:53 CST 2010
The following issue has been RESOLVED.
======================================================================
https://issues.asterisk.org/view.php?id=18284
======================================================================
Reported By: klaus3000
Assigned To: russell
======================================================================
Project: Asterisk
Issue ID: 18284
Category: Core/General
Reproducibility: always
Severity: minor
Priority: normal
Status: resolved
Asterisk Version: 1.8.0
JIRA: SWP-2536
Regression: No
Reviewboard Link:
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Request Review:
Resolution: fixed
Fixed in Version:
======================================================================
Date Submitted: 2010-11-09 11:29 CST
Last Modified: 2010-11-19 18:45 CST
======================================================================
Summary: [patch] devicestate is not aggregated from all
received events
Description:
When distributed devicestate (res_ais) is used, Asterisk should calculate
an aggregated device state based on local and received device states. This
is currently not done.
See
http://lists.digium.com/pipermail/asterisk-dev/2010-November/046926.html
and
http://lists.digium.com/pipermail/asterisk-dev/2010-November/046915.html
======================================================================
Relationships ID Summary
----------------------------------------------------------------------
related to 0018280 EID is not copied when event is receive...
======================================================================
----------------------------------------------------------------------
(0129003) svnbot (reporter) - 2010-11-19 18:45
https://issues.asterisk.org/view.php?id=18284#c129003
----------------------------------------------------------------------
Repository: asterisk
Revision: 295710
U branches/1.6.2/include/asterisk/event.h
U branches/1.6.2/main/event.c
------------------------------------------------------------------------
r295710 | russell | 2010-11-19 18:45:52 -0600 (Fri, 19 Nov 2010) | 29
lines
Fix cache of device state changes for multiple servers.
This patch addresses a regression where device states across multiple
servers
were not being processing completely correctly. The code works to
determine
the overall state by looking at the last known state of a device on each
server. However, there was a regression due to some invasive rewrites of
how
the cache works that led to the cache only storing the last device state
change
for a device, regardless of which server it was on.
The code is set up to cache device state change events by ensuring that
each
event in the cache has a unique device name + entity ID (server ID). The
code
that was responsible for comparing raw information elements (which EID is)
always returned a match due to a memcmp() with a length of 0.
There isn't much code to fix the actual bug. This patch also introduces a
new
CLI command that was very useful for debugging this problem. The command
allows you to dump the contents of the event cache.
(closes issue https://issues.asterisk.org/view.php?id=18284)
Reported by: klaus3000
Patches:
issue18284.rev1.txt uploaded by russell (license 2)
Tested by: russell, klaus3000
(closes issue https://issues.asterisk.org/view.php?id=18280)
Reported by: klaus3000
Review: https://reviewboard.asterisk.org/r/1012/
------------------------------------------------------------------------
http://svn.digium.com/view/asterisk?view=rev&revision=295710
Issue History
Date Modified Username Field Change
======================================================================
2010-11-19 18:45 svnbot Note Added: 0129003
2010-11-19 18:45 svnbot Status feedback => assigned
2010-11-19 18:45 svnbot Status assigned => resolved
2010-11-19 18:45 svnbot Resolution open => fixed
======================================================================
More information about the asterisk-bugs
mailing list