#include <rgma.h>
Data Fields | |
int | errorType |
int | errorNumber |
char * | errorMessage |
int | numSuccessfulOps |
The errorType field will be one of the following:
o RGMA_REMOTEEXCEPTION (errors connecting to service)
o RGMA_UNKNOWNRESOURCEEXCEPTION (requested resource does not exist)
o RGMA_EXCEPTION (all other RGMA errors)
(the RGMA_APIEXCEPTION type is no longer used)
The errorNumber field can provide more information that users might wish to use in their code when errorType is RGMA_EXCEPTION (only). It can take the following values:
o RGMA_SECURITYEXCEPTION (authentication or authorization failed)
o RGMA_USEREXCEPTION (invalid parameters, invalid tuple data or resource in wrong state for operation)
o RGMA_BUFFERFULLEXCEPTION (producer's buffer is full)
o RGMA_UNCLASSIFIEDEXCEPTION (some other error - see errorMessage)
The errorMessage field will describe the error, and will never be NULL.
The numSuccessfulOps field shows the number of operations that completed successfully before the exception was raised. It will only be non-zero in batch operations that have partially succeeded - currently, this means just RGMAPrimaryProducer_insertList().
Exception structures are declared in the user's code: the user passes the address of an RGMAException strucure to the API. The API guarantees to fill in the exception details if the API call returns a failure status. You can free the memory used to fill in an exception by calling RGMA_freeException (you should NOT call this if the API call succeeds).
|
Exception type. |
|
Error code. |
|
Error message. |
|
Number of operations that completed successfully. |