MongoCursor>>execute raising 'Unexpected responseTo in response'

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

MongoCursor>>execute raising 'Unexpected responseTo in response'

sebastianconcept
Hi All, Holger...

I’ve seen this today:


After talking with some people in the Pharo chat group at Discord about this erratic error I’m having with MongoTalk’s MongoCursor .


Once it happens, the stream stays open and Mongo says isValid true but no other operations can be executed.

I’ve loaded MongoTalk with:

Metacello new 
    githubUser: 'pharo-nosql' project: 'voyage' commitish:'1.?' path: 'mc';
    baseline: 'Voyage';
    load: 'mongo’.

in a Pharo 6.1 image.

Did this Unexpected responseTo happened again to you?

nextRequestID has the code you mention in the issue:

nextRequestID
^requestID := requestID + 1 bitAnd: 16r3FFFFFFF

Do you have any further hint on why the issue? Thanks!


Sebastian
Reply | Threaded
Open this post in threaded view
|

Re: MongoCursor>>execute raising 'Unexpected responseTo in response'

Holger Freyther


> On 17. Dec 2018, at 01:04, Sebastian Sastre <[hidden email]> wrote:
>
> Hi All, Holger...

The Mongo protocol allows multiple requests to be in transient and is using a client assigned id to indicate which request was responded to. MongoTalk is only fit to send/handle one request at a time per socket.

Without more context it is difficult to say which failure mode you have but I can see these possible ones:

1.) Due to concurrency you are using the same connection but make more than one request.
2.) Our request id goes wrong (not sure how would this happen)
3.) Mongod sent a unsolicited response
4.) Many other things I can't think of right now.

Is 1st) possible in your code? Do you have a packet trace to see which _responds_ you received and which request was answered?

holger


> I’ve seen this today:
> http://forum.world.st/MongoCursor-gt-gt-execute-and-MongoTalk-changes-td4889293.html
>
>
> After talking with some people in the Pharo chat group at Discord about this erratic error I’m having with MongoTalk’s MongoCursor .
>
> <app_image.png>
>
> Once it happens, the stream stays open and Mongo says isValid true but no other operations can be executed.
>
> I’ve loaded MongoTalk with:
>
> Metacello new
>     githubUser: 'pharo-nosql' project: 'voyage' commitish:'1.?' path: 'mc';
>     baseline: 'Voyage';
>     load: 'mongo’.
>
> in a Pharo 6.1 image.
>
> Did this Unexpected responseTo happened again to you?
>
> nextRequestID has the code you mention in the issue:
>
> nextRequestID
> ^requestID := requestID + 1 bitAnd: 16r3FFFFFFF
>
> Do you have any further hint on why the issue? Thanks!
>
>
> Sebastian