Open Log Replicator will fail to parse records in certain circumstances when a QMI operation is done on a compressed table. In observed cases the application will throw a numeric parsing error. See example below.
2026-04-09 07:14:47 ERROR 50009 error parsing numeric value at offset: 123456
This behavior causes application instability and incorrect data to be written to the change stream. Behavior indicates the application is unable to detect that the redo vector is compressed. THe compressed change is parsed like a regular vector causing the issue parsing.
Correct behavior would either output the record as compressed or output the record correctly.
This issue was observed and replicated using the below SQL on Oracle Database 19c with Open Log Replicator v1.9.0.
-- Create compressed table
CREATE TABLE OLRUSER.COMPRESS_TEST (
id NUMBER,
name VARCHAR2(50),
val NUMBER,
status VARCHAR2(10)
) ROW STORE COMPRESS ADVANCED;
-- Seed data into table
INSERT INTO OLRUSER.COMPRESS_TEST
SELECT
level,
'NAME_' || MOD(level, 10),
MOD(level, 100),
'ACTIVE'
FROM dual
CONNECT BY level <= 500;
COMMIT;
-- ISSUE STEMS FROM THIS OPERATION
-- Bulk insert into table
INSERT INTO OLRUSER.COMPRESS_TEST
SELECT
900 + level,
'TEST',
0,
'ACTIVE'
FROM dual
CONNECT BY level <= 5;
COMMIT;
This produces a QMI redo with a compressed change vector.
Please let me know if any more details are needed for replication. Love the application!
Open Log Replicator will fail to parse records in certain circumstances when a QMI operation is done on a compressed table. In observed cases the application will throw a numeric parsing error. See example below.
This behavior causes application instability and incorrect data to be written to the change stream. Behavior indicates the application is unable to detect that the redo vector is compressed. THe compressed change is parsed like a regular vector causing the issue parsing.
Correct behavior would either output the record as compressed or output the record correctly.
This issue was observed and replicated using the below SQL on Oracle Database 19c with Open Log Replicator v1.9.0.
This produces a QMI redo with a compressed change vector.
Please let me know if any more details are needed for replication. Love the application!