8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-23 08:03:04 +01:00

Corrections suggested by Claudio

This commit is contained in:
brodsom 2004-05-03 22:42:47 +00:00
parent a58d5d5ec1
commit ee861d41ec
10 changed files with 131 additions and 114 deletions

View File

@ -46,11 +46,14 @@ struct ini_idx_t {
/* Encoded descriptions of system indices */
using Jrd::idx_unique;
using Jrd::idx_metadata;
using Jrd::idx_numeric;
using Jrd::idx_descending;
#define INDEX(id,flag,rel,unique,count) {(id),(flag),(UCHAR) (rel),(unique),(count),{
#define SEGMENT(fld,type) {(fld),(type)}
using namespace Jrd;
static const struct ini_idx_t indices[] = {
/* define index RDB$INDEX_0 for RDB$RELATIONS unique RDB$RELATION_NAME; */

View File

@ -29,12 +29,12 @@
#include <stdio.h>
#include "../jrd/common.h"
const int CHR_LETTER = 1;
const int CHR_DIGIT = 2;
const int CHR_IDENT = 4;
const int CHR_QUOTE = 8;
const int CHR_WHITE = 16;
const int CHR_HEX = 32;
const UCHAR CHR_LETTER = 1;
const UCHAR CHR_DIGIT = 2;
const UCHAR CHR_IDENT = 4;
const UCHAR CHR_QUOTE = 8;
const UCHAR CHR_WHITE = 16;
const UCHAR CHR_HEX = 32;
extern struct symb dbt_symbols[];

View File

@ -329,16 +329,16 @@ const ULONG DBB_being_opened = 0x400000L; /* database is being attached to */
//
// dbb_ast_flags
//
const ULONG DBB_blocking = 0x1L; // Exclusive mode is blocking
const ULONG DBB_get_shadows = 0x2L; // Signal received to check for new shadows
const ULONG DBB_assert_locks = 0x4L; // Locks are to be asserted
const ULONG DBB_shutdown = 0x8L; // Database is shutdown
const ULONG DBB_shut_attach = 0x10L; // no new attachments accepted
const ULONG DBB_shut_tran = 0x20L; // no new transactions accepted
const ULONG DBB_shut_force = 0x40L; // forced shutdown in progress
const ULONG DBB_shutdown_locks = 0x80L; // Database locks release by shutdown
const ULONG DBB_shutdown_full = 0x100L; // Database fully shut down
const ULONG DBB_shutdown_single = 0x200L; // Database is in single-user maintenance mode
const UATOM DBB_blocking = 0x1L; // Exclusive mode is blocking
const UATOM DBB_get_shadows = 0x2L; // Signal received to check for new shadows
const UATOM DBB_assert_locks = 0x4L; // Locks are to be asserted
const UATOM DBB_shutdown = 0x8L; // Database is shutdown
const UATOM DBB_shut_attach = 0x10L; // no new attachments accepted
const UATOM DBB_shut_tran = 0x20L; // no new transactions accepted
const UATOM DBB_shut_force = 0x40L; // forced shutdown in progress
const UATOM DBB_shutdown_locks = 0x80L; // Database locks release by shutdown
const UATOM DBB_shutdown_full = 0x100L; // Database fully shut down
const UATOM DBB_shutdown_single = 0x200L; // Database is in single-user maintenance mode
//
// Database attachments
@ -484,33 +484,33 @@ public:
/* Attachment flags */
const int ATT_no_cleanup = 1; // Don't expunge, purge, or garbage collect
const int ATT_shutdown = 2; // attachment has been shutdown
const int ATT_shutdown_notify = 4; // attachment has notified client of shutdown
const int ATT_shutdown_manager = 8; // attachment requesting shutdown
const int ATT_lck_init_done = 16; // LCK_init() called for the attachment
const int ATT_exclusive = 32; // attachment wants exclusive database access
const int ATT_attach_pending = 64; // Indicate attachment is only pending
const int ATT_exclusive_pending = 128; // Indicate exclusive attachment pending
const int ATT_gbak_attachment = 256; // Indicate GBAK attachment
const int ATT_security_db = 512; // Indicates an implicit attachment to the security db
const ULONG ATT_no_cleanup = 1; // Don't expunge, purge, or garbage collect
const ULONG ATT_shutdown = 2; // attachment has been shutdown
const ULONG ATT_shutdown_notify = 4; // attachment has notified client of shutdown
const ULONG ATT_shutdown_manager = 8; // attachment requesting shutdown
const ULONG ATT_lck_init_done = 16; // LCK_init() called for the attachment
const ULONG ATT_exclusive = 32; // attachment wants exclusive database access
const ULONG ATT_attach_pending = 64; // Indicate attachment is only pending
const ULONG ATT_exclusive_pending = 128; // Indicate exclusive attachment pending
const ULONG ATT_gbak_attachment = 256; // Indicate GBAK attachment
const ULONG ATT_security_db = 512; // Indicates an implicit attachment to the security db
#ifdef GARBAGE_THREAD
const int ATT_notify_gc = 1024; // Notify garbage collector to expunge, purge ..
const int ATT_disable_notify_gc = 2048; // Temporarily perform own garbage collection
const int ATT_garbage_collector = 4096; // I'm a garbage collector
const ULONG ATT_notify_gc = 1024; // Notify garbage collector to expunge, purge ..
const ULONG ATT_disable_notify_gc = 2048; // Temporarily perform own garbage collection
const ULONG ATT_garbage_collector = 4096; // I'm a garbage collector
const int ATT_NO_CLEANUP = (ATT_no_cleanup | ATT_notify_gc);
const ULONG ATT_NO_CLEANUP = (ATT_no_cleanup | ATT_notify_gc);
#else
const int ATT_NO_CLEANUP = ATT_no_cleanup;
const ULONG ATT_NO_CLEANUP = ATT_no_cleanup;
#endif
#ifdef CANCEL_OPERATION
const int ATT_cancel_raise = 8192; // Cancel currently running operation
const int ATT_cancel_disable = 16384; // Disable cancel operations
const ULONG ATT_cancel_raise = 8192; // Cancel currently running operation
const ULONG ATT_cancel_disable = 16384; // Disable cancel operations
#endif
const int ATT_gfix_attachment = 32768; // Indicate a GFIX attachment
const int ATT_gstat_attachment = 65536; // Indicate a GSTAT attachment
const ULONG ATT_gfix_attachment = 32768; // Indicate a GFIX attachment
const ULONG ATT_gstat_attachment = 65536; // Indicate a GSTAT attachment
/* Procedure block */
@ -546,21 +546,23 @@ class jrd_prc : public pool_alloc_rpt<SCHAR, type_prc>
explicit jrd_prc(MemoryPool& p) : prc_security_name(p), prc_name(p) {}
};
const int PRC_scanned = 1; /* Field expressions scanned */
const int PRC_system = 2;
const int PRC_obsolete = 4; /* Procedure known gonzo */
const int PRC_being_scanned = 8; /* New procedure needs dependencies during scan */
const int PRC_blocking = 16; /* Blocking someone from dropping procedure */
const int PRC_create = 32; /* Newly created */
const int PRC_being_altered = 64; /* Procedure is getting altered */
// prc_flags
const USHORT PRC_scanned = 1; /* Field expressions scanned */
const USHORT PRC_system = 2;
const USHORT PRC_obsolete = 4; /* Procedure known gonzo */
const USHORT PRC_being_scanned = 8; /* New procedure needs dependencies during scan */
const USHORT PRC_blocking = 16; /* Blocking someone from dropping procedure */
const USHORT PRC_create = 32; /* Newly created */
const USHORT PRC_being_altered = 64; /* Procedure is getting altered */
// This flag is used to make sure that MET_remove_procedure
// does not delete and remove procedure block from cache
// so dfw.epp:modify_procedure() can flip procedure body without
// invalidating procedure pointers from other parts of metadata cache
const int PRC_check_existence = 128; /* Existence lock released */
const USHORT PRC_check_existence = 128; /* Existence lock released */
const int MAX_PROC_ALTER = 64; /* No. of times an in-cache procedure can be altered */
const USHORT MAX_PROC_ALTER = 64; /* No. of times an in-cache procedure can be altered */
@ -674,19 +676,21 @@ public:
frgn rel_foreign_refs; /* foreign references to other relations' primary keys */
};
const int REL_scanned = 1; /* Field expressions scanned (or being scanned) */
const int REL_system = 2;
const int REL_deleted = 4; /* Relation known gonzo */
const int REL_get_dependencies = 8; /* New relation needs dependencies during scan */
const int REL_force_scan = 16; /* system relation has been updated since ODS change, force a scan */
const int REL_check_existence = 32; /* Existence lock released pending drop of relation */
const int REL_blocking = 64; /* Blocking someone from dropping relation */
const int REL_sys_triggers = 128; /* The relation has system triggers to compile */
const int REL_sql_relation = 256; /* Relation defined as sql table */
const int REL_check_partners = 512; /* Rescan primary dependencies and foreign references */
const int REL_being_scanned = 1024; /* relation scan in progress */
const int REL_sys_trigs_being_loaded = 2048; /* System triggers being loaded */
const int REL_deleting = 4096; /* relation delete in progress */
// rel_flags
const USHORT REL_scanned = 1; /* Field expressions scanned (or being scanned) */
const USHORT REL_system = 2;
const USHORT REL_deleted = 4; /* Relation known gonzo */
const USHORT REL_get_dependencies = 8; /* New relation needs dependencies during scan */
const USHORT REL_force_scan = 16; /* system relation has been updated since ODS change, force a scan */
const USHORT REL_check_existence = 32; /* Existence lock released pending drop of relation */
const USHORT REL_blocking = 64; /* Blocking someone from dropping relation */
const USHORT REL_sys_triggers = 128; /* The relation has system triggers to compile */
const USHORT REL_sql_relation = 256; /* Relation defined as sql table */
const USHORT REL_check_partners = 512; /* Rescan primary dependencies and foreign references */
const USHORT REL_being_scanned = 1024; /* relation scan in progress */
const USHORT REL_sys_trigs_being_loaded = 2048; /* System triggers being loaded */
const USHORT REL_deleting = 4096; /* relation delete in progress */
/* Field block, one for each field in a scanned relation */
@ -881,11 +885,12 @@ struct win_for_array: public win
win_for_array() : win(-1) {}
};
// win_flags
const int WIN_large_scan = 1; /* large sequential scan */
const int WIN_secondary = 2; /* secondary stream */
const int WIN_garbage_collector = 4; /* garbage collector's window */
const int WIN_garbage_collect = 8; /* scan left a page for garbage collector */
const USHORT WIN_large_scan = 1; /* large sequential scan */
const USHORT WIN_secondary = 2; /* secondary stream */
const USHORT WIN_garbage_collector = 4; /* garbage collector's window */
const USHORT WIN_garbage_collect = 8; /* scan left a page for garbage collector */
// Thread specific database block
@ -911,11 +916,13 @@ struct thread_db
#endif
};
const int TDBB_sweeper = 1; /* Thread sweeper or garbage collector */
const int TDBB_no_cache_unwind = 2; /* Don't unwind page buffer cache */
const int TDBB_prc_being_dropped = 4; /* Dropping a procedure */
const int TDBB_set_backup_state = 8; /* Setting state for backup lock */
const int TDBB_backup_merge = 16; /* Merging changes from difference file */
// tdbb_flags
const USHORT TDBB_sweeper = 1; /* Thread sweeper or garbage collector */
const USHORT TDBB_no_cache_unwind = 2; /* Don't unwind page buffer cache */
const USHORT TDBB_prc_being_dropped = 4; /* Dropping a procedure */
const USHORT TDBB_set_backup_state = 8; /* Setting state for backup lock */
const USHORT TDBB_backup_merge = 16; /* Merging changes from difference file */
/* List of internal database handles */

