I understood coordinate node broadcasts the search request and gathers the results received from data nodes using "query then fetch phase" .
Does it do it in one iteration of "query then fetch phase" or a search request can have multiple iterations of query then fetch phases?
Say taking a complex filter query taken from Elastic Search Complex Scenario (credits : Val, Thanks @Val), will it involve multiple iterations of query then fetch phases? what are the steps the coordinating node does to answer this query
{
"query": {
"filtered": {
"query": {
"match": {
"product_name": "xxx"
}
},
"filter": {
"bool": {
"must": [
{
"range": {
"price": {
"gte": 20,
"lte": 170
}
}
},
{
"term": {
"availability": "availability_status"
}
},
{
"term": {
"user": 1
}
}
]
}
}
}
}
}