/* Copyright © 1995, 2005, Oracle Corporation. All Rights Reserved. */ #ifndef _KUSRMUAPI_H #define _KUSRMUAPI_H /* MODULE KUSRMUAPI * * Abstract: * * Public constants and definitions for Oracle Rdb implementation of * KUS statistics API. * * Modification History: * * Version 7.2 * 9-Aug-05 29580 (NJL) Add int64_t. * 5-Aug-05 29573 (NJL) Update values for KODA 72 stats. * 13-Apr-04 28587 (TJH) Define QUAD_t to fix kus stats compilation errors * Version 7.1 * 3-Aug-01 26694 (TJH) Remove #pragma from file header * exit * 2-Aug-01 26692 (TJH) Change RMUST_K_RTPMS_BUF_SIZE from 4608 to 4096 * 2-Aug-01 26690 (TJH) Change rtpms size from 4096 4608 * Version 8.0 * 30-Mar-98 23500 (JGK) Fix interpretation of TXN_MODE_FLAGS. * 19-Feb-97 21968 (TJH) Fix compilation problems. * 8-Nov-96 21421 (JC ) Fix previous edit. * 23-Sep-96 21178 (TJH) Add new classes and fields to KUS API. * Version 7.0 * 21-Aug-96 21100 (JC ) Add "replicating" aij state. * 7-May-96 20255 (JC ) Switch from old statsapi to KUS API. * 25-Apr-96 20269 (JC ) Decouple rmust consts from kod consts. * 15-Apr-96 20082 (JC ) Get dbr activity codes. * 21-Dec-95 19259 (PMB) Change copyright as necessary */ #ifndef KUSRMU_API_H #include #endif #include #include /*--------------------------------------------------------------------------*/ /* Types for rtpms data */ /*--------------------------------------------------------------------------*/ #ifndef _COSI_TYPES_H_ typedef signed char int8_t; typedef signed short int int16_t; typedef signed int int32_t; typedef signed __int64 int64_t; typedef unsigned char uint8_t; typedef unsigned short int uint16_t; typedef unsigned int uint32_t; typedef unsigned __int64 uint64_t; typedef __int64 TAD_t; typedef unsigned short int cosi_unsigned16_t; /* uint16_t */ typedef unsigned char BYTES_t; typedef unsigned long cosi_msgvec_t; /* Message vector type */ typedef unsigned long cosi_size_t; /* size_t */ typedef long long_t; typedef __int64 QUAD_t; #endif #include #define RMUST_K_UNKNOWN 99999999 /*--------------------------------------------------------------------------*/ /* Version specific constants. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_RTPMS_BUF_SIZE 8192 /* 1024 * 8 bytes. */ #define RMUST_K_ARPMS_BUF_SIZE 256 /* 32 * 8 bytes. */ /*--------------------------------------------------------------------------*/ /* DBR Activity code constants for RMUST_DBR_ACTIVITY tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_DBR_INACTIVE (0) #define RMUST_K_DBR_BIND (1) #define RMUST_K_DBR_AIJ_RCVR (2) #define RMUST_K_DBR_TSN_UPDT (3) #define RMUST_K_DBR_GB_RCVR (4) #define RMUST_K_DBR_SETUP (5) #define RMUST_K_DBR_OPT_CMT (6) #define RMUST_K_DBR_RDC_RELOAD (7) #define RMUST_K_DBR_REDO (8) #define RMUST_K_DBR_UNDO (9) #define RMUST_K_DBR_REFETCH (10) #define RMUST_K_DBR_FLUSH (11) #define RMUST_K_DBR_UNBIND (12) #define RMUST_K_DBR_ACT_LAST_TAG (12) /*--------------------------------------------------------------------------*/ /* File Block access mode constants for RMUST_T_ACCESS_MODE tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_ACCESS_READ_WRITE (0) #define RMUST_K_ACCESS_READ_ONLY (1) #define RMUST_K_ACCESS_WORM (2) #define RMUST_K_ACCESS_MODE_LAST_TAG (2) /*--------------------------------------------------------------------------*/ /* AIJ status constants for RMUST_T_AIJ_STATUS tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_AIJ_NORMAL 0 #define RMUST_K_AIJ_CORRUPT 1 #define RMUST_K_AIJ_STATUS_LAST_TAG 1 /*--------------------------------------------------------------------------*/ /* AIJ lss 2pc resolution mode constants for RMUST_T_LSS_RESOLVE_2PC tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_AIJMSG_STATE_COMMIT (0) #define RMUST_K_AIJMSG_STATE_ABORT (1) #define RMUST_K_AIJMSG_STATE_IGNORE (2) #define RMUST_K_AIJMSG_STATE_LAST_TAG (2) /*--------------------------------------------------------------------------*/ /* AIJ status constants for RMUST_T_JOURNAL_STATUS tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_JNL_NORMAL 0 #define RMUST_K_JNL_FILACCERR 1 #define RMUST_K_JNL_CORRUPT 2 #define RMUST_K_JNL_EMPTY 3 #define RMUST_K_JNL_OPCODE 4 #define RMUST_K_JNL_FULL 5 #define RMUST_K_JNL_DISABLED 6 #define RMUST_K_JNL_NOT_EMPTY 7 #define RMUST_K_JNL_DBR 8 #define RMUST_K_JNL_STATUS_LAST_TAG 8 /*--------------------------------------------------------------------------*/ /* ALS mode constants for RMUST_T_ALS_MODE_FLG tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_ALS_AUTOMATIC (0) #define RMUST_K_ALS_MANUAL (1) #define RMUST_K_ALS_MODE_LAST_TAG /*--------------------------------------------------------------------------*/ /* Database close mode constants for RMUST_T_CLOSE_MODE tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_CLOSE_AUTOMATIC (0) #define RMUST_K_CLOSE_MANUAL (1) #define RMUST_K_CLOSE_TIMED (2) #define RMUST_K_CLOSE_MODE_LAST_TAG /*--------------------------------------------------------------------------*/ /* Transaction mode constants for RMUST_T_TXN_MODE_FLAGS tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_TXN_MODE_ALL (255) #define RMUST_K_TXN_MODE_NONE (0) /* Bits offsets for txn mode flag field. */ #define RMUST_K_TXN_MODE_CR (0) #define RMUST_K_TXN_MODE_CU (1) #define RMUST_K_TXN_MODE_PR (2) #define RMUST_K_TXN_MODE_PU (3) #define RMUST_K_TXN_MODE_ER (4) #define RMUST_K_TXN_MODE_EU (5) #define RMUST_K_TXN_MODE_BR (6) #define RMUST_K_TXN_MODE_BU (7) #define RMUST_K_TXN_MODE_LAST_TAG (7) /* Masks for txn mode flag field. */ #define RMUST_M_TXN_MODE_CR (1 << RMUST_K_TXN_MODE_CR) #define RMUST_M_TXN_MODE_CU (1 << RMUST_K_TXN_MODE_CU) #define RMUST_M_TXN_MODE_PR (1 << RMUST_K_TXN_MODE_PR) #define RMUST_M_TXN_MODE_PU (1 << RMUST_K_TXN_MODE_PU) #define RMUST_M_TXN_MODE_ER (1 << RMUST_K_TXN_MODE_ER) #define RMUST_M_TXN_MODE_EU (1 << RMUST_K_TXN_MODE_EU) #define RMUST_M_TXN_MODE_BR (1 << RMUST_K_TXN_MODE_BR) #define RMUST_M_TXN_MODE_BU (1 << RMUST_K_TXN_MODE_BU) /*--------------------------------------------------------------------------*/ /* Cache status constants for RMUST_T_CACHE_STATUS tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_ACE_NORMAL (0) #define RMUST_K_ACE_WRITERR (1) #define RMUST_K_ACE_NOTOPEN (2) /*--------------------------------------------------------------------------*/ /* LSS state constants for RMUST_T_LSS_STATE tag. */ /*--------------------------------------------------------------------------*/ /* Inactive (server not running) */ #define RMUST_K_LSS_INACTIVE ((1 << 0)) /* Binding to database */ #define RMUST_K_LSS_DB_BIND ((1 << 1)) /* Binding to network */ #define RMUST_K_LSS_NET_BIND ((1 << 2)) /* Replication restart activity */ #define RMUST_K_LRS_RESTART ((1 << 3)) /* Waiting for LCS to connect */ #define RMUST_K_LSS_CONNECT ((1 << 4)) /* Database synchronization */ #define RMUST_K_LSS_DB_SYNC ((1 << 5)) /* LSS server activation */ #define RMUST_K_LSS_ACTIVATE ((1 << 6)) /* LRS synchronization redo completion */ #define RMUST_K_LRS_SYNC_REDO ((1 << 7)) /* Database replication */ #define RMUST_K_LSS_REPLICATE ((1 << 8)) /* Replication suspended */ #define RMUST_K_LRS_SUSPENDED ((1 << 9)) /* Replication resumed (catchup) */ #define RMUST_K_LRS_RESUMPTION ((1 << 10)) /* Replication completion */ #define RMUST_K_LRS_COMPLETION ((1 << 11)) /* Replication cleanup */ #define RMUST_K_LSS_SHUTDOWN ((1 << 12)) /* Unbinding from network */ #define RMUST_K_LSS_NET_UNBIND ((1 << 13)) /* Unbinding from database */ #define RMUST_K_LSS_DB_UNBIND ((1 << 14)) /* Recovering from failure */ #define RMUST_K_LSS_RECOVERY ((1 << 15)) /* Database replication over DECnet */ #define RMUST_K_LSS_REPLICATE_DECNET ((1 << 16)) /* Database replication over TCPIP */ #define RMUST_K_LSS_REPLICATE_TCPIP ((1 << 17)) /*--------------------------------------------------------------------------*/ /* Database replication sync modes - RMUST_T_AIJ_AUTO(DATA)_SYNC */ /*--------------------------------------------------------------------------*/ #define RMUST_K_SYNC_COLD 0 #define RMUST_K_SYNC_WARM 1 #define RMUST_K_SYNC_HOT 2 #define RMUST_K_SYNC_COMMIT 3 /*--------------------------------------------------------------------------*/ /* Platform codes for KUSRMU_T_PLATFORM tag. */ /*--------------------------------------------------------------------------*/ #define RMUST_K_VMS 1 #define RMUST_K_OSF 2 #define RMUST_K_NT 3 /* /* This constant is the number of bytes used per TLV buffer for overhead. */ /* This currently is 4 bytes for a buffer truncation/continuation/end tag + */ /* its length designation. */ /* In the buffer representation, a TLV set has 2 bytes for the tag, 2 */ /* bytes for the length, the data, and is longword aligned. */ #define RMUSTTLV_CONTROL_BYTES 4 /* * DO NOT ADD ANY STATEMENTS BELOW THIS LINE! */ #endif /* ifndef MODULE */