The problem
Hi. I have what seems to me as a strange problem and I'm at a loss with it:
Let's take:
tags = [ ObjectId('a'), ObjectId('b') ]
search = { $search: 'abc' }
Now the following query works fine:
db.entries.find({ $or: [ {$text:search} ] })
And this one too:
db.entries.find({ $or: [ {tags:{$in:tags}} ] })
But combine them:
db.entries.find({ $or: [ {$text:search}, {tags:{$in:tags}} ] })
And I get the following error:
Unable to execute query: error processing query: ns=db.entries
Tree:
$or
tags $in [ ObjectId('a'), ObjectId('b') ]
TEXT : query=abc, language=, tag=NULL
Sort: {}
Proj: {}
No query solutions
Meta-data
- I'm using MongoDB version
2.6.4
. - Combining either of the conditions with a simple
{_id:"c"}
expression works fine. - I do have my text-indices set up properly.
- The order in which the conditions appear in the
$or
-array doesn't influence the outcome.
My question
Help? :(