dsmEndTxnEx

L'appel de fonction dsmEndTxnEx fournit des informations sur l'ID objet du représentant de groupe que vous pouvez utiliser avec l'appel de fonction dsmGroupHandler. Il s'agit d'une extension de l'appel de fonction dsmEndTxn .

Syntaxe

dsInt16_t dsmEndTxnEx (dsmEndTxnExIn_t *dsmEndTxnExInP 
                       dsmEndTxnExOut_t *dsmEndTxnExOutP); 

Paramètres

dsmEndTxnExIn_t *dsmEndTxnExInP (I)
Cette structure contient les paramètres suivants :
dsmHandle
Descripteur qui identifie la session et l'associe aux appels IBM® Storage Protect ultérieurs.
dsUint8_t vote (I)
Indique si le client d'application valide ou non toutes les actions effectuées entre l'appel dsmBeginTxn précédent et cet appel. Les valeurs admises sont les suivantes :
   DSM_VOTE_COMMIT     /* commit current transaction    */
   DSM_VOTE_ABORT      /* roll back current transaction */
Utilisez DSM_VOTE_ABORT uniquement si votre application a trouvé une raison d'arrêter la transaction.
dsmEndTxnExOut_t *dsmEndTxnExOutP (O)
Cette structure contient les paramètres suivants :
dsUint16_t *reason (O)
Si l'appel à dsmEndTxnEx se termine avec une erreur ou si la valeur de vote n'est pas acceptée, ce paramètre comporte un code raison indiquant la raison de l'échec du vote.
Astuce: Le code retour de l'appel peut être zéro et le code raison peut être différent de zéro. Par conséquent, le client d'application doit toujours rechercher les erreurs sur le code retour et la raison (if (rc || reason)) avant de pouvoir supposer que l'opération a abouti.

Si l'application indique un vote DSM_VOTE_ABORT, le code raison est DSM_RS_ABORT_BY_CLIENT (3). Voir le fichier source des codes retour de l'API : dsmrc.h pour obtenir la liste des codes anomalie possibles. Les nombres 1 à 50 dans la liste des codes retour sont réservés pour les codes raison. Si le serveur termine la transaction, le code retour est DSM_RC_CHECK_REASON_CODE. Dans ce cas, la valeur de la raison contient des informations supplémentaires sur la cause de l'abandon.

groupLeaderObjId
ID objet de leader de groupe renvoyé lorsque l'indicateur DSM_ACTION_OPEN est utilisé avec l'appel dsmGroupHandler .

Codes retour

Les numéros de code retour sont indiqués entre parenthèses ( ).

Tableau 1. Codes retour pour dsmEndTxnEx
Code retour Explication
DSM_RC_INVALID_VOTE (2011) La valeur qui a été indiquée pour vote n'est pas valide.
DSM_RC_CHECK_REASON_CODE (2302) La transaction a été abandonnée. Vérifiez la zone cause.
DSM_RC_ABORT_STGPOOL_COPY_CONT_NO (241) L'écriture dans l'un des pools de stockage de copie a échoué et l'option de pool de stockage IBM Storage Protect COPYCONTINUE a été définie sur NO. La transaction s'arrête.
DSM_RC_ABORT_RETRY_SINGLE_TXN (242) Au cours d'une opération d'écriture simultanée, un objet de la transaction est envoyé à une cible contenant des pools de stockage de copie différents. Terminez la transaction en cours et renvoyez chaque objet dans sa propre transaction.