[
https://issues.apache.org/jira/browse/DRILL-4882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15470503#comment-15470503
]
Tugdual Grall commented on DRILL-4882:
--------------------------------------
I have started to work on a fix, the easiest will be to change Mongo Driver to
allow ReadPreference when using schema calls.
I have created a pull request in MongoDriver for this, and successfully tested
with Drill (only have to change the 3 lines listed in the bug description)
The PR is visible here:
https://github.com/mongodb/mongo-java-driver/pull/372
If Mongo community does not take this we have to find another solution (using
other commands, wrapping Driver classes to create new methods)
> Drill does not work when it has only access to "secondary nodes"
> ----------------------------------------------------------------
>
> Key: DRILL-4882
> URL: https://issues.apache.org/jira/browse/DRILL-4882
> Project: Apache Drill
> Issue Type: Bug
> Components: Storage - MongoDB
> Affects Versions: 1.6.0, 1.7.0, 1.8.0
> Environment: Drill Stand Alone
> Drill in MapR
> Reporter: Tugdual Grall
> Priority: Minor
>
> In some deployments, especially when doing analytics on MongoDB, the
> application, Drill in this case, only have access to secondary nodes.
> This is a common choice to avoid overloading the Mongo cluster.
> When we have such configuration Drill fail with various exception related to
> timeout/primary read preference.
> This is due to the fact that some of the "Schema Oriented" methods of
> MongoDriver are forcing the read preference to primary. The methods are used
> in the following place in Drill:
> 1-
> https://github.com/apache/drill/blob/1.8.0/contrib/storage-mongo/src/main/java/org/apache/drill/exec/store/mongo/schema/MongoSchemaFactory.java#L89
> 2-
> https://github.com/apache/drill/blob/1.8.0/contrib/storage-mongo/src/main/java/org/apache/drill/exec/store/mongo/schema/MongoSchemaFactory.java#L109
> and also the Run command to get information about the type of topology
> (sharded or not):
> 3-
> https://github.com/apache/drill/blob/1.8.0/contrib/storage-mongo/src/main/java/org/apache/drill/exec/store/mongo/MongoGroupScan.java#L167
> 3- could be fixed by simply adding a ReadPreference.primaryPreferred() but
> not sufficient since we need to have 1 & 2 fixed
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)