I have subscribed for Oracle CQN messages (with python cx_oracle) from one table on update. I am updating only one row:
UPDATE my_table SET
REMARKS = 'TEST2'
WHERE my_table_primary_key = 123456;
After commit I am receiving 2 messages for same table, same operation (UPDATE) but with 2 different ROWID's: '1234567890AAhF5AAF' and '1234567890AAhaqAAA'
Both ROWID's are pointing to the same table (my_table). After following select i have two lines with same id:
SELECT DBMS_ROWID.rowid_object('1234567890AAhF5AAF') AS ID FROM dual
UNION ALL
SELECT DBMS_ROWID.rowid_object('1234567890AAhaqAAA') AS ID FROM dual;
But what is strangest - only one ROWID is pointing to the real record, select by another one returning nothing (but NOT an invalid ROWID!):
select * from my_table where rowid = '1234567890AAhF5AAF'
UNION ALL
select * from my_table where rowid = '1234567890AAhaqAAA';
Can some one suggest what is happening?