de.openvms.org - Für die deutschsprachige VMS-Community https://de.openvms.org:443/stories.php?story=10/12/09/6744118

VMS831H1I_SYS-V1200 verursacht ExecMode-Alignmentfehler mit globalen Puffern in RMS
Software - 09-Dec-2010 17:45 UTC
Es gibt Berichte aus der OpenVMS-Community, dass der Patch SYS V12 auf OpenVMS I64 V8.3-1H1, der auch im aktuellen Update-Kit V9 enthalten ist, Probleme bei der Verwendung von RMS-Dateien mit globalen Puffern verursacht, die sich in exzessiven ExecMode-Alignmentfehlern äußern.

Für Systeme mit mehreren CPUs und hohem gleichzeitigen Gebrauch von globalen Puffern in RMS kann das wiederum zu hoher MPsync-Aktivität aufgrund von Wartezyklen auf ein Memory-Management-Spinlock führen, was zu erheblichen Performanceproblemen führen kann.

Das Problem ist wohl zuerst von unseren Freunden bei Parsec analysiert worden. HP weiss seit mindestens einer Woche davon, hat aber bis jetzt (9-DEC-2010) versäumt, den Patch zurückzuziehen oder zumindest eine ernste Warnung zu veröffentlichen.

Der Fehler tritt bei jedem Record-Zugriff im RMS-Cache-Modul auf. Dies kann bei moderatem Gebrauch zu einigen Tausend Fehlern pro Sekunde führen, was kein Problem ist. Auf aufgelasteten/schnellen/gleichzeitigen Systemen aber führt es zu 80000 oder mehr Fehlern pro Sekunde. Das Problem betrifft jede Dateiorganisation (SEQ, RELATIVE, INDEXED).

Bei Benutzung von ANALYZE/SYSTEM wird der FLT TRACE Einträge melden wie

9-DEC 00:06:20.951820 00 FFFFFFFF.809F7C90 RMS+0011DB90
000007FD.BFF4EEA4 Exec 21A00442 FFFFFFFF.7A8E6D38
RM0CACHE + 00004F90 / GET_GBPB + 00000180

Mit SDA> SHOW PROC/RMS=(GBH,GBDSUM) kann man sehen, dass der fehlschlagende VA bei einem Offset von 0x24 Bytes im aktuellen GBD liegt (mitten in GBD$Q_REL_ADDR?).

Offizieller Patch-Name:VMS831H1I_SYS-V1200 (veräffentlicht 07-SEP-2010), enthalten in VMS831H1I_UPDATE-V0900 (veröffentlicht 28-OCT-2010)

Update:

Nach einem weiteren Bericht von Hein "RMS" van den Heuvel (von dem auch die Originalnachricht stammt) hat HP reagiert:

"Dieses Problem wurde eingeschleppt bei der Erweiterung von zwei Feldern auf Langworte in der GBD-Struktur, nämlich GBD$W_NUMB und GBD$W_SIZE. Durch diese Änderung wurde GBD$Q_REL_ADDR 'longword aligned', und nicht mehr wie vorher 'quadword aligned'".

Diese Änderung war bestimmt bedingt durch die Erweiterung des maximalen MBC auf 255 (vorher 127). Ein offizieller Patch ist im ersten Quartal 2011 zu erwarten.

Die schlechte Nachricht:
- RMSDEF.STB wurde nicht aktualisiert.
- ANALYZE/SYSTEM - RMS wurde nicht aktualisiert.
- Keine Aktualisierung der Datei-Identifikation "X-47" von RMS.EXE.
- Während die MBC-Änderung in den Releasenotes des Patches gut beschrieben war, waren es die Auswirkungen nicht.

Die ganz schlechte Nachricht:
Dies kann durch Anwendungen zu einem Systemcrash unter BUGCHECKFATAL führen, welche die GBD-Struktur interpretieren und analysieren,


Original auf www.openvms.org