Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hello Support Team,
I hope you are doing well.
When the source is Oracle Database, I would like to check the lastest SCN read by Qlik Replicate.
Currently, I confirm this by setting the log level of SOURCE_CAPTURE to VERBOSE, which outputs the following message in the log, and converting the "current scn" to decimal.
[SOURCE_CAPTURE ]V: RANGE HEADER: vld 04 start range scn: 00000000.01ef09de current scn: 00000000.01ef09de.0001 next range scn: 00000000.01ef09df strands in range 1 current strand in range 0 (oradcdc_thread.c:2100)However, depending on the customer's operating environment, changing the log level may not always be feasible.
Is there any way to identify the latest SCN being read by Qlik Replicate without changing the log level?
Best Regards.
Hello @iti-attunity-sup ,
There are several options to Identify the Processed SCN:
Replication Status Table (RDBMS): Enable the attrep_status internal table and check the SCN within the stream position columns.
Task Recovery Data: Enable "Store task recovery data in target database" to retrieve the stream position directly from the table attrep_recovery (supported endpoints only).
Heartbeat Table: Manually create a heartbeat table on the source to record the current SCN or timestamp (the timestamp can be used to convert to SCN format); this is a reliable fallback if internal tables aren't an option.
Task Log Analysis: As a non-intrusive alternative and even Verbose logging is not an acceptable approach, stop/resume the task and check the log files for the "Last saved transaction position."
Hope this helps.
John.
Hello @iti-attunity-sup ,
If you are using the Store Changes option, you can use the header__stream_position column in the Change Table, which contains the source CDC stream position(SCN/LSN)
Alternatively, you can add AR_H_STREAM_POSITION using the Expression Builder in the Transformer tab to capture the source stream position.
AR_H_STREAM_POSITION
Hope this helps.
Regards,
Sachin B
Hello @iti-attunity-sup ,
There are several options to Identify the Processed SCN:
Replication Status Table (RDBMS): Enable the attrep_status internal table and check the SCN within the stream position columns.
Task Recovery Data: Enable "Store task recovery data in target database" to retrieve the stream position directly from the table attrep_recovery (supported endpoints only).
Heartbeat Table: Manually create a heartbeat table on the source to record the current SCN or timestamp (the timestamp can be used to convert to SCN format); this is a reliable fallback if internal tables aren't an option.
Task Log Analysis: As a non-intrusive alternative and even Verbose logging is not an acceptable approach, stop/resume the task and check the log files for the "Last saved transaction position."
Hope this helps.
John.
Hello @john_wang and @SachinB ,
Thank you for your response.
The issue has been resolved.
Best Regards.
Hello @iti-attunity-sup ,
Thank you for the update.
Glad to hear that the issue has been resolved
Regards,
Sachin B
Thanks for your support! @iti-attunity-sup
Hello @john_wang ,
I apologize for the confusion.
After checking on the actual system, some additional questions have come up, so I would like to reconfirm.
Regarding item 4, after stopping the task and checking the logs, I was unable to find the message "Last saved transaction position." Instead, I found the following message:
00003444: 2026-05-19T05:02:05:215123 [SORTER ]I: Final saved task state. Stream position 00000000.01f0d8e5.00000001.0000.00.0000:1881.220166.16, Source id 1001531, next Target id 4000049, confirmed Target id 0, last source timestamp 1779165625000000 (sorter.c:781)Is it correct to understand that this Stream position represents the SCN up to which Qlik Replicate has finished reading?
Additionally, when deleting archive logs that have already been replicated, if there is no latency, is it acceptable to include the SCN value of the current SCN or Stream position when deleting?
Best Regards.
Hello @iti-attunity-sup ,
You are right - Stream position contains the SCN information. Please check the article: How to start a Replicate task with Oracle source endpoint from a requested SCN.
Regarding the redo log cleanup, we'd like suggest you keep at least 1 extra redo log files there.
Thanks,
John.