oracdc v2.15.6 is now available.
-
Bug fix: Fixed an ArrayIndexOutOfBoundsException: Index -1 out of bounds in the RedoMiner redo log parser that could crash and hang the connector. The cause was the evaluation order of the hasNext() loop condition, which read a record length before checking that the block offset was valid (#168). Thanks to @regme for the report and the fix.
-
Faster key detection: A single data dictionary query now detects a table's primary key or, when there is none, the unique index on NOT NULL columns with the fewest columns — replacing several round trips per table (#163). Partitioned unique indexes are accepted when all of their partitions are usable.
-
Maverick Synergy is no longer bundled: The Maverick Synergy SSH libraries (LGPL-3.0) are now a provided dependency and are not shipped in the standalone jar or the Docker image. If you use a2.ssh.provider=maverick, download the jars and add them to the JVM CLASSPATH — see Reading via SSH. The default sshj provider and mina are unaffected.
-
Grant scripts: redo_miner_fixed_tables.sql and redo_miner_fixed_tables_cdb.sql now grant SELECT on V$ARCHIVE_DEST, which is required by the a2.archive.log.dest.id parameter introduced in v2.15.5.
-
Internal improvements: Transaction bookkeeping for JMX metrics has been simplified, and LimitedSizeQueue was rewritten as a thread-safe bounded deque (#166). Exposed JMX attributes are unchanged.
-
Contributing: Pull requests now require accepting the Contributor License Agreement (individual or corporate), checked automatically by a CLA bot. CONTRIBUTING.md was reworked and a pull request template added (#164).