Você não pode procurar por "o" porque é uma palavra de parada, e as palavras de parada não são indexadas. Você pode encontrar uma lista de palavras irrelevantes em https://github.com/mongodb/mongo/blob/master/src/mongo/db/fts/stop_words_english.txt
Você pode realmente ver o que está sendo tentado corresponder na string de depuração:
queryDebugString: "||||the||"
O primeiro elemento está vazio aqui, o que significa que nenhuma correspondência é feita. Se você olhar o que acontece para
'"cat" AND "purple"'
, a string de depuração é:queryDebugString: "cat|purpl||||cat|purple||"
O(s) primeiro(s) elemento(s) agora são
cat|purpl
- isso mostra que a derivação também foi aplicada para purple
.