Oracle XStream logo Oracle LogMiner Agent Changelog

Release notes

2.2.11.10

Released: October 1, 2026

  • GSSD-1245: An incomplete row image is re-read while the COMMIT is processed, instead of as soon as its DML is mined, which replicated a sparse UPDATE with the values it replaced or dropped it as "Row not found";

  • GSSD-1245: A row whose ROWID cannot find it is read by its primary key, so replaying changes older than a TRUNCATE, an ALTER TABLE MOVE or a SHRINK SPACE no longer leaves the reader stuck on ORA-01410;

  • LOB columns are now replicated, so an UPDATE of another column no longer nulls the LOB on the target, an out-of-row INSERT no longer lands as the literal EMPTY_CLOB(), and a change made through the locator is captured, in a PDB too;

  • An entity with no stored position resumes from the database’s current position, instead of falling back to a reader checkpoint that can sit hours behind and replaying those hours on top of the snapshot;

  • The rewind after a lost change cache is armed once instead of at every reader start, so a stop and start no longer replays everything back to the oldest entity position;

2.2.11.9

Released: September 29, 2026

  • GSSD-1374: Added support for "Enable TLS" and the trust store and key store of the connection, so reaching Oracle over TLS no longer requires a wallet;

  • GSSD-1374: Added a LogMiner instance name so the mining connections go through the wallet too, instead of opening in clear text and being refused by a TCPS-only listener;

2.2.11.8

Released: September 28, 2026

  • Arena batches are handed over in the order they were written instead of being re-sorted by transaction id, which on Oracle LogMiner inverted two changes sharing an SCN and wrote the older value to the target;

2.2.11.6

Released: September 24, 2026

  • Booleans and maps keep their type through the arena cache, instead of reaching the target as "true"/"false" and as a non-JSON string;

  • A failing step of the reader stop no longer skips the rest of it, which left the loop running and turned every later stop into a no-op;

2.2.11.4

Released: September 21, 2026

  • Added the source lag probe, reporting the unread change backlog and how far behind the last read transaction is;

  • GSSD-1357: The two unchecked arena length fields are now bounded, so a damaged arena is reported as a corrupted record instead of surfacing as a NumberFormatException or advancing the recovery scan into garbage;

  • GSSD-1357: An arena is no longer mapped at a size the filesystem refused to give it, which on a full disk wrote into a sparse region with no blocks behind it;

2.2.11.2

Released: September 14, 2026

  • ArenaCache now splits across multiple files, one per entity instead of a single shared file. See Source agent caching layer;

  • Optimized regex usage on the CDC hot path;

2.2.11.1

Released: September 11, 2026

  • GSSD-1245: Fixed a CDC restart rewinding to the position of an idle table, which could cause a reported data gap;

2.2.10.16

Released: September 1, 2026

  • GSSD-1245/1306: Fixed data loss when the redo logs rotate;

2.2.10.14

Released: August 28, 2026

  • GSSD-1306: Fixed log window rotation can cause data loss;

  • GSSD-1245: Fixed commit check;

2.2.10.13

Released: August 21, 2026

  • Target character columns: a value longer than its target column is now refused instead of being stored truncated with the transaction reported as written. Affects the IBM i series, Informix, MS SQL Server and Oracle targets, on the direct and the bulk write path alike (GSSD-1292, GSSD-1267);

  • Oracle target: a source value wider than its target column now fails the write even when the excess is only the padding of a fixed-length source; apply a TrimString field function on the target column to shorten a value on purpose;

  • MS SQL Server and Oracle targets: a failed insert batch is retried as an upsert only when the target already holds the row, so a rejection from the server is no longer turned into a truncation;

  • Oracle LogMiner: redo ages are now measured against the database clock instead of the agent host one, so on a database that is not on UTC transactions are no longer abandoned before their deadline and cached changes no longer expire early (GSSD-1245);

2.2.10.12

