[SERVER-14142] Runner error: Overflow Created: 03/Jun/14 Updated: 10/Dec/14 Resolved: 08/Jul/14 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Querying |
| Affects Version/s: | 2.6.1 |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | flyinflash | Assignee: | Thomas Rueckstiess |
| Resolution: | Done | Votes: | 1 |
| Labels: | bug, driver | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Ubuntu 12.04 64bit |
||
| Operating System: | Linux |
| Participants: |
| Description |
|
When I do query qs = MyModel.objects.all() It always raises exception pymongo.errors.OperationFailure: database error: Runner error: Overflow sort stage buffered data usage of 33555614 bytes exceeds internal limit of 33554432 bytes |
| Comments |
| Comment by Thomas Rueckstiess [ 08/Jul/14 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Hi, from the information you provided, we can now see that the query was on the movie.movie collection of the form:
There is an index present on created_ts, but it is a sparse index.
The planner did not use this index, probably because the result set was not entirely present in the index:
This is a new behavior in 2.6, documented under Sparse Indexes.
You can either re-create the index to be non-sparse (the default), or use an explicit hint to force the use of that index. However, you may get incomplete results in the latter case. I hope this answers your question. I'm closing this ticket as "works as designed". Regards, | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by flyinflash [ 29/Jun/14 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Thomas Rueckstiess [ 26/Jun/14 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Hi flyinflash, could you please provide the list of indexes on the movie.movie collection? I'd like to see if there is an appropriate index that could support the sort. You can do that with:
Please attach the output here as a comment. Thanks, | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by J Rassi [ 26/Jun/14 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
I've re-opened the issue. Could you also please provide the output of running db.movie.getIndexes()? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by flyinflash [ 26/Jun/14 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
It seems I can't reopen this issue. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by flyinflash [ 26/Jun/14 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
MongoDB shell version: 2.6.3 ubuntu 12.04 LTS
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by J Rassi [ 06/Jun/14 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
I'm resolving this ticket as "Cannot Reproduce". Please re-open it with the requested information if you continue to encounter this issue. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by J Rassi [ 03/Jun/14 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
In addition to the server log output, could you also provide the output of running db.<collection>.getIndexes() at the shell (replacing <collection> with the name of the collection used here in your model)? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Bernie Hackett [ 03/Jun/14 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Hi, this error is from the server. Can you provide the server logs for the time period this error occurred? |