8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-27 18:03:04 +01:00
Commit Graph

408 Commits

Author SHA1 Message Date
hvlad
8befd31986 Continue Nickolay's refactor : use clear_page_dirty_flag 2007-04-27 06:49:55 +00:00
asfernandes
c722690150 Misc 2007-04-27 02:28:57 +00:00
skidder
f231dc3d1e Cleanup as requested by Dmitry and Vlad
- do not write pages of temporary tables to the NBAK delta files (engine still does a lot of unneeded locking and synchronization for temp pages, especially in CS builds, but this is another problem)
- refactor and clean up potential problems in the logic of dirty page -> clean page transition
2007-04-26 20:16:48 +00:00
hvlad
31af74fbf6 Fixed bug CORE-1228 : Database often became corrupted after an out of disk space condition 2007-04-25 20:45:03 +00:00
dimitr
9dd5a0efca Minor cleanup. 2007-04-25 06:32:54 +00:00
asfernandes
676b447138 Misc 2007-04-25 02:26:33 +00:00
skidder
04b9ec818b NBAK synchronization rework. This should fix CORE-1151 and other Nbackup stability issues 2007-04-24 14:05:46 +00:00
alexpeshkoff
d63491e3c5 Finished gcc-warnings cleanup 2007-04-11 16:05:40 +00:00
alexpeshkoff
6e735f7c53 Misc + gcc warning hunting 2007-04-09 16:15:29 +00:00
robocop
e71a03261c This is the full SafeArg implementation for getting rid of the fixed parameter types in the messages db. Alas, the legacy messages (before FB2.1) can't be changed in number of arguments neither the types of arguments sent by callers of the MsgPrint family or the fb_msg_format functions can be changed because old clients know these legacy messages and would crash. 2007-03-28 04:20:36 +00:00
alexpeshkoff
8b2abbdb65 fixed correct logic, broken by my last commit 2007-02-24 11:28:51 +00:00
robocop
63a80b0db6 Misc. 2007-02-23 05:55:37 +00:00
asfernandes
d87a30bf0c Misc 2007-02-23 01:42:10 +00:00
alexpeshkoff
dfef55e991 Fix for CORE-968 - Assertion failure in posix/isc_ipc.cpp 2007-02-22 16:47:39 +00:00
dimitr
15c3681d8a Fixed CORE-1135. 2007-02-22 14:12:04 +00:00
robocop
409ff041dd Misc and replaced "IB" by "FB" where it made sense to me. 2007-02-11 09:04:54 +00:00
dimitr
fd7a702e7d Optimization. Removed redundant NBAK calls (they are pretty expensive). 2007-02-08 14:01:53 +00:00
asfernandes
90337587ff Misc 2007-02-08 00:03:36 +00:00
dimitr
ecc261de7c Cleanup. 2007-02-06 08:03:43 +00:00
dimitr
f042dc9f8f Fixed CORE-1121. This time the fix itself is separated from the cleanup to make the reviewers happy.
The changes are identical to my previous commit into B2_0_Release.
2007-02-06 07:47:59 +00:00
alexpeshkoff
a13e291d5f front-ported fox for CORE-1098 2007-01-18 15:50:18 +00:00
dimitr
5af8f3c3a9 Fixed CORE-1039. 2006-12-04 21:26:43 +00:00
dimitr
988782a96a 1) A new class to handle aggregated multi-level performance counters.
2) Cleanup and minor fixing.
3) A few monitoring changes.
2006-10-07 10:53:01 +00:00
robocop
7040d668fd Misc. 2006-05-25 08:40:23 +00:00
dimitr
211645e3dc Getting rid of the old allocator routines. 2006-05-23 10:17:00 +00:00
hvlad
701f2cbda4 Global temporary tables implementation 2006-05-21 22:07:35 +00:00
robocop
e77a46b011 Misc. 2006-05-20 03:55:54 +00:00
asfernandes
292ad66e96 Misc 2006-05-20 01:53:51 +00:00
alexpeshkoff
b056a118b5 1. Avoid use of STL
2. Reworked exceptions to make status_exception always hold correct status vector
3. Avoid use of RTTI
2006-05-19 15:17:02 +00:00
robocop
c5f2284b15 Style. 2006-04-06 08:18:53 +00:00
dimitr
233aef595a gds_alloc() no longer throws exceptions. Let's handle it properly. 2006-04-05 04:36:23 +00:00
robocop
1f84bac700 Mark unused data members, discover more code associated to conditional compilation, clean some places, replace custom loops by memcpy and memset when possible, etc. 2006-02-23 05:08:26 +00:00
robocop
97122ee389 Replace jrd_time.h by our timestamp.h, but I left timestamp.h's #includes commented where it *seemed* not necessary. 2006-02-03 08:39:36 +00:00
robocop
25c08aea67 The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
Eighth step: dbb_refresh_ranges belongs to the obsolete functionality and since it's never set but tested in cch.cpp with two AND, the whole condition will be always false, hence remove the code.
2006-02-02 07:57:36 +00:00
dimitr
a5a967c648 Little cleanup. 2006-01-05 10:10:37 +00:00
hvlad
ddc489f6f0 Restored accidentally committed wrong file 2005-12-26 21:17:16 +00:00
hvlad
52086cd806 Avoid frequent (unneeded and inefficient) allocation \ deallocation of stack entryes 2005-12-26 21:13:03 +00:00
hvlad
9d6b361f69 Eliminate unnecessary JRD_get_thread_data call in nbak.
Checked against B2_0_BV_Stable3 branch
2005-11-21 23:33:20 +00:00
skidder
699c914cbf little debug logging improvements 2005-07-19 23:27:38 +00:00
hvlad
3e5ce4257d Temporary fix to prevent 100% cpu load in case of write failure 2005-02-17 07:29:50 +00:00
robocop
8d4b89723f Welcome to paranoid programming. 2005-01-25 06:33:07 +00:00
dimitr
4ef8631580 Cleanup. 2005-01-24 07:58:34 +00:00
robocop
af6a16107a Misc. 2004-11-30 06:18:39 +00:00
robocop
d6535351a2 Misc: style. 2004-11-24 09:22:07 +00:00
robocop
628b088d2c Treat string literals and string constants with more respect. 2004-11-10 04:26:45 +00:00
alexpeshkoff
6e89d3e6d8 avoid warnings in gcc 2004-11-07 14:30:38 +00:00
dimitr
421f259a4e 1) Locks related cleanup
2) Got rid of TRA_nowait + transaction waits related cleanup
3) Return isc_lock_timeout when it's necessary
TODO: Enhance SET TRANSACTION
2004-10-07 09:15:32 +00:00
dimitr
6f6e76f102 Some checks as suggested by Claudio. 2004-10-03 12:16:45 +00:00
robocop
31ba754981 After talking to Ann, decided to disable several items:
- obsolete items like WAL and JOURNAL (cleaned in the past)
- crud from attempts never finished like the shared cache manager for Classic
- DSQL nodes that aren't used. This allowed freeing some keywords.
The functionality was disabled by commenting the code. No code has been deleted.
2004-10-03 04:49:04 +00:00
dimitr
3a043cf1dd Some minor corrections, as suggested by Claudio. 2004-10-01 09:45:55 +00:00
skidder
02a0915156 Teach engine to work with larger record numbers - 64-bit internally, 40-bit externally 2004-09-28 06:28:38 +00:00
hvlad
828a0615a1 Fix 100% CPU use by cache_writer in some rare cases 2004-09-27 08:31:20 +00:00
dimitr
b01c48b381 Fixed my yesterday's commit once more. 2004-09-27 06:53:02 +00:00
dimitr
1faae184d4 Fixed my today's commit. 2004-09-26 12:00:37 +00:00
dimitr
7460be6611 1) Added AVL-binary tree implementation for the dirty page tree. Notes:
- old implementation is still in place and can be turned on (see BALANCED_DIRTY_PAGE_TREE macro)
  - both implementations are unconditional to keep them in sync until the old one is dropped completely
