If you have several tokens, for example after a WordDelimiterFilter, there is almost no way NOT to trigger a MultiPhraseQuery when you have catenateWords="1" or catenateAll="1".
For example the title: Jokers Wild In the index it is: jokers wild, jokers, wild, jokerswild. When you query "jOkerswild" it becomes these tokens after the WordDelimiterFilter/LowercaseFilter: j(0,1,positionInc=1), okerswild(1,10,positionInc=1), jokerswild(0,10,positionInc=0) In the QueryParser, its j=positionCount(1), okerswild=positionCount(2), jokerswild=positionCount(2) Thus there is no way for jokerswild to match b/c the positionCount > 1 and QueryParser will turn that into a MultiPhraseQuery instead of a BooleanQuery. Even though severalTokensAtSamePosition=true (b/c j=startOffset(0) and jokerswild=startOffset(0)). Isn't this a bug? How could 2 tokens at the same position be treated as a MultiPhraseQuery? -nc