2016-08-17 4 views
1

В mangoDB -3.0.7 я создал индекс с двумя полями. Я могу запускать сортировку на тех листах, когда я даю только восходящий/нисходящий. Примерmongodb sort с несколькими полями

{ a: 1, b: 1 } 

Но я, когда я запускаю запрос как,

{ a: 1, b: -1 } 
{ a: -1, b: 1 } 

Я получаю следующее сообщение об ошибке,

Error: error: { 
    "$err" : "Executor error: Overflow sort stage buffered data usage of 33554499 bytes exceeds internal limit of 33554432 bytes", 
    "code" : 17144 
} 

Я нашел это: https://docs.mongodb.com/manual/tutorial/sort-results-with-indexes/#sort-and-index-prefix

Как я могу сделать такого рода в MongoDB. ? Как создать индекс/любое обходное решение для этого?

+0

Связанный: http://stackoverflow.com/questions/27023622/перелив сортировка стадия буферизации-данные использование-превышает внутренние-предельный – chridam

ответ

0

да упоминается ссылка правильно

, если вы хотите отсортировать, как этот

{ a: 1, b: -1 } 
{ a: -1, b: 1 } 

создать индекс таким образом

db.collection.createIndex({ { a: 1, b: -1 } }) 
Смежные вопросы