RGMAException Struct Reference

#include <rgma.h>


Data Fields

int errorType
int errorNumber
char * errorMessage
int numSuccessfulOps


Detailed Description

The RGMAException structure holds an R-GMA exception (of any type). Exceptions are created by R-GMA services when an operation fails, and by the API if a local error occurs. You can obtain a pointer to the most recent exception in a resource, by calling RGMA_getException.

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).


Field Documentation

int errorType
 

Exception type.

int errorNumber
 

Error code.

char* errorMessage
 

Error message.

int numSuccessfulOps
 

Number of operations that completed successfully.


Generated on Fri Mar 16 14:00:37 2007 for RGMA C API by doxygen 1.3.5