php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #59064 gearman_client_run_tasks: Assertion `client->task != ((void *)0)`failed.
Submitted: 2010-02-07 14:29 UTC Modified: 2011-08-20 07:44 UTC
From: robert dot de dot wilde at online dot nl Assigned: hradtke (profile)
Status: No Feedback Package: gearman (PECL)
PHP Version: 5_3.1RC2 OS: CentOS 5.4
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2010-02-07 14:29 UTC] robert dot de dot wilde at online dot nl
Description:
------------
I'm using libgearman 0.11 with PECL PHP extension gearman 
0.6.0 on CentOS 5.4 using Apache 2.2 and PHP 5.3.

While running a Gearman Worker I got this error:
php: client.c:773: gearman_client_run_tasks: Assertion 
`client->task != ((void *)0)`failed.

Context; I made this PHP script:
http://pastie.org/private/jzm9ox4kogpllz9onl7ma

When I start one worker, everything goes smooth. When I 
start an additional second worker, no problem. When I start 
the third worker, the first worker crashes with the error 
above. At the moment the third worker starts, it registers 
to the first worker (addNeighbour). This 'addNeighbour' will 
call the 'updateNeighbour' function on the first Worker 
itself. In the loop, the IF-statement will return false for 
the first time, so the else-part is executed. When it comes 
to #110 the crash occurs.

Little strange to me is that after the first worker crashed, 
I can start as many additional workers as I like... they 
won't crash.

This bug keeps me from using Gearman in PHP at the moment. 
Thanks in advance!


This bug is replicated on Gearman itself: 
https://bugs.launchpad.net/gearmand/+bug/518512

Reproduce code:
---------------
http://pastie.org/private/jzm9ox4kogpllz9onl7ma

Expected result:
----------------
Nothing, just running the jobs, adding the neighbour and 
update others.

Actual result:
--------------
php: client.c:773: gearman_client_run_tasks: Assertion 
`client->task != ((void *)0)`failed.

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2011-05-15 03:58 UTC] hradtke@php.net
Your pastebin link does not work for me.

Please trying your script against the 0.70 version.
 [2011-08-20 07:44 UTC] hradtke@php.net
No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Open". Thank you.


 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue Mar 19 07:01:29 2024 UTC