[
https://issues.apache.org/jira/browse/HIVE-20349?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16589795#comment-16589795
]
Ashutosh Chauhan commented on HIVE-20349:
-----------------------------------------
+1
> Implement Retry Logic in HiveDruidSplit for Scan Queries
> --------------------------------------------------------
>
> Key: HIVE-20349
> URL: https://issues.apache.org/jira/browse/HIVE-20349
> Project: Hive
> Issue Type: Bug
> Components: Druid integration
> Reporter: Nishant Bangarwa
> Assignee: Nishant Bangarwa
> Priority: Major
> Attachments: HIVE-20349.1.patch, HIVE-20349.2.patch, HIVE-20349.patch
>
>
> while distributing druid scan query we check where the segments are loaded
> and then each HiveDruidSplit directly queries the historical node.
> There are few cases when we need to retry and refetch the segments.
> # The segment is loaded on multiple historical nodes and one of them went
> down. in this case when we do not get response from one segment, we query the
> next replica.
> # The segment was loaded onto a realtime task and was handed over, when we
> query the realtime task has already finished. In this case there is no
> replica. The Split needs to query the broker again for the location of the
> segment and then send the query to correct historical node.
> This is also the root cause of failure of druidkafkamini_basic.q test, where
> the segment handover happens before the scan query is executed.
> Note: This is not a problem when we are directly querying Druid brokers as
> the broker handles the retry logic.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)