dimitr
2760b48e81
Fixed more cases causing a successful completion with a non-empty status vector.
2009-01-23 11:16:31 +00:00
robocop
3689f15321
Style.
2009-01-20 08:33:59 +00:00
robocop
582cdf185b
Style.
2009-01-14 09:19:00 +00:00
robocop
21bb7f3d20
Style.
2009-01-03 09:14:29 +00:00
robocop
6406e45337
Shut up compiler warnings (unreferenced vars, uninitialized vars, compile-time conditional code, etc.)
2009-01-02 06:36:12 +00:00
asfernandes
5311dd5a5e
Misc
2008-12-20 19:57:43 +00:00
robocop
9c9e4e9b0b
There's no need to check whether a pointer is null before applying delete or delete[].
2008-12-20 08:16:55 +00:00
robocop
ff99dc3d46
Style.
2008-12-18 10:47:25 +00:00
robocop
511c7eb7d8
Promote thread_data* as function argument.
2008-12-14 10:19:27 +00:00
robocop
e4650d5027
Promote thread_data* as function argument. Only exception where both tdbb and dbb were left together as arguments is nbak.cpp's call to CCH_rollover_to_shadow to avoid any side effect in the changed code, but anyway, that function calls SDW_rollover_to_shadow that takes the dbb from the tdbb and not explicitly.
2008-12-14 09:28:25 +00:00
asfernandes
8fbf0e8e8c
Remove trailing spaces (.cpp files)
2008-12-05 01:20:14 +00:00
dimitr
5ac621c954
Let's not hide the line number of a particular bugcheck call behind a dummy function.
2008-10-14 13:09:48 +00:00
asfernandes
843df670d7
Misc
2008-10-11 02:42:01 +00:00
alexpeshkoff
e79f55708d
1. Cleanup - use Firebird::Semaphore instead of local events, removed code
...
related with local events from isc_sync.cpp.
2. Cleanup - removed unused parameter 'number of events' from ISC_event_wait()
and two unused parameters from ISC_event_init().
3. Added SYSV-semaphore based implementation of IPC to isc_sync.cpp.
This should fix CORE-2102: Firebird 2.5 does not build on MacOS (Darwin).
4. Fixed use of posic CS without (x)inetd (i.e. fb_inet_server -s).
5. Fixed (to be reviewed by Dmitry) recovery after some process death in lock manager.
2008-10-10 15:58:05 +00:00
hvlad
97bf925499
Use fb_utils::init_status instead of status[0] = 0
2008-09-10 11:41:36 +00:00
alexpeshkoff
13a15d4bfe
1. Final fix for CORE-1964 - finished vararg cleanup in jrd.
...
2. Generic cleanup of error reporting functions all around engine.
2008-08-27 12:20:47 +00:00
roman-simakov
59ae35d837
Style
2008-08-13 09:02:35 +00:00
hvlad
53f21b34c8
Fixed bug CORE-1970 : Lock conversion denied (215) error may occurs
2008-07-17 12:49:19 +00:00
alexpeshkoff
a2e416210b
Fixed CORE-1964: Use of 0 instead of isc_arg_end to terminate list of ERR_post's (and cousines) arguments is invalid.
...
Also cleaned up use of gds__log() in a few places.
2008-06-26 09:47:59 +00:00
asfernandes
4822c30c70
Misc
2008-06-06 22:40:15 +00:00
robocop
94224d3300
Totally misc.
2008-06-06 08:51:03 +00:00
robocop
b8ea332022
Misc.
2008-06-05 11:02:42 +00:00
hvlad
6bff6c6649
Replace fixed size array of shared latches (bdb_shared) by queue. It allows to have more than 20 simultaneous readers for hot pages and eliminate needs for scanning full array when searching for current thread's latch
2008-06-05 08:35:18 +00:00
dimitr
ad8ce57050
Enabled page latching code for [Super]Classic. This solves most of the synchronization issues between worker thread and ASTs.
2008-06-04 13:22:59 +00:00
dimitr
f84ad12e33
Misc.
2008-05-14 09:21:01 +00:00
robocop
89a57960db
Cleanup.
2008-05-11 12:27:51 +00:00
hvlad
422338e5e3
Lock att_mutex in Attachment's constructor
2008-05-08 07:45:19 +00:00
dimitr
0a9e8c8382
Implemented CORE-1751. The changes include:
...
1) Make memory counters aggregated.
2) Add attachment pool and allocate appropriate resources out of this pool.
3) Always release attachments explicitly (via destructor).
4) Always delete user requests prior to attachment deletion.
5) Introduce memory usage counters per every monitoring object.
6) Misc refactoring.
Some pieces are still incomplete (although everything basically works), but I'd like to get feedback and testing sooner rather than later.
2008-05-06 08:46:39 +00:00
hvlad
adc1ed0f03
Let cache_writer also lock its own attachment during execution
2008-05-04 21:25:56 +00:00
skidder
3d8af77572
Fix regression CORE-1876. Incremental backups with NBACKUP broken in 2.1
2008-05-01 01:40:22 +00:00
robocop
53bf05282d
Misc.
2008-04-26 14:35:12 +00:00
roman-simakov
dda2676ba5
1. Fixed unlocking header page while CCH_release. Thanks to Vlad.
...
2. Fixed writing page while nbackup merge state is stalled.
3. Fixed using dead dbb in AST handler while somebody is changing cached lock of the GlobalRWLock.
2008-04-16 09:16:45 +00:00
roman-simakov
a202daf6bb
Replaced nbackup dirty pages locking with RAII classes
2008-04-16 08:46:13 +00:00
dimitr
2f41d8e8ba
Corrections for the currently disabled code.
2008-04-02 12:42:09 +00:00
robocop
882955f5c3
const.
2008-03-29 13:01:49 +00:00
asfernandes
a930424d27
Fix the build
2008-03-19 15:55:11 +00:00
dimitr
26e92220d3
Cleanup/refactoring.
2008-03-19 11:46:47 +00:00
dimitr
ebad313cfd
1) Fixed CORE-1788.
...
2) Protected from other similar deadlocks.
3) Refactoring.
2008-03-13 14:20:32 +00:00
dimitr
afb970dba1
1) Cleanup.
...
2) Catch exceptions in AST routines.
2008-03-12 16:53:57 +00:00
robocop
2912e6a5be
Cleanup and misc.
2008-03-10 08:44:07 +00:00
robocop
10d74a7642
Style.
2008-02-13 12:57:04 +00:00
asfernandes
11b869588d
Misc
2008-02-08 01:25:41 +00:00
hvlad
078f55d9b0
Fixed bug CORE-1731 : Sometimes engine may "hang" using 100% CPU load and no IO activity for the few minutes
2008-02-06 17:06:43 +00:00
robocop
4c3381ef6b
Style, constness and macro cleanup.
2008-02-03 10:41:44 +00:00
asfernandes
de8771570f
Misc
2008-01-29 01:36:41 +00:00
dimitr
132176a475
Major synchronization changes. Description of the commit will be posted to fb-devel.
2008-01-26 12:52:51 +00:00
dimitr
db7d3ecd4c
The merge continued.
2008-01-16 08:31:31 +00:00
roman-simakov
406a8cc3bf
small fix debug code under NBAK_DEBUG
2008-01-14 16:22:43 +00:00
asfernandes
41faeba3cc
Misc
2007-12-05 00:03:15 +00:00
alexpeshkoff
eea9070f48
Optimized RuntimeStaticstics (and related part of ThreadDb) for performance - some tests run 25faster
2007-12-03 15:46:39 +00:00
dimitr
1a64b5214c
Fixed CORE-1601.
2007-11-19 10:29:59 +00:00
dimitr
0e6c8c9abe
Moved the engine checkout/checkin logic from CCH to PIO. This allows to avoid hacks like usage of SCH_check_thread_enter().
2007-09-25 11:47:39 +00:00
hvlad
a576160b7a
Restore correct error message formating
2007-09-19 20:35:33 +00:00
dimitr
97a45d4704
Removed the asserts.
2007-09-05 06:44:12 +00:00
alexpeshkoff
6d66c28b13
Fixed solx86 build - not always offset_t and UINT64 are the same
2007-08-10 07:55:46 +00:00
alexpeshkoff
ea8ba3370d
Cleaned up mutexes - removed MUTX_T and related macros
2007-06-06 12:37:24 +00:00
mkubecek
9aa6368cc2
C++ specification does not allow unbraced linkage specification with storage class (and neither does GCC 4.1.2)
2007-05-20 12:34:36 +00:00
asfernandes
97843da8a3
Misc
2007-05-20 03:25:52 +00:00
robocop
5f3d9bbd54
Misc.
2007-05-18 06:15:26 +00:00
hvlad
18e0b65d96
Add missed THREAD_ENTER calls
2007-05-17 08:31:03 +00:00
hvlad
f40e794951
Implement improved dirty pages flush algoritm
2007-05-17 07:17:11 +00:00
robocop
b7446d9c64
Misc.
2007-05-16 06:53:47 +00:00
dimitr
533e28ce6c
Fixed CORE-1249 plus minor corrections for the single-user shutdown mode.
...
The change in CCH allows to report isc_shutdown instead of the LM error code in Classic (GFIX depends on this behaviour).
Also, refactored the SHUT logic a bit to assert on unexpected shutdown modes.
2007-05-08 08:31:48 +00:00
hvlad
a640aee5de
Few small fixes :
...
Removed not needed includes
Stop tracking precedence for temporary pages
THREAD_EXIT\THREAD_ENTER while page writes into nbackup delta file
Temporary pages was not written to disk in BACKUP state (nbak_state_stalled)
2007-05-04 22:10:11 +00:00
skidder
8539ceb992
Small NBAK performance optimization from Rom
...
an Simakov
2007-05-04 21:25:04 +00:00
dimitr
512bb7abca
Misc.
2007-05-01 06:48:20 +00:00
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