Skip Menu |

This queue is for tickets about the POE CPAN distribution.

Report information
The Basics
Id: 30342
Status: resolved
Priority: 0/
Queue: POE

People
Owner: Nobody in particular
Requestors: rdb [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Patches to update tracing
These patches improve alarm TRACE output. POE currently outputs TRACE_EVENT messages when an alarm is created, but not when it is adjusted or removed. These patches add TRACE output to delay_adjust and alarm_remove (by id).
Subject: kernel.diff
Index: poe-svn/lib/POE/Kernel.pm =================================================================== --- poe-svn/lib/POE/Kernel.pm (revision 2248) +++ poe-svn/lib/POE/Kernel.pm (working copy) @@ -2016,6 +2016,13 @@ my $my_delay = sub { $_[0]->[EV_SESSION] == $kr_active_session; }; + + if (TRACE_EVENTS) { + _warn( + "<ev> adjusted event $alarm_id by $seconds seconds", + ); + } + return $kr_queue->set_priority($alarm_id, $my_delay, time() + $seconds); }
Subject: events.diff
Index: poe-svn/lib/POE/Resource/Events.pm =================================================================== --- poe-svn/lib/POE/Resource/Events.pm (revision 2248) +++ poe-svn/lib/POE/Resource/Events.pm (working copy) @@ -162,6 +162,14 @@ my ($time, $id, $event) = $kr_queue->remove_item($alarm_id, $my_alarm); return unless defined $time; + if (TRACE_EVENTS) { + _warn( + "<ev> removed event $id ``", $event->[EV_NAME], + "'' to ", $self->_data_alias_loggable($session), + " at $time" + ); + } + $self->_data_ev_refcount_dec( @$event[EV_SOURCE, EV_SESSION] ); return ($time, $event); }
Thanks for the patches. Applied as revision 2284.