2) Increased MAX_PAGE_BUFFERS to 128K (2GB for 16K page size)
2004-09-26 09:49:16 +00:00
alexpeshkoff
c3db4aaa97 added (and used in sources) template to change and restore default pool 2004-08-30 18:11:08 +00:00
dimitr
dee57f98e5 Removed unused JOURNAL remains and make database statistics working again. 2004-08-29 11:24:19 +00:00
robocop
b60c0e4cab Misc: format 2004-08-21 09:29:46 +00:00
alexpeshkoff
31039a254e next step preparing to allocate auto objects memory from appropriate pool 2004-08-16 12:28:43 +00:00
robocop
1bbb740b98 Undo inheritance in ODS page types as requested by Nickolay. Either some macros are too silly or the compiler is limited by the standard here.
Notice I may have missed some file that's not compiled in Win32.
2004-07-10 03:20:33 +00:00
skidder
8f0cf89afb Correct problems with single-user maintenance mode (note it is used for GBAK restore process now) 2004-06-12 01:06:05 +00:00
alexpeshkoff
1591a54e5e Thread cleanup:
1. Added macros to declare thread entrypoints
2. THD_mutex_* functions use Firebird::Mutex
3. Thread local storage use fb_tls.h
2004-06-08 13:41:08 +00:00
alexpeshkoff
9a34ce553c make bool (isEmpty/hasData) checks for string and stack safe 2004-05-27 16:26:52 +00:00
brodsom
81d54f25a1 -Replace *_thread_data macros with inline functions (finish) Now each provider/service uses inline functions with different names for each one instead of macros with the same name for all (which collide) 2004-05-24 01:03:41 +00:00
brodsom
bed146ad19 -Replace *_thread_data macros with inline functions (jrd step 2) 2004-05-23 03:18:10 +00:00
brodsom
f4ca41fa3d -Replace *_thread_data macros with inline functions (jrd step 1) 2004-05-22 14:28:54 +00:00
brodsom
68cb86b274 - Remove *_THREAD_DATA definitions from thd.h, are unneeded and conflicts with definitions in providers/services main headers (which need to use undef).
- Use different names for each service/provider *_THREAD_DATA macros.
2004-05-19 18:14:29 +00:00
brodsom
b76a60e8b7 Move THREAD_ functions from thd.h to thread_proto.h (and fix unix build) 2004-05-17 22:30:09 +00:00
brodsom
36d6d40469 Macro cleaning 2004-05-17 10:22:34 +00:00
brodsom
ee34db7e20 Macro cleaning (THREAD_*) 2004-05-15 00:58:46 +00:00
brodsom
dc6303c8c6 -Correct parameter type (page_type)
-Macro cleaning
2004-05-14 17:03:20 +00:00
robocop
802f244ec1 Misc changes 2004-05-09 05:48:33 +00:00
brodsom
8965c65959 Unused macro 2004-05-05 14:01:32 +00:00
brodsom
4a9a3c54e0 Remove values in defines used only for conditional compilation 2004-05-04 19:16:43 +00:00
brodsom
fbbc61156f -Fix another incredibly stupid legacy variable naming, variable name = struct name. 2004-05-03 13:35:38 +00:00
brodsom
2f4865a195 Replace defines for constants 2004-04-29 14:51:02 +00:00
brodsom
5cf9fdfc90 Removing ib_stdio.h 2004-04-28 22:43:34 +00:00
alexpeshkoff
7b27fa55be fixed number problems after lls to Stack conversion 2004-04-21 14:14:36 +00:00
alexpeshkoff
045e9dc8ec 1. removed any mentions of blk_pool() from engine (and method itself)
2. replaced 'struct lls' with 'template Stack'
2004-04-18 14:22:27 +00:00
robocop
59b235cea3 Small corrections 2004-04-10 00:25:22 +00:00
robocop
68c038d132 More cleanup. Get rid of obsolete files, too. 2004-03-30 08:34:14 +00:00
robocop
1824343930 Cleanup.
Fixed a linking error with MSVC6, too.
2004-03-28 09:10:30 +00:00
alexpeshkoff
1e6c7b18e9 fixed problem with loop in includes 2004-03-22 11:38:23 +00:00
alexpeshkoff
695c222ad2 1. introduced Jrd and Ods namespaces
2. cleanup of blk* request conversions
3. fixed memory allocation in Execute Statement
2004-03-20 15:33:30 +00:00
robocop
f58c769c37 Cleanup. In geeky words:
PandoraBox* pbox = reinterpret_cast<PandoraBox*>(&can_of_worms);
pbox->open();
pbox->flush();
Nickolay may want to undo my ods.h changes if gcc insists
in its crusade against non-PODs and poodles.
2004-03-18 05:56:06 +00:00
alexpeshkoff
67f1740fea Various cleanup to make engine compile and work after mentioned earlier changes.
Mainly:
1) MemoryPool* => MemoryPool& in arrays' constructors
2) use Firebird::string to keep strings data
2004-03-14 13:40:14 +00:00
robocop
2ab1f94dd2 Cleanup
Some minor corrections
Second step to rename
2004-03-11 05:04:26 +00:00
skidder
b6e5ccd413 Clean up.
1. gds__alloc doesn't throw
2. Add NOMEM handlers to a couple places
3. kill HAVE_*SNPRINTF conditionals
2004-03-09 00:17:07 +00:00
robocop
e6187cecd2 Cleanup
Some bug fixes
Style
2004-03-07 07:58:55 +00:00
skidder
dc7aab8f9c Fix up exception handling. Handle (do not ignore) std::bad_alloc and generic exceptions, provide syscall and error information in system_call_failed 2004-03-01 03:35:23 +00:00
skidder
2c4fe73bd4 Implement new shutdown modes (single-user and full shutdown). Tested on Linux/AMD64 CS and SS 2004-02-25 01:50:40 +00:00
robocop
5c3c8abd9a Big cleanup.
God have pity on platform maintainers.
I only can compile/test Win32; sorry, folks.
2004-02-20 06:43:27 +00:00
robocop
663e3b16e7 Cleanup 2004-02-02 11:02:12 +00:00
robocop
2b295a9108 General cleanup. Sorry if I missed some occurrence. 2004-01-28 07:50:41 +00:00
skidder
08eee5ebaa Further AMD64 fixes. Given this fixes you may start playing with databases using isql_static. 2004-01-21 07:18:30 +00:00
robocop
b441cd9aef Cleanup 2004-01-13 09:52:19 +00:00
skidder
b3b58e0410 Fix bug introduced during C->C++ porting effort.
One of the consequences of this bug were mentioned in the SF#750664
2004-01-09 01:06:12 +00:00
robocop
06a4df3708 A requiem for JOURNAL and WAL.
Instructions in the list.
2004-01-06 10:33:18 +00:00
robocop
fd93837ec3 Cleanup:
const correctness
BOOLEAN -> bool
Vars in scope
Formatting
JRD_REQ -> jrd_req*
JRD_TRA -> jrd_tra*
JRD_REL -> jrd_rel*
JRD_FLD -> jrd_fld*
event -> event_t, EVENT_T dropped, EVENT should go in the future
Frank's corrections
alice's STR -> alice_str*
remote's STR -> rem_str*
etc.
It creates entities and backups and restores for me. :-)
2004-01-03 10:59:52 +00:00
robocop
16cbc204df Cleanup 2003-12-31 05:36:12 +00:00
robocop
ad0b5c4de3 General cleanup 2003-12-22 10:00:59 +00:00
robocop
d020ea5ca1 ping-pong cleanup: change one place and you have to change several others 2003-12-11 10:33:30 +00:00
robocop
b02c629735 Cleanup
Some name changes
Try to fix SINIX-Z problems with send() prototype
2003-12-05 10:35:47 +00:00
arnobrinkman
710037031f Enhanced Index Structure.
1) NULLs on top when sorting on ASC index, DESC stays the same.
2) Support for larger index lengths, can be up to 1/4 page size.
3) Store record-number on non-leafpages for faster lookup in many duplicates.
4) Jump-nodes for faster key-lookup in index on larger page-sizes.
5) Segment selectivity calculation added.
2003-12-01 02:37:25 +00:00
brodsom
c5253ae8a5 -Replace gds__ constants with isc_ contants
-Replace codes.h with iberror.h (or remove)
-Move gds__vax_integer and gds__event_block* to alt.cpp and isc_ to gds.cpp
-Use ISC_QUAD internally
-Use isc_vax_integer internally
2003-11-11 12:19:20 +00:00
brodsom
89e8f89f86 Extern "C" cleaning 2003-11-06 03:03:36 +00:00
brodsom
ff070a16a8 Replacing assert with fb_assert 2003-11-03 23:59:24 +00:00
aafemt
900fa62a1d 'struct' cleanup 2003-10-20 10:53:52 +00:00
robocop
480c1ee968 const correctness 2003-10-08 08:42:48 +00:00
brodsom
64c31be213 extern cleaning
removing underscores in macros
DLL_EXPORT cleaning
2003-10-03 01:34:14 +00:00
skidder
15d92c921d Remove outdated comment 2003-09-15 16:17:55 +00:00
skidder
2d3d855c9f Make NBACKUP work on Windows 2003-09-13 18:35:39 +00:00
brodsom
7c7c2758dc BOOLEAN cleaning 2003-09-10 17:52:12 +00:00
skidder
5761966226 Make Win32 version of engine compile 2003-09-08 21:44:44 +00:00
skidder
77b17de987 NBACKUP-related changes and some clean-up 2003-09-08 20:23:46 +00:00
brodsom
8624a7c209 -Use NULL instead 0 for null pointers
-Remove unneeded casts
2003-09-01 07:58:04 +00:00
brodsom
6a2ef35fda -Remove NULL_PTR
-Remove unneeded NULL casts
-Remove (void) function return cast
2003-08-28 13:16:03 +00:00
robocop
e4227e2764 Kill two warnings in Win32 2003-08-13 11:11:12 +00:00
brodsom
e401cb40c7 -Fix cast warnings
-Fix signed/unsigned comparison warnings
2003-08-09 20:58:34 +00:00
skidder
c6a8ffcc5f New backup technology seems to work on Windows SuperServer now.
At least I can run 400MB AS3AP benchmark on it and lock/unlock/backup
database during this process.
2003-08-07 21:48:54 +00:00
skidder
84bfde306d Win32 engine builds and seems to work 2003-08-06 18:06:22 +00:00
skidder
143f8d2443 Implementation of fast physical incremental backup 2003-08-06 16:30:49 +00:00
brodsom
49a86dde7d Move physical io to os specific 2003-07-14 10:35:49 +00:00
skidder
524fc1a641 Fix up lock manager. Clean AST invocation. Fix type of lrq_flags to match its value. Backout my logic for fast deadlock detection as it breaks engine in several places 2003-05-16 20:35:19 +00:00
aafemt
e5146fd644 Introduce of ISC_STATUS_ARRAY 2003-04-16 10:18:51 +00:00
aafemt
19bb54f2a8 STATUS -> ISC_STATUS 2003-04-10 06:49:16 +00:00
brodsom
af4fd19045 Use the same ifdef for function declarations and definitions. (found with gcc never defined warnings)
-In this source some defines must be moved to set the value for CACHE_WRITER, CACHE_READER and PAGE_LATCHING before function declaration
2003-03-01 18:10:10 +00:00
eku
1043039c35 Removed lots of compiler warnings. 2003-02-18 10:00:22 +00:00
dimitr
1cdc790472 Cleanup. 2003-02-16 13:25:44 +00:00
dimitr
67749f906b Fixed exception handling. 2003-02-13 13:33:57 +00:00
arnobrinkman
df77c6ad3a Stripped implementation of events used by garbage_collection() & cache_writer() procedures.
This will fix known delay with connecting/disconnect on at least WinXP.
Also are the connecting/disconnecting delays while debugging in MSVC6 gone.
2003-02-12 22:57:57 +00:00
eku
a7f18b2e31 Removed "register" variables from the source code. It's up to the compiler
to hold variables in CPU registers.
2003-02-10 13:28:35 +00:00
brodsom
7c8d130501 Change non FW mode time measure, from oldest_unflushed_write to last_flushed_write. 2003-02-05 23:32:32 +00:00
brodsom
95934e47bd Non forced writes mode, move logic to cch, add dbb mutex, and rollback changes in ail.cpp, pio.h, pio_proto.h, unix.cpp and winnt.cpp 2003-02-05 20:43:01 +00:00
brodsom
b279e72641 Make non forced writes mode configurable & more secure. 2003-02-05 14:40:35 +00:00
dimitr
65046f123a Undone. 2003-01-18 18:02:12 +00:00
dimitr
feecd18030 Some changes related to aliases. 2003-01-18 16:44:01 +00:00
dimitr
92346cd0be Some changes related to aliases. 2003-01-18 16:31:23 +00:00
dimitr
d059fade89 Reverted allocations in the cache manager back to system instead of the default pool. 2003-01-18 15:10:27 +00:00
skidder
ba5e11b15c Integrate new memory manager into the engine 2003-01-16 17:47:10 +00:00
hippoman
4a76e9e4fe change TRA,REQ,TRG,REL,CTX or PRC, to module local names. 2002-11-17 00:13:59 +00:00
dimitr
5f61e44ddc Global names change:
FBOK=>FB_SUCCESS
FAILURE=>FB_FAILURE
xxx_FBOK=>xxx_SUCCESS
2002-11-14 08:33:08 +00:00
kkuznetsov
6887f405ab Renaming all occurences of SUCCESS to FBOK 2002-11-13 15:01:21 +00:00
seanleyne
0b82f4aa07 Removed obsolete "Netware" port 2002-10-30 06:40:58 +00:00
eku
0c1b55dd08 Code cleanup:
Since we already have the define ISC_STATUS_LENGTH for the the length of
the status vector, we should use it! Replaced 'status[20]' with
'status[ISC_STATUS_LENGTH]'.

