SCN-Stress für Database-Links ab dem 23. Juni 2019

Eher zufällig bin ich auf eine Ankündigung in MOS gestoßen, in der dem geneigten Benutzer nahegelegt wird, Datenbanken der Versionen 11.1.0.7, 11.2.0.3 und 12.1.0.1 AUF JEDEN FALL vor dem 23. Juni 2019 zu aktualisieren (siehe MOS Doc ID 2361478.1 )

Nanu? Klar, die Versionen sind jetzt nicht mehr die neuesten, mit dem Support ist es auch so eine Sache, aber so sehr und so nachdrücklich wird sonst eigentlich nicht gedrängelt.

Was steckt also dahinter?

Zunächst die Entwarnung für einige (oder sogar viele ) von uns:

  • wenn ausschließlich Oracle ab 12.1.0.2 aufwärts oder aber 11.2.0.4 im Einsatz ist, ist man NICHT betroffen
  • wenn man keine Database Links verwendet, ist man NICHT betroffen
  • wenn man seine 11.2.0.3 Datenbank mit dem PSU / Bundle Patch von Januar / Februar 2014 bzw. seine 11.1.0.7 Datenbank mit dem PSU / Bundle Patch von Juli 2014 gepatcht hat, ist man NICHT betroffen.
  • wenn Database Links nur zwischen den genannten älteren (oder sogar noch älteren) ungepatchten Versionen ohne Beteiligung neuerer / gepatchter Versionen existieren, sind diese ebenfalls NICHT betroffen.

Für alle anderen Fälle empfiehlt Oracle, bis spätestens Ende Juni 2019 die genannten Patches einzuspielen oder direkt auf eine Version >= 12.1.0.2 zu migrieren.

Warum sollte ich das machen?

Hintergrund (abgesehen von den Vorteilen einer Datenbank-Version im Premier-Support) ist die maximal möglichen System Change Number (SCN) in einer jeden Datenbank (siehe auch unser Blog-Eintrag vom 09. März 2012 über das SCN-Headroom-Problem). Jede Oracle Datenbank hat also zu jeder Zeit eine maximal mögliche SCN – wenn nun eine Transaktion über einen Datenbank-Link zwischen zwei Datenbanken durchgeführt wird, wird diese automatisch auf beiden Seiten auf die höchste SCN der Beteiligten synchronisiert.

Wenn nun eine der beiden Datenbanken eine der genannten Versionen ohne die genannten Patches ist, kann es sein, dass die erforderliche „Ziel-SCN“ höher ist als die für diese Datenabank mögliche maximale SCN. Das bedeutet, dass die Transaktion über den Database Link nicht stattfinden bzw. die Verbindung über den Link gar nicht erst aufgenommen werden kann. Hierbei handelt es sich um einen Bug im Oracle Code (Bug No. 14121009) – der Fix hierfür ist in Versionen >= 12.1.0.2 enthalten; für 11.1.0.7 und 11.2.0.3 in den o.g. PSUs / Windows BPs.

Warum gerade der 23.06.2019?

Die neueren Versionen sowie die genannten Patches ermöglichen eine höhere maximale SCN. Das geänderte Berechnungsverfahren, das hier zugrunde liegt, wird ab diesem Datum in Kraft treten. Wer es ganz genau wissen will, kann z.B. auf der Oaktable-Seite in diesem Beitrag von Frits Hoogland eine sehr detaillierte Erklärung finden.

Wie gesagt – für viele von uns ist dies wahrscheinlich gar kein Problem, und man sollte schon etwas genauer hinsehen, wie die eigene Umgebung tatsächlich aussieht. Es ist nicht so, dass am 23. Juni 2019 alle Database Links plötzlich nicht mehr funktionieren werden. Wenn Sie aber zu den Betroffenen eines oder mehrerer der genannten Szenarien gehören, sollten Sie die Upgrades so schnell wie möglich durchführen – der Juni 2019 ist nicht mehr weit!

Gerne sind wie Ihnen bei Ihrer Migration behilflich – sprechen Sie uns an!

Danke auch an Mike Dietrich für die Erwähnung der MOS-Artikel in seinem Blog!

Schreibe einen Kommentar