Open
Description
What happened?
When working with a BQ table with a column named 'f', construction of a TableRow
object fails with
java.lang.IllegalArgumentException: Can not set java.util.List field com.google.api.services.bigquery.model.TableRow.f to java.lang.String
This happens because TableRow
is a GenericJson
and has a key field named f
expecting a List<TableCell>
.
When reading the javadoc for TableRow
, it seems to me that this model is supposed to represent a BQ resultset in the form
{
"f": [{"v": 1}, {"v": "value"}]
}
beam abuses the GenericJson
capability and relies on the unknown fields to encode the result in the form
{
"column1": 1,
"column2": "value"
}
Issue Priority
Priority: 2 (default / most bugs should be filed as P2)
Issue Components
- Component: Python SDK
- Component: Java SDK
- Component: Go SDK
- Component: Typescript SDK
- Component: IO connector
- Component: Beam YAML
- Component: Beam examples
- Component: Beam playground
- Component: Beam katas
- Component: Website
- Component: Infrastructure
- Component: Spark Runner
- Component: Flink Runner
- Component: Samza Runner
- Component: Twister2 Runner
- Component: Hazelcast Jet Runner
- Component: Google Cloud Dataflow Runner