Replaced the different symbolic names for the maximum length of a path
(MAX_PATH, MAX_PATH_LENGTH, MAXPATHLEN) with one uniq symbol MAXPATHLEN.
2002-10-24 09:01:44 +00:00
skidder
6d64014e57 Changed engine to store source file name/line number information for EVERY allocation when DEBUG_GDS_ALLOC is defined. All allocation should be done using FB_NEW or FB_NEW_RPT macros instead of keyword new since now 2002-09-25 17:12:16 +00:00
eku
6380cea068 Removed compiler warnings. Fixed more SIG_FPTR issues. Use GNU C to check
format strings against arguments.
2002-09-24 12:57:10 +00:00
eku
9cf71556b3 Fixed the naming of some files:
interbase.msg => firebird.msg
 interbase.log => firebird.log

SINIX-Z: don't distribute build programms
2002-09-20 10:23:15 +00:00
dimitr
ebb5a57ae5 Fixed wrong initialization of the stack variables. 2002-09-10 13:40:38 +00:00
dimitr
9a9edaed91 Cleanup 2002-04-29 15:05:11 +00:00
dimitr
dbde98b09f Some minor changes 2002-04-29 11:14:46 +00:00
bellardo
773836f1b1 Finished removal of setjmp/longjmp code, and fixed a handful of FB1->FB2
porting bugs.
2002-04-04 07:10:40 +00:00
tamlin
2a3a320010 Cleanup and bugfixing 2002-03-31 00:40:08 +00:00
tamlin
80f7fb6dd4 New C++ memory pool 2001-12-24 02:51:06 +00:00
skywalker
365a7fe19c Changes to compile fb2 under autoconf includes some structural changes 2001-07-29 17:42:23 +00:00
bellardo
747d13c0d5 Changes to bring FB2 to c++ on *nix. 2001-07-12 05:46:06 +00:00
awharrison
baa3485651 read only databases are supported unconditionally in fb2 2001-07-10 17:35:13 +00:00
tamlin
9a776a604e First steps towards a C++ conversion. 2001-05-23 13:26:42 +00:00