Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-1734

ERROR Failed to properly convert data value for RAW datatype

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Blocker
    • None
    • None
    • oracle-connector
    • None
    • Hide

      Create below table in ORACLE NON-CDB database and try running oracle source connector to replicate the changes to kafka.

      CREATE TABLE USERS
      ( OID NUMBER(22,0),
      VERSION NUMBER(22,0),
      SUB_ID NUMBER(22,0),
      WORK_ID NUMBER(22,0),
      CREATION_DATE TIMESTAMP (6),
      UUID RAW(16),
      NAME VARCHAR2(800 BYTE),
      CONSTRAINT EXPT_CAP_PK PRIMARY KEY (OID)
      );

      Show
      Create below table in ORACLE NON-CDB database and try running oracle source connector to replicate the changes to kafka. CREATE TABLE USERS ( OID NUMBER(22,0), VERSION NUMBER(22,0), SUB_ID NUMBER(22,0), WORK_ID NUMBER(22,0), CREATION_DATE TIMESTAMP (6), UUID RAW(16), NAME VARCHAR2(800 BYTE), CONSTRAINT EXPT_CAP_PK PRIMARY KEY (OID) );

    Description

      2020-01-21 14:05:15,348] WARN Unexpected JDBC BINARY value for field UUID with schema Schema{BYTES}: class=class oracle.sql.RAW, value=oracle.sql.RAW@cfe97f0 (io.debezium.connector.oracle.OracleValueConverters:746)
      [2020-01-21 14:05:15,350] ERROR Failed to properly convert data value for 'ORCL.TESTDB.USER.UUID' of type RAW for row [oracle.sql.NUMBER@186d0c87, oracle.sql.NUMBER@69d564c7, oracle.sql.NUMBER@116c2f1a, oracle.sql.NUMBER@1cf65266, oracle.sql.NUMBER@6c0f6c4b, oracle.sql.NUMBER@2ebede51, oracle.sql.RAW@cfe97f0]: (io.debezium.relational.TableSchemaBuilder:267)
      org.apache.kafka.connect.errors.DataException: Invalid value: null used for required field: "UUID", schema type: BYTES
              at org.apache.kafka.connect.data.ConnectSchema.validateValue(ConnectSchema.java:220)
              at org.apache.kafka.connect.data.Struct.put(Struct.java:216)
              at io.debezium.relational.TableSchemaBuilder.lambda$createValueGenerator$5(TableSchemaBuilder.java:263)
              at io.debezium.relational.TableSchema.valueFromColumnData(TableSchema.java:143)
              at io.debezium.relational.RelationalChangeRecordEmitter.emitUpdateRecord(RelationalChangeRecordEmitter.java:96)
              at io.debezium.relational.RelationalChangeRecordEmitter.emitChangeRecords(RelationalChangeRecordEmitter.java:49)
              at io.debezium.pipeline.EventDispatcher.dispatchDataChangeEvent(EventDispatcher.java:145)
              at io.debezium.connector.oracle.LcrEventHandler.dispatchDataChangeEvent(LcrEventHandler.java:102)
              at io.debezium.connector.oracle.LcrEventHandler.processLCR(LcrEventHandler.java:76)
              at oracle.streams.XStreamOut.XStreamOutReceiveLCRCallbackNative(Native Method)
              at oracle.streams.XStreamOut.receiveLCRCallback(XStreamOut.java:465)
              at io.debezium.connector.oracle.OracleStreamingChangeEventSource.execute(OracleStreamingChangeEventSource.java:74)
              at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:99)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
              at java.lang.Thread.run(Thread.java:748)
      [2020-01-21 14:05:15,352] WARN Unexpected JDBC BINARY value for field UUID with schema Schema{BYTES}: class=class oracle.sql.RAW, value=oracle.sql.RAW@4924a5fa (io.debezium.connector.oracle.OracleValueConverters:746)
      [2020-01-21 14:05:15,353] ERROR Failed to properly convert data value for 'ORCL.TESTDB.USER.UUID' of type RAW for row [oracle.sql.NUMBER@31ff4757, oracle.sql.NUMBER@4df6c794, oracle.sql.NUMBER@2191b0a5, oracle.sql.NUMBER@3ff1d071, oracle.sql.NUMBER@747ffd27, oracle.sql.NUMBER@f4e4e5b, oracle.sql.RAW@4924a5fa]: (io.debezium.relational.TableSchemaBuilder:267)
      org.apache.kafka.connect.errors.DataException: Invalid value: null used for required field: "UUID", schema type: BYTES
              at org.apache.kafka.connect.data.ConnectSchema.validateValue(ConnectSchema.java:220)
              at org.apache.kafka.connect.data.Struct.put(Struct.java:216)
              at io.debezium.relational.TableSchemaBuilder.lambda$createValueGenerator$5(TableSchemaBuilder.java:263)
              at io.debezium.relational.TableSchema.valueFromColumnData(TableSchema.java:143)
              at io.debezium.relational.RelationalChangeRecordEmitter.emitUpdateRecord(RelationalChangeRecordEmitter.java:97)
              at io.debezium.relational.RelationalChangeRecordEmitter.emitChangeRecords(RelationalChangeRecordEmitter.java:49)
              at io.debezium.pipeline.EventDispatcher.dispatchDataChangeEvent(EventDispatcher.java:145)
              at io.debezium.connector.oracle.LcrEventHandler.dispatchDataChangeEvent(LcrEventHandler.java:102)
              at io.debezium.connector.oracle.LcrEventHandler.processLCR(LcrEventHandler.java:76)
              at oracle.streams.XStreamOut.XStreamOutReceiveLCRCallbackNative(Native Method)
              at oracle.streams.XStreamOut.receiveLCRCallback(XStreamOut.java:465)
              at io.debezium.connector.oracle.OracleStreamingChangeEventSource.execute(OracleStreamingChangeEventSource.java:74)
              at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:99)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
              at java.lang.Thread.run(Thread.java:748)
      [2020-01-21 14:05:15,353] ERROR Producer failure (io.debezium.pipeline.ErrorHandler:36)
      org.apache.kafka.connect.errors.DataException: Invalid value: null used for required field: "UUID", schema type: BYTES
              at org.apache.kafka.connect.data.ConnectSchema.validateValue(ConnectSchema.java:220)
              at org.apache.kafka.connect.data.Struct.validate(Struct.java:233)
              at org.apache.kafka.connect.data.ConnectSchema.validateValue(ConnectSchema.java:248)
              at org.apache.kafka.connect.data.Struct.put(Struct.java:216)
              at org.apache.kafka.connect.data.Struct.put(Struct.java:203)
              at io.debezium.data.Envelope.update(Envelope.java:294)
              at io.debezium.relational.RelationalChangeRecordEmitter.emitUpdateRecord(RelationalChangeRecordEmitter.java:106)
              at io.debezium.relational.RelationalChangeRecordEmitter.emitChangeRecords(RelationalChangeRecordEmitter.java:49)
              at io.debezium.pipeline.EventDispatcher.dispatchDataChangeEvent(EventDispatcher.java:145)
              at io.debezium.connector.oracle.LcrEventHandler.dispatchDataChangeEvent(LcrEventHandler.java:102)
              at io.debezium.connector.oracle.LcrEventHandler.processLCR(LcrEventHandler.java:76)
              at oracle.streams.XStreamOut.XStreamOutReceiveLCRCallbackNative(Native Method)
              at oracle.streams.XStreamOut.receiveLCRCallback(XStreamOut.java:465)
              at io.debezium.connector.oracle.OracleStreamingChangeEventSource.execute(OracleStreamingChangeEventSource.java:74)
              at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:99)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      8:03
      [2020-01-21 14:05:15,353] ERROR Producer failure (io.debezium.pipeline.ErrorHandler:36)
      org.apache.kafka.connect.errors.DataException: Invalid value: null used for required field: "UUID", schema type: BYTES
              at org.apache.kafka.connect.data.ConnectSchema.validateValue(ConnectSchema.java:220)
              at org.apache.kafka.connect.data.Struct.validate(Struct.java:233)
              at org.apache.kafka.connect.data.ConnectSchema.validateValue(ConnectSchema.java:248)
              at org.apache.kafka.connect.data.Struct.put(Struct.java:216)
              at org.apache.kafka.connect.data.Struct.put(Struct.java:203)
              at io.debezium.data.Envelope.update(Envelope.java:294)
              at io.debezium.relational.RelationalChangeRecordEmitter.emitUpdateRecord(RelationalChangeRecordEmitter.java:106)
              at io.debezium.relational.RelationalChangeRecordEmitter.emitChangeRecords(RelationalChangeRecordEmitter.java:49)
              at io.debezium.pipeline.EventDispatcher.dispatchDataChangeEvent(EventDispatcher.java:145)
              at io.debezium.connector.oracle.LcrEventHandler.dispatchDataChangeEvent(LcrEventHandler.java:102)
              at io.debezium.connector.oracle.LcrEventHandler.processLCR(LcrEventHandler.java:76)
              at oracle.streams.XStreamOut.XStreamOutReceiveLCRCallbackNative(Native Method)
              at oracle.streams.XStreamOut.receiveLCRCallback(XStreamOut.java:465)
              at io.debezium.connector.oracle.OracleStreamingChangeEventSource.execute(OracleStreamingChangeEventSource.java:74)
              at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:99)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
              at java.lang.Thread.run(Thread.java:748)
      [2020-01-21 14:05:15,355] INFO Creating thread debezium-oracleconnector-server1-error-handler (io.debezium.util.Threads:268)
      Exception in thread "debezium-oracleconnector-server1-change-event-source-coordinator" java.lang.UnsupportedOperationException: Not yet implemented
              at io.debezium.connector.oracle.LcrEventHandler.processChunk(LcrEventHandler.java:130)
              at oracle.streams.XStreamOut.XStreamOutReceiveLCRCallbackNative(Native Method)
              at oracle.streams.XStreamOut.receiveLCRCallback(XStreamOut.java:465)
              at io.debezium.connector.oracle.OracleStreamingChangeEventSource.execute(OracleStreamingChangeEventSource.java:74)
              at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:99)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
              at java.lang.Thread.run(Thread.java:748)
      [2020-01-21 14:05:15,369] ERROR Producer failure (io.debezium.pipeline.ErrorHandler:36)
      java.lang.RuntimeException: oracle.streams.StreamsException: ORA-26824: user-defined XStream callback error
      XStreamOut DeliverChunk: exception thrown in processChunk callback.
              at io.debezium.connector.oracle.OracleStreamingChangeEventSource.execute(OracleStreamingChangeEventSource.java:78)
              at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:99)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
              at java.lang.Thread.run(Thread.java:748)
      Caused by: oracle.streams.StreamsException: ORA-26824: user-defined XStream callback error
      XStreamOut DeliverChunk: exception thrown in processChunk callback.
              at oracle.streams.XStreamOut.XStreamOutReceiveLCRCallbackNative(Native Method)
              at oracle.streams.XStreamOut.receiveLCRCallback(XStreamOut.java:465)
              at io.debezium.connector.oracle.OracleStreamingChangeEventSource.execute(OracleStreamingChangeEventSource.java:74)
              ... 6 more
      [2020-01-21 14:05:15,370] INFO Connected metrics set to 'false' (io.debezium.pipeline.metrics.StreamingChangeEventSourceMetrics:59)
      [2020-01-21 14:05:15,371] ERROR Interrupted while stopping (io.debezium.connector.oracle.OracleConnectorTask:160)
      java.lang.InterruptedException
              at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2067)
              at java.util.concurrent.ThreadPoolExecutor.awaitTermination(ThreadPoolExecutor.java:1475)
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            pshussain Mohamed Pudukulathan (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: