-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dead actors? #233
Comments
That backtrace would imply that the manager died somehow. You don't see an error in the log? |
Unfortunately, no. Anything I can do to debug? Where should I start? |
Try setting celluloids global error handler and see if that catches the problem. On 11 Jun 2012, at 00:19, Dimitrij Denissenkoreply@reply.github.com wrote:
|
Hmm, all I get is
As said, doesn't every time, but only every now and then. |
Not sure if that additional info helps, but I don't think there is anything wrong with my worker. Here's what currently happens when I
There are 33 items in the queue, but they are simply not picked up. I would expect to see something like:
But the worker doesn't even start. Pressing CTRL-C then returns the usual:
|
@dim I don't know what to tell you. Others aren't reporting this issue so I have to assume it is specific to your environment. Maybe open a Celluloid issue because the actor appears to be dying silently? |
Hey! I finally figured it out and am happy to share. Although almost impossible to debug, I traced the actor's death to: https://github.com/mperham/sidekiq/blob/2c4be4c/lib/sidekiq/manager.rb#L113. My jobs (often) contain a significant amount of information and there is a lot to parse. Sidekiq offloads that work to Interesting stuff, just took me a whole week of debugging to "get there". Not sure what to do about it. I suspect most Sidekiq users have small jobs, so the 4k limit isn't a big deal. It would still be nice to mention it somewhere in the Troubleshooting section. Thanks, D |
Nice, thanks for tracking this down. Yajl is native, so it uses the C stack and doesn't have that 4k limit. I had considered adding a log warning to Sidekiq if a message is greater than 64k. Ideally Sidekiq messages should be a set of IDs to process and not include a lot of state. |
Hmm, |
I'm running Sidekiq 2.0.1 (on Heroku) and workers simply seem to die during processing. I'm not sure how to debug this issue, but here's what happens:
The processin stops here, although there are still of items in the queue. Pressing CTRL+C reveals:
Any clues? Thanks, Dim
The text was updated successfully, but these errors were encountered: