Closed awdrius closed 9 years ago
hi Audrius, are you able to simulate the problem repeatedly with some piece of code or an unit test? veny
Hi Veny,
I can see it fairly consistent on the production servers under load (but not that high load). I am looking into networking stack just in case but will try to put a small test script to see if I can recreate it on demand.
Hey again,
so I've turned on debug level for gearmand daemon and it looks like it send JOB_CREATED OK. I think that somehow data is lost on socket/buffer or something like that. For a test period I have switched to another multi-server supporting gearman module called abraxas and so far it looks OK. I will post an update if it starts messing with data too but if there is no followup - it means that is 'just works'(tm).
P.S. I could not recreate the issue with any of my test scripts so I abandoned the idea.
Hi,
when nodejs app is under load, I start seeing 'unknown job' errors. Once one pops up, it starts cascading and is followed by more and more errors (I suspect it's because of the jobsWaiting4Created being out of sync?) until node app is restarted. I added some debug code of my own + enabled debug logging level for GearmaNode:
You can easily spot the issue if you look for mwcV8bBoyuCjXq7ZPjQmFUey0OY= string.
Job number 2186372 is created and a new job is submitted (so I'd expect job number 2186373). There comes response for WORK_COMPLETE for the previously submitted 2186372 and it is followed by another job sumit request (which gets job number 2186374). It is then followed by response WORK_COMPLETE for job number 2186373 which is not available, but from the UNIQUE_ID I can see that it's a response to the job submitted between jobs 2186372 and 2186374.
At the moment I'm at a loss, either server did not send JOB_CREATED for that particular response or somehow data was not received/parsed or there are instances when gearmand responds with WORK_COMPLETE immediately (which would be unexpected).
I'm using gearmand 1.1.8 and GearmanNode info: GearmaNode 0.1.8, running on Node.js v0.10.32 [freebsd x64]