I have a question related to coordinating nodes. I understand the purpose of coordinating nodes, at least in regards to search queries and bulk indexing. However, I am unsure how things work with writes and reads (by ID).
There will of course always be a node that receives the API request from the client, which will be the coordinating node. This also applies for write and read requests. My doubt is how the communication works from here, after routing is done. For instance, after a read request for document 123 is routed to a primary or replica shard, is the coordinating node still responsible for sending the response to the client, or is the request forwarded to the appropriate shard, which then responds to the client? Basically I am wondering if the node that received the query in the first place (the coordinating node) will always be the one responding to the client. That is true for search requests, for instance, but is it also the case for reads by ID and writes?
My guess would be that the coordinating node will always be responsible for responding to the client. Could someone confirm whether or not this assumption is true?
Thanks in advance!