Skip Menu |

This queue is for tickets about the POE-Component-Client-Keepalive CPAN distribution.

Report information
The Basics
Id: 47013
Status: resolved
Priority: 0/
Queue: POE-Component-Client-Keepalive

People
Owner: Nobody in particular
Requestors: loofort [...] gmail.com
Cc:
AdminCc:

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



Subject: bug-POE-Component-Client-Keepalive
Date: Tue, 16 Jun 2009 19:34:14 +0300
To: bug-POE-Component-Client-Keepalive [...] rt.cpan.org
From: Ilia Kandrashou <loofort [...] gmail.com>
When POE::Component::Client::Keepalive fires ka_request_timeout event for request with no wheel (request is in SF_QUEUE), then it executes respond_with_error, but doesn’t remove request from SF_QUEUE. So SF_QUEUE never become empty. And when new request executes _ka_add_to_queue, and check if SF_QUEUE is not empty then do nothing. And if currently no active connection than ka_wake_up never be executed. From this moment all new request via POE::Component::Client::HTTP returns timeouted response.
On Tue Jun 16 12:34:43 2009, loofort@gmail.com wrote: Show quoted text
> When POE::Component::Client::Keepalive fires ka_request_timeout event > for request with no wheel (request is in SF_QUEUE), then it executes > respond_with_error, but doesn’t remove request from SF_QUEUE. > > So SF_QUEUE never become empty. > > And when new request executes _ka_add_to_queue, and check if SF_QUEUE > is not empty then do nothing. And if currently no active connection > than ka_wake_up never be executed. > From this moment all new request via POE::Component::Client::HTTP > returns timeouted response.
Hi! Do you have a test program I could run to trigger this? I'll try to make one myself, but it could be a while.
Subject: Re: [rt.cpan.org #47013] bug-POE-Component-Client-Keepalive
Date: Thu, 30 Jul 2009 13:04:21 +0300
To: bug-POE-Component-Client-Keepalive [...] rt.cpan.org
From: Ilia Kandrashou <loofort [...] gmail.com>
Sorry, but a can't provide you with test prog. I discovered this bug in deeply integrated part of big program. 2009/7/26 Rocco Caputo via RT <bug-POE-Component-Client-Keepalive@rt.cpan.org>: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=47013 > > > On Tue Jun 16 12:34:43 2009, loofort@gmail.com wrote:
>> When POE::Component::Client::Keepalive fires ka_request_timeout event >> for request with no wheel (request is in SF_QUEUE), then it executes >> respond_with_error, but doesn’t remove request from SF_QUEUE. >> >> So SF_QUEUE never become empty. >> >> And when new request executes _ka_add_to_queue, and check if SF_QUEUE >> is not empty then do nothing. And if currently no active connection >> than ka_wake_up never be executed. >> From this moment all new request via POE::Component::Client::HTTP >> returns timeouted response.
> > Hi!  Do you have a test program I could run to trigger this?  I'll try > to make one myself, but it could be a while. > >
I haven't been able to reproduce the problem. I am leaving the ticket open and flagged as "stalled". Perhaps someone will contribute more information later.
Nobody else has reproduced this in just over a year. I assume it was fixed as a side effect of some other commit, but I can't be sure. Please reopen with more information if the problem happens again. Thanks!