Dateisperre aufheben
Komponente: | BS2000 |
Funktionsbereich: | Dateiverarbeitung |
Anwendungsbereich: | FILE |
Privilegierung: | STD-PROCESSING |
Funktionsbeschreibung
Das Kommando REMOVE-FILE-ALLOCATION-LOCKS dient dazu, Dateien (auch Dateigenerationen oder Dateigenerationsgruppen), die wegen eines Systemzusammenbruchs oder Auftragsabbruchs nicht ordnungsgemäß geschlossen wurden, wieder verfügbar zu machen. Der Anwender kann mit diesem Kommando eine durch Systemzusammenbruch oder Auftragsabbruch verursachte Dateisperre aufheben.
Damit eine Dateisperre mit dem Kommando REMOVE-FILE-ALLOCATION aufgehoben werden kann, muss der Auftrag, der die Sperre verursachte, vom System mit der Konsol-Meldung „TASK PENDED INDEFINITELY“ abgebrochen worden sein.
Für Banddateien, die mit dem SECURE-RESOURCE-ALLOCATION-Kommando exklusiv reserviert wurden, kann der Benutzer die Aufhebung der Sperre veranlassen; für Plattendateien ist nur die Systembetreuung dazu berechtigt.
Die betroffenen Dateien werden nicht rekonstruiert. Dies kann mit dem Kommando REPAIR-DISK-FILES veranlasst werden. Zum Aufheben der Dateisperre mit gleichzeitiger Überprüfung auf Inkonsistenzen ist das Kommando CHECK-FILE-CONSISTENCY zu verwenden.
Sperren von Concurrent Copy
Sperren von Concurrent Copy dürfen nur zurückgesetzt werden, wenn die Concurrent-Copy-Session beendet ist. Dabei müssen zwei Fälle unterschieden werden:
Existieren sowohl Dateisperren als auch Sperren von Concurrent Copy, so ist der Returncode davon abhängig, ob die Dateisperren zurückgesetzt werden konnten.
Existiert nur eine Sperre von Concurrent Copy, so ist der Returncode davon abhängig, ob die Sperre zurückgesetzt werden konnte.
Privilegierte Funktionen
Die Systembetreuung (Privileg TSOS) kann – neben der Angabe einer beliebigen Datei – das Bit NO-OPEN-ALLOWED im TSOSCAT, welches das Öffnen der Datei verhindert, zurücksetzen.
Format
REMOVE-FILE-ALLOCATION-LOCKS |
FILE-NAME = <filename 1..54> / <partial-filename 2..53> ,SELECT = *ANY-VOLUME / *PRIVATE-DISK / *PUBLIC-DISK / *NET-STORAGE ,OPEN-ALLOWED = *UNCHANGED / *YES |
Operandenbeschreibung
FILE-NAME = <filename 1..54> / <partial-filename 2..53>
Name der gesperrten Datei. Es kann sich dabei um eine permanente oder eine temporäre Datei, eine Dateigenerationsgruppe oder eine Dateigeneration handeln.
Für Dateien unter einer fremden Benutzerkennung muss der Benutzer das Recht zum schreibenden Zugriff besitzen.
Bei Angabe eines teilqualifizierten Dateinamens werden nur Dateien ausgewählt, die als offen gekennzeichnet sind. Bei Angabe genau eines Dateinamens ist die Auswahl unabhängig von der Kennzeichnung.
für Band-Eingabedateien: war die gesperrte Datei im INPUT- oder REVERSE-Modus eröffnet, so muss der vollqualifizierte Dateiname angegeben werden; die Dateisperre wird aufgehoben.
Abhängig von der Zugriffsmethode, mit der die Datei erstellt wurde, werden folgende Aktionen durchgeführt:
PAM-Datei: Nur die Dateisperre wird aufgehoben. Die Datei bleibt gegebenenfalls weiter offen, d.h. bei SHOW-FILE-ATTRIBUTES mit STATUS=*PAR( CLOSED-OUTPUT= *YES) wird sie weiterhin angezeigt; für REPAIR-DISK-FILES gilt sie als zu reparierende Datei. Die Datei wird als zu rekonstruierende Datei bei SHOW-FILE-ATTRIBUTES angezeigt (Auswahlkriterium STATUS=*PAR(REPAIR-NEEDED=*YES)).
SAM-Datei: Die Dateisperre wird aufgehoben; ist die Datei als offen gekennzeichnet, wird keine privilegierte Schließoperation durchgeführt, d.h. bei SHOW-FILE-ATTRIBUTES mit STATUS=*PAR( CLOSED-OUTPUT=*YES) wird sie weiterhin angezeigt; für REPAIR-DISK-FILES gilt sie als zu reparierende Datei. Die Datei wird als zu rekonstruierende Datei bei SHOW-FILE-ATTRIBUTES angezeigt (Auswahlkriterium STATUS=*PAR(REPAIR-NEEDED=*YES)).
ISAM-Datei: Die Dateisperre wird aufgehoben; falls die Datei als offen gekennzeichnet ist, wird der Last Page Pointer auf die höchste beschriebene PAM-Seite gesetzt. Für eine Datei auf einer im Dual-Modus betriebenen Platte (siehe Handbuch „DRV“ [11]) wird, falls nötig, die Gleichheit der Dateiblöcke (Inhalt) wiederhergestellt. Inkonsistenzen zwischen Index- und Datenteil sowie bei Sekundär-Schlüsseln werden nicht erkannt und auch nicht behoben. Die Datei gilt nicht mehr als Datei, die zu rekonstruieren ist, d.h., sie wird bei SHOW-FILE-ATTRIBUTES mit STATUS=*PAR(REPAIR-NEEDED=*YES) nicht mehr als zu reparierende Datei angezeigt.
SELECT = *ANY-VOLUME / *PRIVATE-DISK / *PUBLIC-DISK
Beschränkt die Auswahl der zu schließenden Dateien auf den angegebenen Datenträgertyp.
Der Operand ist nur sinnvoll, wenn bei FILE-NAME ein teilqualifizierter Dateiname oder der Name einer Dateigenerationsgruppe angegeben wurde.
SELECT = *ANY-VOLUME
Es werden die angegebenen Dateien ausgewählt, unabhängig davon, auf welchem Datenträger sie sich befinden.
SELECT = *PRIVATE-DISK
Es werden die angegebenen Dateien ausgewählt, die sich auf Privatplatte befinden.
SELECT = *PUBLIC-DISK
Es werden die angegebenen Dateien ausgewählt, die sich auf gemeinschaftlicher Platte befinden.
SELECT = *NET-STORAGE
Es werden die angegebenen Dateien ausgewählt, die sich auf einem Net-Storage-Volume befinden.
OPEN-ALLOWED = *UNCHANGED / *YES
Mit diesem Parameter kann die Systembetreuung vereinbaren, dass das NO-OPEN-ALLOWED-Bit im Katalogeintrag, das ein Öffnen der Datei verhindert, für die angegebene Datei zurückgesetzt wird. Die Datei kann hinterher wieder geöffnet werden.
Kommando-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
---|---|---|---|
0 | CMD0001 | Kommando ausgeführt | |
1 | 0 | CMD0001 | Keine Aktion nötig |
2 | 0 | DMS06E6 | Die im Kommando angegebene Datei ist leer |
2 | 0 | DMS06E9 | Kein gültiger Satz beim Wiederherstellen der ISAM-Datei gefunden |
2 | 0 | DMS06ED | Fehler beim Schreiben der nicht wiederherstellbaren Blöcke in Hilfsdatei |
1 | CMD0202 | Syntax- oder Semantikfehler im Kommando | |
32 | DMS0584 | Während der Verarbeitung wurde ein Zustand gemeldet, der die Fortführung der Funktion nicht zulässt. | |
64 | CMD0216 | Privilegien-Fehler | |
64 | DMS0501 | Angeforderter Katalog nicht verfügbar | |
64 | DMS051B | Gewünschte Benutzerkennung nicht im Pubset | |
64 | DMS051C | Benutzer hat auf Pubset kein Zugriffsrecht | |
64 | DMS0533 | Angegebene Datei im Pubset nicht gefunden | |
64 | DMS0535 | Angegebene Datei nicht mehrfach benutzbar | |
64 | DMS055C | Der Katalogeintrag konnte auf dem zugewiesenen Datenträger nicht gefunden werden | |
64 | DMS0583 | Bei der Wiederherstellung der Datei trat ein Fehler auf. | |
64 | DMS0585 | Während der Katalogverarbeitung bzw. während der Mehrrechnerverarbeitung wurde ein Fehler festgestellt. | |
64 | DMS0586 | Der Zugriff bzw. die Belegung eines Datenträgers ist derzeit nicht möglich | |
64 | DMS0587 | Die Benutzung des angegebenen Kommandos wurde von der Systembetreuung eingeschränkt | |
64 | DMS0588 | Die Plattenspeicher-Zuweisung konnte nicht durchgeführt werden | |
64 | DMS05F8 | DVS-Fehler wurde gemeldet | |
64 | DMS05FC | Angegebene Benutzer-Kennung nicht im HOME-Pubset | |
64 | DMS0609 | Zugriff auf Systemdatei nicht möglich | |
64 | DMS06CC | Keine Datei entspricht den angegebenen Auswahlkriterien | |
64 | DMS06E4 | Datei ist zerstört | |
64 | DMS06E7 | Wiederherstellung mit dem eingegebenen Kommando für diesen Dateityp nicht möglich | |
64 | DMS06FF | BCAM-Verbindung unterbrochen | |
64 | DMS0804 | Datei mit WROUT=NO erstellt. Konsistenz-Prüfung nicht sinnvoll | |
130 | DMS0524 | Systemadressraum erschöpft | |
130 | DMS053C | In der Katalog-Datei des Pubsets kein Platz | |
130 | DMS0582 | Die Datei ist derzeit gesperrt oder in Gebrauch und kann nicht bearbeitet werden | |
130 | DMS0585 | Während der Katalogverarbeitung bzw. während der Mehrrechnerverarbeitung wurde ein Fehler festgestellt. | |
130 | DMS0586 | Der Zugriff bzw. die Belegung eines Datenträgers ist derzeit nicht möglich | |
130 | DMS0588 | Die Plattenspeicher-Zuweisung konnte nicht durchgeführt werden | |
130 | DMS0594 | Nicht genügend virtueller Speicherplatz vorhanden | |
130 | DMS05C8 | Maximale erlaubte Anzahl von Dateien erreicht |