pascalopitz/nodestalker

Issue with large jobs?

vsiv opened this issue · 10 comments

vsiv commented

I am running into a problem where reserve just returns the initial line - id . Hence the job object is empty.

This only seems to happen when my jobs exceed a certain size. Have been able to reproduce with 100KB job size. I have up'd the max job size limit for bs.

Anybody else see such a behavior?

Hey ... haven't come across this one ... can you isolate it in a test?

Have you checked beanstalkd's max-job-size?

Hi, got the same issue. Already changed Beanstalkd max job size to a higher value, but the problem still comes from nodestalker. Do you know how to deal with ?

received job: [ '61042', '1683' ]
processing...
undefined //console.log(job.id)

You should try by adding a long "lorem ipsum" string as a job to get the error.

Maybe we should start with a test? How large is the message?

On 28 August 2014 18:19, idomyjob notifications@github.com wrote:

Hi, got the same issue. Already changed Beanstalkd max job size to a
higher value, but the problem still comes from nodestalker. Do you know how
to deal with ?


Reply to this email directly or view it on GitHub
#19 (comment)
.

As you can see above in my message, it seems that when the job length is too big, it prints job.id and job.length. And yep, when i check back my string length, it's 1683 chars.

received job: [ '61042', '1683' ] //console.log('received job:', job);

Sorry, email notifications don't show code blocks ...

Ok, no problem, this is the code block :

received job: [ '61042', '1683’ ] //console.log('received job:', job);
processing...
undefined //console.log(job.id)

Ok, the reason why this is happening is that beanstalkd send the response
in multiple chunks, and thus the BeanstalkCommand.prototype.responseHandler
that parses the message gets a malformed one first and then called a few
times after with more malformed data.

What needs to happen is that the responseHandler looks at the first chink,
checks whether it was long enough, and then waits for all the remaining
chunks to be send trough before parsing the message.

Working on it, but I have no spare time just right at this moment :/

On 28 August 2014 19:02, idomyjob notifications@github.com wrote:

Ok, no problem, this is the code block :

received job: [ '61042', '1683’ ] //console.log('received job:', job);
processing...
undefined //console.log(job.id)

Regards,

Ludovic GEY - Founder
T : +33972471469 M : +33671514732
@idomyjob @pushlibcom
http://www.pushlib.com

Le 28 août 2014 à 11:30, pascalopitz notifications@github.com a écrit :

Sorry, email notifications don't show code blocks ...


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHub
#19 (comment)
.

👍 Thanks. Please, keep me in touch.

Apologies this took forever.