SE_instance_get_table_locks

Returns a list of table locks in use on a specified ArcSDE instance

Usage syntax

LONG SE_instance_get_table_locks (const CHAR *server, const CHAR *instance, SE_INSTANCE_TABLE_LOCK **lock_list_addr, LONG *lock_count_addr);

Parameters
server The server name
instance The ArcSDE instance name
lock_list_addr Pointer to an array of returned SE_INSTANCE_TABLE_LOCK structures
lock_count_addr The number of SE_INSTANCE_TABLE_LOCK structures returned
Description

SE_instance_get_table_locks returns an array of SE_INSTANCE_TABLE_LOCK structures, one for each lock currently in place on the specified ArcSDE instance on the specified node. The default instance name is esri_sde. The application should free the list when it is done by calling SE_instance_free_table_locks.

The following information is returned in the SE_INSTANCE_TABLE_LOCK structure:

typedef struct _SE_InstanceTableLock {
LONG   pid;               /* Gsrvr process id that holds this lock. */
LONG   registration_id;   /* Table being locked. */
SHORT  lock_type;         /* Shared, exclusive or table. */
} SE_INSTANCE_TABLE_LOCK;

The lock types are:

SE_TABLE_SHARED_SCHEMA_LOCK    
SE_TABLE_EXCLUSIVE_SCHEMA_LOCK 

Returns

SE_SUCCESS
SE_FAILURE

SE_INSTANCE_NOT_AVAILABLE

SE_INSTANCE_TOO_EARLY

SE_INVALID_POINTER

SE_IOMGR_NOT_AVAILABLE

SE_NET_FAILURE

SE_OUT_OF_CLMEM

SE_OUT_OF_SVMEM

SE_SERVICE_NOT_FOUND