[ https://issues.apache.org/jira/browse/SOLR-10619?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15999652#comment-15999652 ]
Scott Blum commented on SOLR-10619: ----------------------------------- Good thought. I was debating the same thing in my head. In normal Solr operation, it would be an exceptional case, since Overseer is single-consumer, it should almost never be the case that resolving the head node to ZK fails. But for the sake of generality, I can see both sides: - If you continue trying to iterate through in-memory children, you might hit a really long list of failures (many, many round trips to ZK) before hitting the next live child. Theoretically, re-fetching the child list from ZK would be faster to get a fresh view. - But, in a true multi-consumer use case, re-fetching the child list every time you get a "miss" because someone else consumed ahead of you would cause the many consumers to thrash a lot. So I'm a little torn, since option 1 might be slightly better for Overseer in particular, but option 2 is clearly more general. Thoughts? > When DQ.knowChildren is not empty, DQ should not refetch node children in > case of single consumer > ------------------------------------------------------------------------------------------------- > > Key: SOLR-10619 > URL: https://issues.apache.org/jira/browse/SOLR-10619 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) > Reporter: Cao Manh Dat > Assignee: Cao Manh Dat > Attachments: SOLR-10619.patch, SOLR-10619.patch > > > Right now, for every time childWatcher is kicked off. We refetch all children > of DQ's node. It is a wasted in case of single consumer. -- This message was sent by Atlassian JIRA (v6.3.15#6346) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org