//============== DAE: OS/2 Database Access Engine =================== //============== daeconst.h: Global System Constants =================== #define cpgDatabaseMin 16 #define cpgDatabaseMax (1UL << 19) #define pgnoSystemRoot ((PGNO) 1) #define itagSystemRoot 0 #define szSystemDatabase "system.mdb" #define szTempDBFileName "temp.mdb" #define szTempFile "temp.tmp" /* number of pages of system root FDP primary extent */ #define cpgSystemPrimary ((CPG) 1) /* initial temporary file allocation */ #define cpgTempFile ((CPG) 1) /* discontinuity measurement unit /**/ #define cpgDiscont 16 /* default density /**/ #define ulDefaultDensity 80 // 80% density #define ulFILEDensityLeast 20 // 20% density #define ulFILEDensityMost 100 // 100% density #define dbidTemp ((DBID) 0) #define dbidSystemDatabase ((DBID) 1) #define dbidUserMin ((DBID) 1) #define dbidMin ((DBID) 0) #define dbidUserMax ((DBID) 67) #define dbidMax dbidUserMax /* number of buffer hash table entries /* should be prime /**/ #define ipbfMax 8191 /* vertical split threshold /**/ #define cbVSplitThreshold 400 /* Engine OBJIDs: /* /* 0..0x10000000 reserved for engine use, divided as follows: /* /* 0x00000000..0x0000FFFF reserved for TBLIDs under RED /* 0x00000000..0x0EFFFFFF reserved for TBLIDs under BLUE /* 0x0F000000..0x0FFFFFFF reserved for container IDs /* 0x10000000 reserved for ObjectId of DbObject /* /* Client OBJIDs begin at 0x10000001 and go up from there. /**/ #define objidNil ((OBJID) 0x00000000) #define objidRoot ((OBJID) 0x0F000000) #define objidTblContainer ((OBJID) 0x0F000001) #define objidDbContainer ((OBJID) 0x0F000002) #define objidRcContainer ((OBJID) 0x0F000003) #define objidDbObject ((OBJID) 0x10000000) /* Magic number used in database root node for integrity checking /**/ #define ulDAEMagic 0x89abcdef #define ulDAEVersion 0x00000001 #define ulDAEPrevVersion 0x00000000 #define szVerbose "BLUEVERBOSE" #define szNull "" /* transaction level limits. /**/ #define levelMax ((LEVEL)10) // all level < 10 #define levelMost ((LEVEL)9) // max for engine #define levelUserMost ((LEVEL)7) // max for user #define levelMin ((LEVEL)0) /* Start and max waiting period for WaitTillOldest /**/ #define ulStartTimeOutPeriod 20 #define ulMaxTimeOutPeriod 60000 /* default resource allocation /**/ #define cDBOpenDefault 100 #define cbucketLowerThreshold 8 #define cbufThresholdLowDefault 20 #define cbufThresholdHighDefault 80 #define cpibDefault 10 #define cbgcbDefault 4 #define cfucbDefault 300 #define cfcbDefault 300 #define cscbDefault 20 #define cidbDefault cfcbDefault #define cbufDefault 500 #define clgsecBufDefault 21 #define clgsecGenDefault 250 #define clgsecFTHDefault 10 #define cbucketDefault 64 #define lWaitLogFlushDefault 15 #define lLogFlushPeriodDefault 45 #define lLGCheckpointPeriodDefault 10 //#define lLGCheckpointPeriodDefault 100 #define lLGWaitingUserMaxDefault 3 #define lPageFragmentDefault 8 #define cdabDefault 100 #define lBufLRUKCorrelationIntervalDefault 0 #define lBufBatchIOMaxDefault 64 #define lPageReadAheadMaxDefault 4 #define lAsynchIOMaxDefault 64 /* resource relationships for derived resources /**/ #define lCSRPerFUCB 2 /* system resource requirements /**/ #define cpibSystem 3 #define cbucketSystem 2 /* vertical split minimum in non-FDP page. /**/ #define cbVSplitMin 100 /* code page constants. /**/ #define usUniCodePage 1200 /* code page for Unicode strings */ #define usEnglishCodePage 1252 /* code page for English */ /* length of modified page list /**/ #define cmpeMax 8192 /* idle processing constants /**/ #define icallIdleBMCleanMax cmpeMax /* wait time for latch/crit conflicts /**/ #define cmsecWaitGeneric 100 #define cmsecWaitWriteLatch 10 #define cmsecWaitLogFlush 1