View File

@ -63,12 +63,17 @@ class TemporaryField : public pool_alloc<type_tfb>
DSC tfb_desc;
};
// tfb_flags
const int TFB_computed = 1;
const int TFB_array = 2;
const int MET_object_active = 0;
const int MET_object_inactive = 1;
const int MET_object_unknown = 2;
// index status
const SSHORT MET_object_active = 0;
const SSHORT MET_object_inactive = 1;
const SSHORT MET_object_unknown = 2;
const int TRIGGER_PRE_STORE = 1;
const int TRIGGER_POST_STORE = 2;

View File

@ -82,19 +82,19 @@ struct record_param {
/* Record flags must be an exact replica of ODS record header flags */
const int rpb_deleted = 1;
const int rpb_chained = 2;
const int rpb_fragment = 4;
const int rpb_incomplete= 8;
const int rpb_blob = 16;
const int rpb_delta = 32; /* prior version is a differences record */
const int rpb_damaged = 128; /* record is busted */
const int rpb_gc_active = 256; /* garbage collecting dead record version */
const USHORT rpb_deleted = 1;
const USHORT rpb_chained = 2;
const USHORT rpb_fragment = 4;
const USHORT rpb_incomplete = 8;
const USHORT rpb_blob = 16;
const USHORT rpb_delta = 32; /* prior version is a differences record */
const USHORT rpb_damaged = 128; /* record is busted */
const USHORT rpb_gc_active = 256; /* garbage collecting dead record version */
/* Stream flags */
const int RPB_s_refetch = 0x1; /* re-fetch required due to sort */
const int RPB_s_update = 0x2; /* input stream fetched for update */
const USHORT RPB_s_refetch = 0x1; /* re-fetch required due to sort */
const USHORT RPB_s_update = 0x2; /* input stream fetched for update */
#define SET_NULL(record, id) record->rec_data [id >> 3] |= (1 << (id & 7))
#define CLEAR_NULL(record, id) record->rec_data [id >> 3] &= ~(1 << (id & 7))
@ -105,9 +105,9 @@ const int MAX_DIFFERENCES = 1024; /* Max length of generated Differences string
/* Store allocation policy types. Parameter to DPM_store() */
const int DPM_primary = 1; /* New primary record */
const int DPM_secondary = 2; /* Chained version of primary record */
const int DPM_other = 3; /* Independent (or don't care) record */
const USHORT DPM_primary = 1; /* New primary record */
const USHORT DPM_secondary = 2; /* Chained version of primary record */
const USHORT DPM_other = 3; /* Independent (or don't care) record */
/* Record block (holds data, remember data?) */
@ -126,9 +126,11 @@ public:
UCHAR rec_data[1]; /* THIS VARIABLE MUST BE ALIGNED ON A DOUBLE BOUNDARY */
};
const int REC_same_tx = 1; /* record inserted/updated and deleted by same tx */
const int REC_gc_active = 2; /* relation garbage collect record block in use */
const int REC_new_version = 4; /* savepoint created new record version and deleted it */
// rec_flags
const UCHAR REC_same_tx = 1; /* record inserted/updated and deleted by same tx */
const UCHAR REC_gc_active = 2; /* relation garbage collect record block in use */
const UCHAR REC_new_version = 4; /* savepoint created new record version and deleted it */
/* save record_param block */

