[
https://issues.apache.org/jira/browse/BEAM-12466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sachin Agarwal updated BEAM-12466:
----------------------------------
Component/s: website
> Add documentation and improved errors for QueryFn in MongoDbIO
> --------------------------------------------------------------
>
> Key: BEAM-12466
> URL: https://issues.apache.org/jira/browse/BEAM-12466
> Project: Beam
> Issue Type: Improvement
> Components: io-java-mongodb, website
> Reporter: Daniel Oliveira
> Priority: P3
> Labels: beginner, newbie, starter
>
> Currently the MongoDbIO.Read implementation assumes that the submitted
> QueryFn is one of the predefined QueryFns in Beam, so either an
> AggregationQuery or FindQuery. The problem is this assumption is not
> documented anywhere.
> Fixing this consists of two small changes:
> 1. Add documentation to the
> [withQueryFn|https://github.com/apache/beam/blob/release-2.31.0/sdks/java/io/mongodb/src/main/java/org/apache/beam/sdk/io/mongodb/MongoDbIO.java#L279]
> method specifying that the QueryFn must be one of the predefined classes in
> the MongoDbIO package.
> 2. In the [split
> method|https://github.com/apache/beam/blob/release-2.31.0/sdks/java/io/mongodb/src/main/java/org/apache/beam/sdk/io/mongodb/MongoDbIO.java#L435],
> the code checks if the QueryFn is a FindQuery, and if not assumes it's an
> AggregationQuery, meaning that users that input their own class will find it
> failing to cast to an AggregationQuery. Instead, there should be an error if
> the QueryFn is an unknown type, preferably instructing users to only use one
> of the predefined QueryFn types.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)