-
Enhancement
-
Resolution: Done
-
Major
-
2.6.0.CR1, 2.6.0.Final
-
None
-
False
-
None
-
False
Bug report
For bug reports, provide this information, please:
What Debezium connector do you use and what version?
2.6.0.CR1, 2.6.0.Final
What is the connector configuration?
{
"name":"source1",
"config": {
"name":"source1",
"tasks.max" : "1",
"connector.class" : "io.debezium.connector.oracle.OracleConnector",
"database.url" : "jdbc:oracle:thin:@DATABASE:1521:INSTANCE",
"database.user" : "user",
"database.password" : "pswd",
"database.dbname": "DATABASENAME",
"lob.enabled": "true",
"database.connection.adapter": "logminer",
"snapshot.mode": "schema_only",
"snapshot.locking.mode": "none",
"include.schema.changes": "false",
"errors.max.retries": 3,
"producer.override.buffer.memory": 104857600,
"producer.override.max.request.size": 104857600,
"time.precision.mode": "connect",
"decimal.handling.mode": "precise",
"incremental.snapshot.chunk.size": 50000,
"column.propagate.source.type": ".*",
"log.mining.archive.log.hours": 24,
"log.mining.archive.log.only.mode": "false",
"log.mining.session.max.ms": 7200000,
"log.mining.restart.connection": "false",
...
}
}
What is the captured database version and mode of depoyment?
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.18.0.0.0, on-prem
Result of
select * from nls_database_parameters
:
NLS_RDBMS_VERSION 19.0.0.0.0
NLS_NCHAR_CONV_EXCP FALSE
NLS_LENGTH_SEMANTICS BYTE
NLS_COMP BINARY
NLS_DUAL_CURRENCY ?
NLS_TIMESTAMP_TZ_FORMAT DD.MM.RR HH24:MI:SSXFF TZR
NLS_TIME_TZ_FORMAT HH24:MI:SSXFF TZR
NLS_TIMESTAMP_FORMAT DD.MM.RR HH24:MI:SSXFF
NLS_TIME_FORMAT HH24:MI:SSXFF
NLS_SORT BINARY
NLS_DATE_LANGUAGE AMERICAN
NLS_DATE_FORMAT DD.MM.RR
NLS_CALENDAR GREGORIAN
NLS_NUMERIC_CHARACTERS ,
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_CHARACTERSET CL8MSWIN1251
NLS_ISO_CURRENCY RUSSIA
NLS_CURRENCY ?
NLS_LANGUAGE AMERICAN
What behaviour do you expect?
Normal work of connector
What behaviour do you see?
Error "Caused by: java.sql.SQLException: Non supported character set (add orai18n.jar in your classpath): CL8MSWIN1251" make connector fail
Do you see the same behaviour using the latest relesead Debezium version?
I see this error only in 2.6.0.CR1 and 2.6.0.Final. 2.6.0.Beta1 just working fine.
Do you have the connector logs, ideally from start till finish?
2024-04-08 14:00:35,912 ERROR || WorkerSourceTask{id=kiasdb10-source1-0} Task threw an uncaught and unrecoverable exception. Task is being killed and will not recover until manually restarted [org.apache.kafka.connect.runtime.WorkerTask]
org.apache.kafka.connect.errors.ConnectException: An exception occurred in the change event producer. This connector will be stopped.
at io.debezium.pipeline.ErrorHandler.setProducerThrowable(ErrorHandler.java:67)
at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:267)
at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:61)
at io.debezium.pipeline.ChangeEventSourceCoordinator.streamEvents(ChangeEventSourceCoordinator.java:280)
at io.debezium.pipeline.ChangeEventSourceCoordinator.executeChangeEventSources(ChangeEventSourceCoordinator.java:197)
at io.debezium.pipeline.ChangeEventSourceCoordinator.lambda$start$0(ChangeEventSourceCoordinator.java:140)
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:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: io.debezium.DebeziumException: Failed to read the Oracle database redo thread state
at io.debezium.connector.oracle.OracleConnection.getRedoThreadState(OracleConnection.java:822)
at io.debezium.connector.oracle.logminer.LogFileCollector.getLogs(LogFileCollector.java:80)
at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.initializeRedoLogsForMining(LogMinerStreamingChangeEventSource.java:402)
at io.debezium.connector.oracle.logminer.LogMinerStreamingChangeEventSource.execute(LogMinerStreamingChangeEventSource.java:178)
... 9 more
Caused by: java.sql.SQLException: Non supported character set (add orai18n.jar in your classpath): CL8MSWIN1251
at oracle.sql.CharacterSetUnknown.failCharsetUnknown(CharacterSetFactoryThin.java:240)
at oracle.sql.CharacterSetUnknown.convert(CharacterSetFactoryThin.java:201)
at oracle.jdbc.driver.PhysicalConnection.throughDbCharset(PhysicalConnection.java:11078)
at oracle.jdbc.driver.PhysicalConnection.enquoteIdentifier(PhysicalConnection.java:11158)
at oracle.jdbc.driver.OracleStatement.enquoteIdentifier(OracleStatement.java:6788)
at oracle.jdbc.driver.OracleStatement.getColumnIndex(OracleStatement.java:4211)
at oracle.jdbc.driver.InsensitiveScrollableResultSet.findColumn(InsensitiveScrollableResultSet.java:299)
at oracle.jdbc.driver.GeneratedResultSet.getInt(GeneratedResultSet.java:622)
at io.debezium.connector.oracle.OracleConnection.lambda$getRedoThreadState$35(OracleConnection.java:791)
at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:646)
at io.debezium.jdbc.JdbcConnection.queryAndMap(JdbcConnection.java:514)
at io.debezium.connector.oracle.OracleConnection.getRedoThreadState(OracleConnection.java:787)
... 12 more
How to reproduce the issue using our tutorial deployment?
Deploy connector.
- links to
-
RHEA-2024:139598 Red Hat build of Debezium 2.5.4 release