The Announcement made at the beginning of CY2018:
If you're running an older version of the Oracle Database and you have applications that are actively using DB Links to connect to other databases, regardless of their version, you may need to take action to ensure your database applications continue to work as expected. We are strongly encouraging users of these older databases to consider upgrading to a supported release, or at a minimum, verify the latest patch recommendations have been applied.
The issue applies to the following Oracle Databases versions:
10g release 2 (10.2.0.5 and lower)
11g release 1 (220.127.116.11 and lower)
11g release 2 (18.104.22.168 and lower)
12c release 1 (22.214.171.124)
If you are on one of the following Database versions, this issue will not affect you:
11g release 2 (126.96.36.199)
12c release 1 (188.8.131.52)
12c release 2 (184.108.40.206)
The detailed instructions with the required patches that you need to apply incase you can't upgrade your databases to recommended versions are outlined in DOC ID 2335265.1
These patches will increase the Database’s SCN Rate limit automatically from 16K/s to 96K/s, and enable databases to support much higher transaction rates. This fix is already present in 220.127.116.11, 18.104.22.168, 22.214.171.124 and all versions above 126.96.36.199. This SCN rate increase also knows as SCN rollover was slated to happen automatically on June 23rd 2019 on all the above versions and also the lower versions patched to recommended levels.
If the patches are not applied, the unpatched database will have a lower SCN rate or lower current max SCN limit.
Sometimes, there can be a scenario where in the patched database can be at higher SCN level while the unpatched database is at much lower SCN level due to these rate limit allowance differences. When there is a requirement to connect these patched and unpatched databases, the SCN sync has to happen and if this sync needs the SCN to increase more than the Current max SCN limit in the unpatched database, the dblink connection will fail.
For 188.8.131.52 & above versions and for patched lower versions, the automatic SCN Rate Limit Increase from 16K/s to 96K/s has already happened on June 23rd, 2019. No major issues were reported.
You would have noticed a message similar to below in the alert log of the databases that are at the recommended patch levels on June 23rd, 2019.
"Database SCN compatibility changed from 1 to 3 due to auto-rollover"
Even if the database was down during this autorollover period, the rollover would have automatically happened whenever the database started after June 23rd, 2019. You would see the same message immediately after the database startup.
If you haven't already upgraded the databases or moved them to the recommended patch levels, please do so as soon as possible to eliminate the potential risk on your database links (refer DOC ID 2335265.1). Until then, please monitor the 16k/s SCN headroom of the patched/upgraded database(that has dblinks pointing to lower/unpatched databases) using the script from the DOC ID 1393363.1. If this headroom falls below 20, please remove the dblink connections to unpatched databases and upgrade/patch the unpatched database immediately for the dblink connections to work.
The 16k/s SCN headroom can be monitored using the script from the DOC ID 1393363.1
If you want to verify if your database is already running at 96K/s limit(or compatibility 3), you can use the below procedure. If the "Current SCN Compatibility" shows 3, you are at 96K/s SCN rate limit. Please make a note that this procedure may not work in some of the older database versions.
set serveroutput on;
dbms_output.put_line('Current SCN Compatibility=' || cur_scn_compat);
dbms_output.put_line('max_scn_compat=' || max_scn_compat);
Thank you for reading this blog post. Let us know if you have any questions or if there are other areas you would like to see discussed in this forum.