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

Infinispan doesn't work with underscores inside cache names

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Minor Minor
    • 1.9.0.Alpha1
    • 1.8.0.Final
    • oracle-connector
    • None
    • False
    • False
    • Hide

      Define a connector using infinispan buffer:

      {
      "connector.class": "io.debezium.connector.oracle.OracleConnector",
      "snapshot.locking.mode": "none",
      "database.history.producer.sasl.kerberos.service.name": "kafka",
      "tasks.max": "1",
      "database.history.consumer.sasl.jaas.config": "com.sun.security.auth.module.Krb5LoginModule required useTicketCache=true renewTicket=true serviceName=\"kafka\" useKeyTab=true keyTab=\"/var/.keytab\" principal=\"@***\";",
      "database.history.kafka.topic": "dbz.schema-changes.pilot.SBL",
      "database.history.consumer.security.protocol": "SASL_PLAINTEXT",
      "database.history.consumer.sasl.kerberos.service.name": "kafka",
      "decimal.handling.mode": "string",
      "database.schema": "SBL",
      "database.history.skip.unparseable.ddl": "true",
      "database.out.server.name": "dbzxout",
      "log.mining.buffer.infinispan.cache.schema_changes": "<local-cache name=\"schema_changes\"><persistence passivation=\"false\"><file-store fetch-state=\"true\" read-only=\"false\" preload=\"true\" shared=\"false\" segmented=\"false\" path=\"/opt/confluent/data\" /></persistence></local-cache>",
      "database.history.producer.sasl.mechanism": "GSSAPI",
      "database.history.producer.sasl.jaas.config": "com.sun.security.auth.module.Krb5LoginModule required useTicketCache=true renewTicket=true serviceName=\"kafka\" useKeyTab=true keyTab=\"/var/odpp/keytab/rbsodpp_cert.keytab\" principal=\"@\";",
      "database.user": "${file:/opt//connector.properties:Login}",
      "database.dbname": "SBLCLN",
      "sanitize.field.names": "true",
      "database.connection.adapter": "logminer",
      "database.history.producer.security.protocol": "SASL_PLAINTEXT",
      "database.history.kafka.bootstrap.servers": "***:6667",
      "log.mining.buffer.type": "infinispan_embedded",
      "database.url": "jdbc:oracle:thin:@(***)",
      "database.server.name": "dbz_***_cert",
      "log.mining.buffer.infinispan.cache.processed_transactions": "<local-cache name=\"processed_transactions\"><persistence passivation=\"false\"><file-store fetch-state=\"true\" read-only=\"false\" preload=\"true\" shared=\"false\" segmented=\"false\" path=\"/opt/confluent/data\" /></persistence></local-cache>",
      "database.password": "${file:/opt//connector.properties:Password}",
      "log.mining.buffer.infinispan.cache.events": "<local-cache name=\"events\"><persistence passivation=\"false\"><file-store fetch-state=\"true\" read-only=\"false\" preload=\"true\" shared=\"false\" segmented=\"false\" path=\"/opt/confluent/data\" /></persistence></local-cache>",
      "name": "sbl_connector",
      "table.include.list": "***",
      "log.mining.buffer.infinispan.cache.transactions": "<local-cache name=\"transactions\"><persistence passivation=\"false\"><file-store fetch-state=\"true\" read-only=\"false\" preload=\"true\" shared=\"false\" segmented=\"false\" path=\"/opt/confluent/data\" /></persistence></local-cache>",
      "database.history.consumer.sasl.mechanism": "GSSAPI",
      "snapshot.mode": "schema_only"
      }

       

      Catch the error:

      [2021-12-29 15:06:50,318] ERROR [sbl_connector|task-0] Mining session stopped due to the {} (io.debezium.connector.oracle.logminer.LogMinerHelper:111)
      java.lang.NullPointerException
      at io.debezium.connector.oracle.logminer.processor.infinispan.EmbeddedInfinispanLogMinerEventProcessor.createCache(EmbeddedInfinispanLogMinerEventProcessor.java:149)
      at io.debezium.connector.oracle.logminer.processor.infinispan.EmbeddedInfinispanLogMinerEventProcessor.<init>(EmbeddedInfinispanLogMinerEventProcessor.java:73)
      at io.debezium.connector.oracle.OracleConnectorConfig$LogMiningBufferType$3.createProcessor(OracleConnectorConfig.java:1007)
      at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.createProcessor(LogMinerStreamingChangeEventSource.java:211)
      at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:122)
      at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:57)
      at io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:172)
      at io.debezium.pipeline.ChangeEventSourceCoordinator.executeChangeEventSources(ChangeEventSourceCoordinator.java:139)
      at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:108)
      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)
      [2021-12-29 15:06:50,318] ERROR [sbl_connector|task-0] Producer failure (io.debezium.pipeline.ErrorHandler:31)
      java.lang.NullPointerException
      at io.debezium.connector.oracle.logminer.processor.infinispan.EmbeddedInfinispanLogMinerEventProcessor.createCache(EmbeddedInfinispanLogMinerEventProcessor.java:149)
      at io.debezium.connector.oracle.logminer.processor.infinispan.EmbeddedInfinispanLogMinerEventProcessor.<init>(EmbeddedInfinispanLogMinerEventProcessor.java:73)
      at io.debezium.connector.oracle.OracleConnectorConfig$LogMiningBufferType$3.createProcessor(OracleConnectorConfig.java:1007)
      at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.createProcessor(LogMinerStreamingChangeEventSource.java:211)
      at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:122)
      at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:57)
      at io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:172)
      at io.debezium.pipeline.ChangeEventSourceCoordinator.executeChangeEventSources(ChangeEventSourceCoordinator.java:139)
      at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:108)
      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)
      [2021-12-29 15:06:50,319] INFO [sbl_connector|task-0] startScn=967867936870, endScn=null (io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource:184)
      Show
      Define a connector using infinispan buffer: { "connector.class" : "io.debezium.connector.oracle.OracleConnector" , "snapshot.locking.mode" : "none" , "database.history.producer.sasl.kerberos.service.name" : "kafka" , "tasks.max" : "1" , "database.history.consumer.sasl.jaas.config" : "com.sun.security.auth.module.Krb5LoginModule required useTicketCache= true renewTicket= true serviceName=\" kafka\ " useKeyTab= true keyTab=\" / var /.keytab\ " principal=\" @***\ ";" , "database.history.kafka.topic" : "dbz.schema-changes.pilot.SBL" , "database.history.consumer.security.protocol" : "SASL_PLAINTEXT" , "database.history.consumer.sasl.kerberos.service.name" : "kafka" , "decimal.handling.mode" : "string" , "database.schema" : "SBL" , "database.history.skip.unparseable.ddl" : " true " , "database.out.server.name" : "dbzxout" , "log.mining.buffer.infinispan.cache.schema_changes" : "<local-cache name=\" schema_changes\ "><persistence passivation=\" false \ "><file-store fetch-state=\" true \ " read-only=\" false \ " preload=\" true \ " shared=\" false \ " segmented=\" false \ " path=\" /opt/confluent/data\ " /></persistence></local-cache>" , "database.history.producer.sasl.mechanism" : "GSSAPI" , "database.history.producer.sasl.jaas.config" : "com.sun.security.auth.module.Krb5LoginModule required useTicketCache= true renewTicket= true serviceName=\" kafka\ " useKeyTab= true keyTab=\" / var /odpp/keytab/rbsodpp_cert.keytab\ " principal=\" @\ ";" , "database.user" : "${file:/opt //connector.properties:Login}" , "database.dbname" : "SBLCLN" , "sanitize.field.names" : " true " , "database.connection.adapter" : "logminer" , "database.history.producer.security.protocol" : "SASL_PLAINTEXT" , "database.history.kafka.bootstrap.servers" : "***:6667" , "log.mining.buffer.type" : "infinispan_embedded" , "database.url" : "jdbc:oracle:thin:@(***)" , "database.server.name" : "dbz_***_cert" , "log.mining.buffer.infinispan.cache.processed_transactions" : "<local-cache name=\" processed_transactions\ "><persistence passivation=\" false \ "><file-store fetch-state=\" true \ " read-only=\" false \ " preload=\" true \ " shared=\" false \ " segmented=\" false \ " path=\" /opt/confluent/data\ " /></persistence></local-cache>" , "database.password" : "${file:/opt //connector.properties:Password}" , "log.mining.buffer.infinispan.cache.events" : "<local-cache name=\" events\ "><persistence passivation=\" false \ "><file-store fetch-state=\" true \ " read-only=\" false \ " preload=\" true \ " shared=\" false \ " segmented=\" false \ " path=\" /opt/confluent/data\ " /></persistence></local-cache>" , "name" : "sbl_connector" , "table.include.list" : "***" , "log.mining.buffer.infinispan.cache.transactions" : "<local-cache name=\" transactions\ "><persistence passivation=\" false \ "><file-store fetch-state=\" true \ " read-only=\" false \ " preload=\" true \ " shared=\" false \ " segmented=\" false \ " path=\" /opt/confluent/data\ " /></persistence></local-cache>" , "database.history.consumer.sasl.mechanism" : "GSSAPI" , "snapshot.mode" : "schema_only" }   Catch the error: [2021-12-29 15:06:50,318] ERROR [sbl_connector|task-0] Mining session stopped due to the {} (io.debezium.connector.oracle.logminer.LogMinerHelper:111) java.lang.NullPointerException at io.debezium.connector.oracle.logminer.processor.infinispan.EmbeddedInfinispanLogMinerEventProcessor.createCache(EmbeddedInfinispanLogMinerEventProcessor.java:149) at io.debezium.connector.oracle.logminer.processor.infinispan.EmbeddedInfinispanLogMinerEventProcessor.<init>(EmbeddedInfinispanLogMinerEventProcessor.java:73) at io.debezium.connector.oracle.OracleConnectorConfig$LogMiningBufferType$3.createProcessor(OracleConnectorConfig.java:1007) at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.createProcessor(LogMinerStreamingChangeEventSource.java:211) at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:122) at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:57) at io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:172) at io.debezium.pipeline.ChangeEventSourceCoordinator.executeChangeEventSources(ChangeEventSourceCoordinator.java:139) at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:108) 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) [2021-12-29 15:06:50,318] ERROR [sbl_connector|task-0] Producer failure (io.debezium.pipeline.ErrorHandler:31) java.lang.NullPointerException at io.debezium.connector.oracle.logminer.processor.infinispan.EmbeddedInfinispanLogMinerEventProcessor.createCache(EmbeddedInfinispanLogMinerEventProcessor.java:149) at io.debezium.connector.oracle.logminer.processor.infinispan.EmbeddedInfinispanLogMinerEventProcessor.<init>(EmbeddedInfinispanLogMinerEventProcessor.java:73) at io.debezium.connector.oracle.OracleConnectorConfig$LogMiningBufferType$3.createProcessor(OracleConnectorConfig.java:1007) at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.createProcessor(LogMinerStreamingChangeEventSource.java:211) at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:122) at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:57) at io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:172) at io.debezium.pipeline.ChangeEventSourceCoordinator.executeChangeEventSources(ChangeEventSourceCoordinator.java:139) at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:108) 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) [2021-12-29 15:06:50,319] INFO [sbl_connector|task-0] startScn=967867936870, endScn= null (io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource:184)

      Processed transactions and schema changes change names must use a - (dash) rather than an _(underscore) in the XML.

              ccranfor@redhat.com Chris Cranford
              ant0nk Anton Kondratev (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: