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

Hide stacktrace when default value for SQL Server cannot be parsed

    XMLWordPrintable

    Details

      Description

      When the default value is not constant but an expression then Debezium is not able to evaluate it and emits the warning. The warning contains detail stacktrace which suggests to user that an error happens.
      Debezium should emit only warning and the detail stacktrace should be visible only at DEBUG level.

      The stactrace usually looks like

      java.lang.NumberFormatException: For input string: "1)+(2"
      	at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:2043)
      	at sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110)
      	at java.lang.Double.parseDouble(Double.java:538)
      	at io.debezium.connector.sqlserver.SqlServerDefaultValueConverter.lambda$9(SqlServerDefaultValueConverter.java:126)
      	at io.debezium.connector.sqlserver.SqlServerDefaultValueConverter.parseDefaultValue(SqlServerDefaultValueConverter.java:82)
      	at io.debezium.connector.sqlserver.SqlServerConnection.getDefaultValue(SqlServerConnection.java:512)
      	at io.debezium.jdbc.JdbcConnection.readTableColumn(JdbcConnection.java:1181)
      	at io.debezium.jdbc.JdbcConnection.readSchema(JdbcConnection.java:1126)
      	at io.debezium.connector.sqlserver.SqlServerSnapshotChangeEventSource.readTableStructure(SqlServerSnapshotChangeEventSource.java:183)
      	at io.debezium.relational.RelationalSnapshotChangeEventSource.doExecute(RelationalSnapshotChangeEventSource.java:122)
      	at io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.execute(AbstractSnapshotChangeEventSource.java:63)
      	at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$0(ChangeEventSourceCoordinator.java:105)
      	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)
      

        Attachments

          Activity

            People

            Assignee:
            jpechanec Jiri Pechanec
            Reporter:
            jpechanec Jiri Pechanec
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: