You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Vitaly Ivanov (Jira)" <ji...@apache.org> on 2021/12/16 09:42:00 UTC
[jira] [Updated] (BEAM-13400) JDBC IO does not support UUID and JSONB PostgreSQL types and OTHER JDBC types in general
[ https://issues.apache.org/jira/browse/BEAM-13400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vitaly Ivanov updated BEAM-13400:
---------------------------------
Description:
The following exception occurs when trying to read rows from table which contains fields with type JSONB and UUID. They have JDBCType OTHER.
{noformat}
java.lang.UnsupportedOperationException: Converting OTHER to Beam schema type is not supported
at org.apache.beam.sdk.io.jdbc.SchemaUtil.jdbcTypeToBeamFieldConverter(SchemaUtil.java:161)
at org.apache.beam.sdk.io.jdbc.SchemaUtil.toBeamSchema(SchemaUtil.java:172)
at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadRows.inferBeamSchema(JdbcIO.java:655)
at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadRows.expand(JdbcIO.java:632)
at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadRows.expand(JdbcIO.java:551)
at org.apache.beam.sdk.Pipeline.applyInternal(Pipeline.java:548)
at org.apache.beam.sdk.Pipeline.applyTransform(Pipeline.java:499)
at org.apache.beam.sdk.values.PBegin.apply(PBegin.java:56){noformat}
I suppose the issue is quite important because the UUID type is widespread in PostgeSQL.
Actual for Oracle BLOB as well.
was:
The following exception occurs when trying to read rows from table which contains fields with type JSONB and UUID. They have JDBCType OTHER.
{noformat}
java.lang.UnsupportedOperationException: Converting OTHER to Beam schema type is not supported
at org.apache.beam.sdk.io.jdbc.SchemaUtil.jdbcTypeToBeamFieldConverter(SchemaUtil.java:161)
at org.apache.beam.sdk.io.jdbc.SchemaUtil.toBeamSchema(SchemaUtil.java:172)
at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadRows.inferBeamSchema(JdbcIO.java:655)
at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadRows.expand(JdbcIO.java:632)
at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadRows.expand(JdbcIO.java:551)
at org.apache.beam.sdk.Pipeline.applyInternal(Pipeline.java:548)
at org.apache.beam.sdk.Pipeline.applyTransform(Pipeline.java:499)
at org.apache.beam.sdk.values.PBegin.apply(PBegin.java:56){noformat}
I suppose the issue is quite important because the UUID type is widespread in PostgeSQL.
> JDBC IO does not support UUID and JSONB PostgreSQL types and OTHER JDBC types in general
> -----------------------------------------------------------------------------------------
>
> Key: BEAM-13400
> URL: https://issues.apache.org/jira/browse/BEAM-13400
> Project: Beam
> Issue Type: Bug
> Components: io-java-jdbc
> Affects Versions: 2.34.0
> Reporter: Vitaly Ivanov
> Priority: P2
>
> The following exception occurs when trying to read rows from table which contains fields with type JSONB and UUID. They have JDBCType OTHER.
> {noformat}
> java.lang.UnsupportedOperationException: Converting OTHER to Beam schema type is not supported
> at org.apache.beam.sdk.io.jdbc.SchemaUtil.jdbcTypeToBeamFieldConverter(SchemaUtil.java:161)
> at org.apache.beam.sdk.io.jdbc.SchemaUtil.toBeamSchema(SchemaUtil.java:172)
> at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadRows.inferBeamSchema(JdbcIO.java:655)
> at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadRows.expand(JdbcIO.java:632)
> at org.apache.beam.sdk.io.jdbc.JdbcIO$ReadRows.expand(JdbcIO.java:551)
> at org.apache.beam.sdk.Pipeline.applyInternal(Pipeline.java:548)
> at org.apache.beam.sdk.Pipeline.applyTransform(Pipeline.java:499)
> at org.apache.beam.sdk.values.PBegin.apply(PBegin.java:56){noformat}
> I suppose the issue is quite important because the UUID type is widespread in PostgeSQL.
>
> Actual for Oracle BLOB as well.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)