View File

@ -58,10 +58,12 @@ typedef struct thread {
USHORT thread_flags; /* Flags */
} *THREAD;
const int THREAD_hiber = 1; /* Thread is hibernating */
const int THREAD_ast_disabled = 2; /* Disable AST delivery */
const int THREAD_ast_active = 4; /* Disable AST preemption while AST active */
const int THREAD_ast_pending = 8; /* AST waiting to be delivered */
// thread_flags
const USHORT THREAD_hiber = 1; /* Thread is hibernating */
const USHORT THREAD_ast_disabled = 2; /* Disable AST delivery */
const USHORT THREAD_ast_active = 4; /* Disable AST preemption while AST active */
const USHORT THREAD_ast_pending = 8; /* AST waiting to be delivered */
static THREAD alloc_thread(void);
static bool ast_enable(void);

View File

@ -40,21 +40,23 @@ class Shadow : public pool_alloc<type_sdw>
USHORT sdw_flags;
};
const int SDW_dumped = 1; /* bit set when file has been copied */
const int SDW_shutdown = 2; /* stop shadowing on next cache flush */
const int SDW_manual = 4; /* shadow is a manual shadow--don't delete */
const int SDW_delete = 8; /* delete the shadow at the next shutdown */
const int SDW_found = 16; /* flag to mark shadow found in database */
const int SDW_rollover = 32; /* this shadow was rolled over to when the main db file went away */
const int SDW_conditional = 64; /* shadow to be used if another shadow becomes unavailable */
// sdw_flags
const USHORT SDW_dumped = 1; /* bit set when file has been copied */
const USHORT SDW_shutdown = 2; /* stop shadowing on next cache flush */
const USHORT SDW_manual = 4; /* shadow is a manual shadow--don't delete */
const USHORT SDW_delete = 8; /* delete the shadow at the next shutdown */
const USHORT SDW_found = 16; /* flag to mark shadow found in database */
const USHORT SDW_rollover = 32; /* this shadow was rolled over to when the main db file went away */
const USHORT SDW_conditional = 64; /* shadow to be used if another shadow becomes unavailable */
/* these macros are a convenient combination of switches:
the first specifies the shadow is invalid for writing to;
the second specifies that the shadow no SLONGer exists and the
shadow block simply hasn't been cleared out yet */
const int SDW_INVALID = (SDW_shutdown | SDW_delete | SDW_rollover | SDW_conditional);
const int SDW_IGNORE = (SDW_shutdown | SDW_delete);
const USHORT SDW_INVALID = (SDW_shutdown | SDW_delete | SDW_rollover | SDW_conditional);
const USHORT SDW_IGNORE = (SDW_shutdown | SDW_delete);
} //namespace Jrd

