[JAVA-542] CursorNotFound Exception Created: 18/Mar/12  Updated: 04/Dec/13  Resolved: 04/Sep/12

Status: Closed
Project: Java Driver
Component/s: Performance
Affects Version/s: 2.0
Fix Version/s: None

Type: Bug Priority: Major - P3
Reporter: Benjamin Darfler Assignee: Jeffrey Yemin
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Scala 2.9, Java 1.6, Ubuntu 10.04, MongoDB 2.0.1



 Description   

Scott asked me to open this bug. We have been seeing CursorNotFound exceptions very infrequently in production. I added some client side logging the result of which is the following:

resultSize=242 queryTime=0 toListTime=108 server=localhost:27021 cursorId=0
resultSize=375 queryTime=0 toListTime=27 server=localhost:27021 cursorId=0
resultSize=227 queryTime=0 toListTime=130 server=localhost:27021 cursorId=0
resultSize=242 queryTime=0 toListTime=179 server=localhost:27021 cursorId=0

The toListTime is the time in ms that it took to read the entire cursor into memory. We do this immediately after the query to get the closest thing to a snapshot view of the world when the query occurred. We were getting odd data races otherwise.



 Comments   
Comment by Raman Yushkou [ 09/Nov/12 ]

We have faced with this issue on following configuration:
db version: 2.0.2
java driver version: 2.8.0

Can we reopen this ticket?

Comment by Jeffrey Yemin [ 04/Sep/12 ]

Haven't heard back from you in a while, so closing this out. Please re-open if necessary.

Comment by Jeffrey Yemin [ 27/Aug/12 ]

Were you able to add numGetMores to your logging? If so, can you report the results?

Comment by Benjamin Darfler [ 19/Mar/12 ]

Whatever Casbah 2.1.5.0 wraps.

Comment by Scott Hernandez (Inactive) [ 19/Mar/12 ]

Please add numGetMores() to the logging. I may have been pre-mature suggesting we move this to a java issue as it may still be sharding related. The next sample should help us see if it is java related or server related.

What version of the java driver library are you using?

Comment by Benjamin Darfler [ 19/Mar/12 ]

The collection has an average document size of 400 bytes. I'm not sure of the numGetMores() value.

I can add it to our logging the next time this happens.

Those runs are only when we got CursorNotFound exceptions. I wouldn't say things were necessarily slow.

This is a sharded system. Additionally, I believe this occurs after we manually move chunks around.

Comment by Scott Hernandez (Inactive) [ 19/Mar/12 ]

What is the document size for these queries and what is the value of numGetMores() from the cursor for these runs? Basically, did they require more than one round-trip?

Were these runs when you got a CursorNotFound, or just when things were slow?

These also came from a aharded system, correct?

Generated at Thu Feb 08 08:52:32 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.