Това работи за мен:
> db.h.insert({x:15})
> db.h.createIndex({x:-1})
> db.h.find().min({x:20}).max({x:10})
{ "_id" : ObjectId("52fb6930253ac3dcf43b27f5"), "x" : 15 }
Вашият индекс може да има проблем с него.
Причината това да работи е, че индексът е обратното.
Представете си, че обръщате списък на главата му, това, което min и max ефективно казват, е да получите диапазон от този списък, като min е 10, а max е 20. Този диапазон обаче вече не съществува, тъй като списъкът е обърнат с главата надолу. Вместо това диапазонът трябва да бъде обърнат, за да съответства на списъка.