Parameter der Transaktionssicherung ändern
Geltungsbereich
DBH-Administration
Siehe auch
DBH-Option TRANSACTION-SECURITY auf "TRANSACTION-SECURITY"
Funktionsbeschreibung
Mit der Anweisung MODIFY-TRANSACTION-SECURITY können Sie den Parameter LOCK-TIME, den Parameter INACTIVITY-TIME oder den Parameter LOCK-ESCALATION der DBH-Option TRANSACTION-SECURITY während des laufenden Betriebs ändern.
Es wird nur jeweils der Parameter geändert, der in der Anweisung MODIFY-TRANSACTI-ON-SECURITY angegeben ist. Alle anderen Werte bleiben unverändert. Die beim Parameter LOCK-ESCALATION geänderten Werte werden erst wirksam, wenn eine Transaktion nach der Modifikation ihren ersten Zugriff auf eine Tabelle oder einen Index macht. Die Änderungen wirken nicht bei Transaktionen, die zum Zeitpunkt der Optionsänderung schon Zugriff auf eine Tabelle oder einen Index haben.
MODIFY-TRANSACTION-SECURITY | ||||||||||||||||||||||||||||||||||||
|
Operandenbeschreibung
SELECT = *LOCK-TIME(...)
Ändert die Zeit, nach der eine untätige Transaktion, die andere Transaktionen sperrt, zurückgesetzt werden soll.
TIME = 4 / <integer 1..999>
Neuer Wert in Minuten. Der bei LOCK-TIME angegebene Wert darf nicht größer sein als der aktuelle Wert von INACTIVITY-TIME. Anderenfalls wird die Anweisung abgewiesen.
SELECT = *INACTIVITY-TIME(...)
Legt fest, nach wievielen Minuten eine offene, aber untätige Transaktion zurückgesetzt werden soll.
TIME = 40 / <integer 1..999>
Neuer Wert in Minuten. Der bei INACTIVITY-TIME angegebene Wert darf nicht kleiner sein als der aktuelle Wert von LOCK-TIME. Anderenfalls wird die Anweisung abgewiesen..
SELECT = *LOCK-ESCALATION(...)
Ändert die Grenzwerte, ab denen Sperren eskalieren. Eskalation bedeutet, dass SESAM/SQL versucht, den gesamten Index bzw. die gesamte Tabelle zu sperren.
NUMBER-RECORDS = 4000 / <integer 1..2147483647>
Legt die Anzahl der Sätze in einer Tabelle fest, die ein Auftraggeber sperren kann. Werden mehr Sätze gesperrt, so wird versucht, die ganze Tabelle zu sperren.
PERCENTAGE-RECORDS = 50 / <integer 0..100>
Legt den Anteil der Sätze an allen Sätzen der Tabelle fest, die ein Auftraggeber sperren kann. Wenn ein größerer Anteil gesperrt wird, dann versucht SESAM/SQL, die gesamte Tabelle zu sperren. Wird für den Anteil 0 gewählt, so wird immer gleich die gesamte Tabelle gesperrt.
NUMBER-INDEX-VALUES = 1000 / <integer 1..2147483647>
Legt die Anzahl der Werte fest, die ein Auftraggeber in einem Index sperren kann. Wird eine größere Anzahl gesperrt, wird versucht statt einzelner Werte den gesamten Index zu sperren.
Administrationskommando im ISP-Format und an der CALL-DML-Schnittstelle
Hier entsprechen der Administrationsanweisung MODIFY-TRANSACTION-SECURITY fünf Administrationskommandos des Formats OPT,TA-SEC, jeweils mit spezifischen Operanden.
OPT,TA-SEC,L[OCK-TIME]=n OPT,TA-SEC,I[NACT-TIME]=m OPT,TA-SEC,E[SCALATE-LOCK],N[UMBER]-R[ECORDS]=l {[,P[ERCENTAGE]-R[ECORDS]=k][,N[UMBER]-I[NDEX-VALUES]=j]| [,N[UMBER]-I[NDEX-VALUES]=j][,P[ERCENTAGE]-R[ECORDS]=k]} OPT,TA-SEC,E[SCALATE-LOCK],P[ERCENTAGE]-R[ECORDS]=k {[,N[UMBER]-R[ECORDS]=l][,N[UMBER]-I[NDEX-VALUES]=j]| [,N[UMBER]-I[NDEX-VALUES]=j][,N[UMBER]-R[ECORDS]=l]} OPT,TA-SEC,E[SCALATE-LOCK],N[UMBER]-I[NDEX-VALUES]=j {[,P[ERCENTAGE]-R[ECORDS]=k][,N[UMBER]-R[ECORDS]=l]| [,N[UMBER]-R[ECORDS]=l][,P[ERCENTAGE]-R[ECORDS]=k]}
Für n und m kann jeweils eine Zahl zwischen 1 und 999 angegeben werden.
Für l und j kann jeweils eine Zahl zwischen 1 und 231-1 angegeben werden.
Für k kann ein Prozentwert zwischen 0 und 100 angegeben werden.