Released: August 18, 2026

  • GSSD-1144: LogMiner no longer discards redo over a log file list registered by another connection, dropping the stale registrations and retrying the session start once instead;

  • GSSD-1144: a LogMiner session failure now reports the actual Oracle error code instead of the list of candidate ones;

  • GSSD-1144: corrected the warning logged for a DELETE with no undo image, now naming the table and the supplemental logging remedy;

  • GSSD-1144: a DELETE with no usable before-image now dumps its raw payload at error level, with the per-table occurrence count;

2.2.10.9

Released: August 11, 2026

  • GSSD-1245: Fixed pending changes being silently skipped and acknowledged when LogMiner emits records out of order, causing missing rows on the target and entities stuck reporting no changes to sync;

2.2.10.7

Released: August 5, 2026

  • Avoid blocking low watermark when pending uncommitted transactions are holding it back;

2.2.10.5

Released: August 3, 2026

  • GSSD-1144: Fixed Oracle LogMiner data loss and low throughput;

2.2.10.2

Released: July 29, 2026

  • GSSD-1245: Improved arena cache recover and shutdown barrier;

2.2.10

Released: July 27, 2026

  • GSSD-1144: Improve Arena Cache corruption barrier to improve restart with corrupted cache file;

  • GSSD-1144: Fixed localised dates parsing;

  • GSSD-1144: Fixed Arena Cache transaction management when primary keys modified;

2.2.9.10

Released: July 17, 2026

  • GSSD-1160: Fixed escape single quotes in Oracle staging table column names;

2.2.9.9

Released: July 16, 2026

  • GSSD-1144: Fixed date parsing;

  • GSSD-1144: Fixed retrieve of current SCN when checkpoint not exist consuming too much DB CPU;

  • GSSD-1138: Fixed transaction Id comparison logic;

2.2.9.8

Released: July 14, 2026

  • GSSD-1138: Fixed wrong start checkpoint of LogMiner reader after a snapshot;

2.2.9.7

Released: July 10, 2026

  • GSSD-1144: Fixed infinite loop on parse failures with online logs;

  • Removed active transaction checkpoint block;

2.2.9.4

Released: July 7, 2026

  • Fixed issue with JDBC that writes empty string as NULL value;

  • GSSD-1138: Fixed ROWID technical field column emitted by the source even if not selected;

  • GSSD-1144: Added error ORA-00310 handling;

2.2.9.3

Released: July 6, 2026

  • Fixed Oracle write query not using table name with quotes;

2.2.9.2

Released: July 2, 2026

  • GSSD-1138: Fixed wrong description for source change retention causing ambiguity and loss of data when an entity is paused;

2.2.8.13

Released: June 25, 2026

  • GSSD-1049: Fixed sparse deletion not reconcilied;

2.2.8.8

Released: June 16, 2026

  • GSSD-1049: Added LogMiner start error handling restarting session;

  • Fixed DECIMAL parsing;

2.2.8.7

Released: June 15, 2026

  • GSSD-1056: Added new date formats parsing support;

  • Enhanced discovery of logging type (both at db level and table level);

2.2.8.6

Released: June 12, 2026

  • GSSD-1056: Fixed missing column values with min logging support;

2.2.8.0

Released: June 4, 2026

  • GSSD-1032: Improved a specific code path that was rising unecessary ERRORs for transactions that were supposed to be discarded instead;

2.2.7.6

Released: June 3, 2026

  • Added logic to recreate staging table for bulk operations to keep it aligned with entity schema;

  • GSSD-1004: Improved handling of ORA-00308 error;

2.2.7.5