View File

@ -19,7 +19,7 @@
*
* All Rights Reserved.
* Contributor(s): ______________________________________.
* $Id: sort.cpp,v 1.61 2004-04-28 22:39:05 brodsom Exp $
* $Id: sort.cpp,v 1.62 2004-05-03 22:42:46 brodsom Exp $
*
* 2001-09-24 SJL - Temporary fix for large sort file bug
*
@ -64,12 +64,6 @@
#include <stdio.h>
#endif
/* RITTER - declare seek and off_t - :ATTENTION: for 64bit I/O we might need stdio.h ! */
#ifdef SOLARIS
#include <stdio.h>
#endif
#ifdef WIN_NT
/* for SEEK_SET */
#include <io.h> // lseek, read, write, close

View File

@ -171,10 +171,10 @@ const int SKD_date = SKD_timestamp1;
/* skd_flags */
const int SKD_ascending = 0; /* default initializer */
const int SKD_descending = 1;
const int SKD_insensitive = 2;
const int SKD_binary = 4;
const UCHAR SKD_ascending = 0; /* default initializer */
const UCHAR SKD_descending = 1;
const UCHAR SKD_insensitive = 2;
const UCHAR SKD_binary = 4;
const int TYPE_RUN = 0;
const int TYPE_MRG = 1;

View File

@ -600,9 +600,11 @@ typedef struct vdr
SparseBitmap* vdr_idx_records; /* 1 bit per index item */
} *VDR;
const int vdr_update = 2; /* fix simple things */
const int vdr_repair = 4; /* fix non-simple things (-mend) */
const int vdr_records = 8; /* Walk all records */
// vdr_flags
const USHORT vdr_update = 2; /* fix simple things */
const USHORT vdr_repair = 4; /* fix non-simple things (-mend) */
const USHORT vdr_records = 8; /* Walk all records */
typedef enum {
fetch_ok,