dsmEndTxn
Der Funktionsaufruf dsmEndTxn beendet eine IBM® Storage Protect -Transaktion.
Koppeln Sie den Funktionsaufruf dsmEndTxn mit dsmBeginTxn , um den Aufruf oder die Gruppe von Aufrufen zu identifizieren, die als Transaktion betrachtet werden.
Der Anwendungsclient kann im dsmEndTxn -Aufruf angeben, ob die Transaktion festgeschrieben oder beendet werden muss.
Führen Sie alle folgenden Aufrufe innerhalb der Grenzen einer Transaktion aus:
- dsmSendObj
- dsmSendData
- dsmEndSendObj
- dsmDeleteObj
Syntax
dsInt16_t dsmEndTxn (dsUint32_t dsmHandle,
dsUint8_t vote,
dsUint16_t *reason); Parameter
- dsUint32_t dsmHandle (I)
- Die Kennung, die diesen Aufruf einem vorherigen Aufruf dsmInitEx zuordnet.
- dsUint8_t vote (I)
- Gibt an, ob der Anwendungsclient alle Aktionen festschreibt, die zwischen dem vorherigen Aufruf dsmBeginTxn und diesem Aufruf ausgeführt werden. Die folgenden Werte sind gültig:
Verwenden SieDSM_VOTE_COMMIT /* commit current transaction */ DSM_VOTE_ABORT /* roll back current transaction */DSM_VOTE_ABORTnur, wenn Ihre Anwendung einen Grund zum Stoppen der Transaktion findet. - dsUint16_t *reason (O)
- Wenn der Aufruf von dsmEndTxn mit einem Fehler endet oder der Wert von
votenicht akzeptiert wird, hat dieser Parameter einen Ursachencode, der angibt, warum die Abstimmung fehlgeschlagen ist. Der Rückkehrcode für den Aufruf kann null sein, während der Ursachencode ungleich null sein kann. Daher muss der Anwendungsclient immer sowohl den Rückkehrcode als auch den Ursachencode (if (rc || reason)) auf Fehler überprüfen, bevor die Ausführung als erfolgreich betrachtet werden kann.Wenn die Anwendung als Votum
DSM_VOTE_ABORTangibt, ist der UrsachencodeDSM_RS_ABORT_BY_CLIENT (3). Eine Liste der möglichen Ursachencodes finden Sie in der Quellendatei für API-Rückkehrcodes: dsmrc.h . Die Zahlen 1 bis 50 in der Liste der Rückkehrcodes sind für die Ursachencodes reserviert. Wenn der Server die Transaktion beendet, ist der RückkehrcodeDSM_RC_CHECK_REASON_CODE. In diesem Fall enthält der Wert des Ursachencodes weitere Informationen zu der Ursache des Abbruchs.
Rückkehrcodes
Die Rückkehrcodenummern sind in runden Klammern ( ) angegeben.
| Rückkehrcode | Erläuterung |
|---|---|
DSM_RC_ABORT_CRC_FAILED (236) |
Das Befehlserkennungszeichen (CRC), das vom Server empfangen wurde, entspricht nicht dem CRC, das vom Client errechnet wurde. |
DSM_RC_INVALID_VOTE (2011) |
Der für vote angegebene Wert
ist ungültig. |
DSM_RC_CHECK_REASON_CODE
(2302) |
Die Transaktion wurde abgebrochen. Überprüfen Sie das Feld für die Ursache. |
DSM_RC_ABORT_STGPOOL_COPY_CONT_NO
(241) |
Der Schreibvorgang in einen der Kopienspeicherpools ist fehlgeschlagen und die IBM Storage Protect -Speicherpooloption COPYCONTINUE ist auf NOgesetzt. Die Transaktion wird abgebrochen. |
DSM_RC_ABORT_RETRY_SINGLE_TXN
(242) |
Dieser Abbruchcode gibt an, dass die aktuelle
Transaktion aufgrund eines Fehlers während einer Speicheroperation abgebrochen
wurde. Der Fehler kann behoben werden, indem jede Datei in einer eigenen
Transaktion gesendet wird. Dieser Fehler ist typisch bei folgenden Bedingungen:
|