Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-3230 Intermittent test failures on CI
  3. DBZ-3085

ObjectSizeCalculator fails with preview builds

XMLWordPrintable

    • False
    • False
    • Undefined

      From the outreach job runs, e.g. https://github.com/debezium/debezium/runs/1866867866?check_suite_focus=true:

      2021-02-09 22:22:05,780 ERROR  Postgres|test_server|postgres-connector-task  Producer failure   [io.debezium.pipeline.ErrorHandler]
      java.lang.ExceptionInInitializerError
      	at io.debezium.util.ObjectSizeCalculator.getObjectSize(ObjectSizeCalculator.java:110)
      	at io.debezium.connector.base.ChangeEventQueue.enqueue(ChangeEventQueue.java:152)
      	at io.debezium.pipeline.EventDispatcher$StreamingChangeRecordReceiver.changeRecord(EventDispatcher.java:360)
      	at io.debezium.pipeline.EventDispatcher$2.changeRecord(EventDispatcher.java:210)
      	at io.debezium.relational.RelationalChangeRecordEmitter.emitCreateRecord(RelationalChangeRecordEmitter.java:77)
      	at io.debezium.relational.RelationalChangeRecordEmitter.emitChangeRecords(RelationalChangeRecordEmitter.java:45)
      	at io.debezium.connector.postgresql.PostgresChangeRecordEmitter.emitChangeRecords(PostgresChangeRecordEmitter.java:91)
      	at io.debezium.pipeline.EventDispatcher.dispatchDataChangeEvent(EventDispatcher.java:199)
      	at io.debezium.connector.postgresql.PostgresStreamingChangeEventSource.lambda$processMessages$0(PostgresStreamingChangeEventSource.java:226)
      	at io.debezium.connector.postgresql.connection.pgoutput.PgOutputMessageDecoder.decodeInsert(PgOutputMessageDecoder.java:373)
      	at io.debezium.connector.postgresql.connection.pgoutput.PgOutputMessageDecoder.processNotEmptyMessage(PgOutputMessageDecoder.java:176)
      	at io.debezium.connector.postgresql.connection.AbstractMessageDecoder.processMessage(AbstractMessageDecoder.java:42)
      	at io.debezium.connector.postgresql.connection.PostgresReplicationConnection$1.deserializeMessages(PostgresReplicationConnection.java:482)
      	at io.debezium.connector.postgresql.connection.PostgresReplicationConnection$1.readPending(PostgresReplicationConnection.java:474)
      	at io.debezium.connector.postgresql.PostgresStreamingChangeEventSource.processMessages(PostgresStreamingChangeEventSource.java:185)
      	at io.debezium.connector.postgresql.PostgresStreamingChangeEventSource.execute(PostgresStreamingChangeEventSource.java:147)
      	at io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:140)
      	at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:113)
      	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
      	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
      	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
      	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
      	at java.base/java.lang.Thread.run(Thread.java:831)
      Caused by: java.lang.StringIndexOutOfBoundsException: begin 0, end -1, length 10
      	at java.base/java.lang.String.checkBoundsBeginEnd(String.java:3751)
      	at java.base/java.lang.String.substring(String.java:1907)
      	at io.debezium.util.ObjectSizeCalculator.getEffectiveMemoryLayoutSpecification(ObjectSizeCalculator.java:386)
      	at io.debezium.util.ObjectSizeCalculator$CurrentLayout.<clinit>(ObjectSizeCalculator.java:90)
      	... 23 more
      

      The code trying to parse the JVM version expects there's a "." contained, which isn't the case for instance in "16-ea+32-2190".

              Unassigned Unassigned
              gunnar.morling Gunnar Morling
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: