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)