On running my ES query, total hits received are shown to be 7746
Yet, setting the size param to 50, the query is returning only 46 results.
What could be the reason for ES not returning the last 4 results?
The top score is 1.17, while that of the 46th result is 0.17.
On setting the size to 70, the lowest ranking record has score 0.15. Thus score of the 50th record must be between the two value.
Does ES maintain a threshold of sorts, based on the top score? Below which results are not returned despite the size?
Thanks for the prompt response.
The index contains documents, total size being: 1.9gb, no. of docs ~ 0.5 million This is what the index mapping looks like:
I expect the function_score is the culprit here - if vanilla ranking was broken in the way you described we'd certainly know about it.
What version of elasticsearch are you using here?
In the interests of getting down to the smallest reproducible example we can test do you see this issue if you replace the multi_match with a match_all query?
I realised later that their was some kind of filtering happening in the system, at a later stage, which i had missed initially. The number of articles being returned right after the query was executed were correct.
Sorry for the trouble.
Thank you for all the help!
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.