Released: June 1, 2026

  • Replaced Chronicle Queue in-flight transaction spill store with a custom off-heap memory-mapped file implementation (OffHeapMmf) modelled after the oracdc project. Each uncommitted transaction is persisted to a dedicated per-XID mmap file; full rollback is now O(1) (file close + delete). No more per-row Chronicle appender churn or 80 MB pre-allocated roll-cycle files.

  • Committed transaction cache for the Oracle LogMiner source now backed by InMemoryDatabaseCacheImpl, eliminating Chronicle Queue I/O and file locking on the committed side.

  • Added socket-level read timeout on the LogMiner JDBC connection (logminerReadTimeout, default 60000 ms). Prevents executeQuery() from blocking indefinitely when Oracle becomes unreachable.

  • Added Connection.isValid() probe before each LogMiner polling window to detect zombie connections before they stall a query.

  • In-place recovery on Oracle host restart or ORA-17800: worker drops orphaned in-flight transaction state, reconnects, and resumes from the persisted SCN checkpoint — no software restart required.

  • Fixed self-cancellation bug in the error-recovery path: safeRestartService was cancelling its own coroutine scope from within the loop, logging Job was cancelled and leaving the worker permanently dead.

  • Fixed FileNotFoundException after in-place recovery: cleanupAll() was deleting the spill root directory which was only created once via by lazy.

  • GSSD-990: Added support for trimming trailing spaces for text columns;

2.2.6.9

Released: May 22, 2026

  • GSSD-972: Fixed incorrect equals and compareTo logic causing a false positive when comparing transaction IDs, leading Gluesync to perform unwanted and unnecessary reads from the cache.

2.2.6.8

Released: May 21, 2026

  • GSSD-972: fixed Oracle data types migration;

  • GSSD-966: fixed Oracle LogMiner reader blocked by missing commit operation;

2.2.6.6

Released: May 18, 2026

  • Fixed Oracle number data type wrong management;

  • GSSD-862: Improved Oracle CDC transaction id comparison and added logging;

2.2.6.4

Released: May 8, 2026

  • Improved Oracle LogMiner reliability to avoid losing transactions in edge cases.

  • Added DLQ handling for SQL parse errors (LOGMNR_PARSE_DLQ) with configurable behavior (skipTransactionsWithParseErrors).

  • Improved checkpoint + transaction ordering logic to prevent replay loops / stuck progress scenarios.

  • Added spill-to-disk buffering for very large transactions to reduce memory pressure and improve stability.

  • Improved handling of CSF/fragmented SQL rows and log fast-forward/read behavior.

  • Added stronger regression test coverage (including full LogMiner dump replay) for safer releases.

2.2.6.0

Released: April 29, 2026

  • Improved support for enhaced columns discovery (precision, lenght, scale);

2.2.5.3

Released: April 23, 2026

  • Fixed possible duplicate key error using bulk operations for target agent.

2.2.5.0

Released: April 15, 2026

  • Snapshot performance enhancements;

  • Palallel redo logs processing;

  • Fixes and enhacements;

  • Fixed wrong transaction sorting;

2.2.4.5

Released: April 9, 2026

  • GSSD-781: Implemented support for minimal supplemental logging;

2.2.4.1

Released: April 2, 2026

  • GSSD-774: Added missing RESETLOGS (Incarnation Change) handle;

2.2.3.2

Released: March 31, 2026

  • GSSD-781: Fixed transaction logs sort problem and improved error notifications;

2.2.3.0

Released: March 27, 2026

  • Database pooling technology;

  • GSSD-760: Fixes to Batch Update errors and Type modifier is not allowed for type 'text';

  • GSSD-717: Fixed issue with white spaces truncation in VARCHAR primary key columns;

2.2.2.3

Released: March 24, 2026

  • Added backoff delay retry when connection restart is required;

  • Improved reader stop process;

  • Improved transaction logs processing;

2.2.2.1

Released: March 20, 2026

  • Support for bulk loading both for CDC and snapshot operations;

2.2.1.0

Released: March 17, 2026

  • Optimized metadata queries;

2.2.0.4

Released: March 10, 2026

  • GSSD-714: Fixed LogMiner stop logic;

2.2.0

Released: March 5, 2026

  • Agent compatibility upgrade to Gluesync 2.2;