00001 //-< CONFIG.H >------------------------------------------------------*--------* 00002 // FastDB Version 1.0 (c) 1999 GARRET * ? * 00003 // (Post Relational Database Management System) * /\| * 00004 // * / \ * 00005 // Created: 21-Jan-2004 K.A. Knizhnik * / [] \ * 00006 // Last update: 21-Jan-2004 K.A. Knizhnik * GARRET * 00007 //-------------------------------------------------------------------*--------* 00008 // FastDB configuration definitions 00009 //-------------------------------------------------------------------*--------* 00010 00011 #ifndef __CONFIG_H__ 00012 #define __CONFIG_H__ 00013 00014 // USE_LOCALE_SETTINGS - use C locale for string comparison operations 00015 #define USE_LOCALE_SETTINGS 1 00016 00017 // FASTDB_DEBUG - debug level 00018 // - DEBUG_NONE - disable any checking and tracing (except asserts) 00019 // - DEBUG_CHECK - disable trace message 00020 // - DEBUG_TRACE - enable trace messages 00021 //#define FASTDB_DEBUG DEBUG_TRACE 00022 00023 // SECURE_SERVER - enable authentication for remote logins: keep user/password table, 00024 // check password for remote logins 00025 //#define SECURE_SERVER 1 00026 00027 // USE_QUEUE_MANAGER - use queue manager for internal HTTP server. 00028 // This manager will manage pool of threads assigned for client connections. 00029 // Otherwise all requests will be executed sequnetially in the main loop. 00030 //#define USE_QUEUE_MANAGER 1 00031 00032 00033 // FASTDB_DLL - create gigabase.dll 00034 //#define FASTDB_DLL 1 00035 00036 00037 // THROW_EXCEPTION_ON_ERROR - throw C++ exception in case of database error instead of abort() 00038 #define THROW_EXCEPTION_ON_ERROR 1 00039 00040 00041 //IGNORE_CASE - perform all string comparisons as case insensitive 00042 //#define IGNORE_CASE 1 00043 00044 //USE_STD_STRING - accept std::string class as table field type 00045 #ifdef _WIN32 00046 #define USE_STD_STRING 1 00047 #endif 00048 00049 //AUTOINCREMENT_SUPPORT - support autoincrement fields 00050 // (database built with this flag will be incompatible with database built without it) 00051 #define AUTOINCREMENT_SUPPORT 1 00052 00053 //CLONE_IDENTIFIERS - do not storef addresses of string constants in symbol table. 00054 // This option is needed if DLL library using GigaBASE can be unloaded. 00055 //#define CLONE_IDENTIFIERS 1 00056 00057 //DISKLESS_CONFIGURATION - only in-memory temporary database 00058 //#define DISKLESS_CONFIGURATION 1 00059 00060 //SET_NULL_DACL - use NULL DACL security descriptor for all synchronization objects. 00061 //#define SET_NULL_DACL 1 00062 00063 //INT8_IS_DEFINED - int8 type is defined at your system, in this case you should use db_int8 type instead 00064 //#define INT8_IS_DEFINED 1 00065 00066 //USE_POSIX_SEMAPHORES use POSIX sem_* sempahores instead of SysV semaphores 00067 // instead of SysV semaphores and shared memory 00068 //#define USE_POSIX_SEMAPHORES 1 00069 00070 00071 //USE_POSIX_MMAP - if 1 then use Posix mmap for mapping database file and monitor, 00072 // if 0 - use SysV IPC shmem for allocating memory for database file and monitor, 00073 // if not defined - use mmap for mapping database file and shmem for allocating monitor 00074 //#define USE_POSIX_MMAP 0 00075 00076 //REPLICATION_SUPPORT - fault tolerant version of FastDB 00077 //#define REPLICATION_SUPPORT 1 00078 00079 //NO_MMAP do not use OS mappig of file on virtual memory. FastDB will track modification of 00080 // pages itself and save dirty pages in the file. If USE_POSIX_API=0, memory for database is 00081 // allocated using shmat() and database can be shared by several processes, 00082 // otherwise - using valloc() and database can be accessed only by one process. 00083 //#define NO_MMAP 1 00084 00085 00086 //USE_MFC - use MFC (include "afx.h" instead of "windows.h") 00087 //#define USE_MFC 1 00088 00089 //USE_ATL - use Microsoft ATL 00090 //#define USE_ATL 1 00091 00092 //USE_MFC_STRING - accept MVC CString class as table field type 00093 //#define USE_MFC_STRING 00094 00095 #endif