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

276 Commits

Author SHA1 Message Date
alexpeshkoff
a8f8465366 Postfix for CORE-3935 & CORE-3944: helps avoid segfaults/deadlocks when shutting down firebird 2013-08-16 12:44:10 +00:00
hvlad
c12e731b6a Fixed bug CORE-4134 : Race condition when auto-sweep is started 2013-06-29 11:32:55 +00:00
hvlad
bd4b8d9e28 Removed allocation of temp transaction object. 2013-06-19 11:46:38 +00:00
hvlad
3c7f8623fd Fixed bug CORE-4100 : Automatic sweep could be run when there is no need for it 2013-05-15 14:28:51 +00:00
alexpeshkoff
97b4b8c2c2 Postfix for CORE-3908: Engine leaks memory and crashes when lot of autonomous transactions have been started and finished 2013-02-28 16:23:56 +00:00
alexpeshkoff
3f2477e8f5 Fixed CORE-3908: Engine leaks memory and crashes when lot of autonomous transactions have been started and finished 2013-02-27 14:49:14 +00:00
dimitr
e29b50f980 Front ported my yesterday's commits to trunk. 2012-12-23 07:10:56 +00:00
alexpeshkoff
c4ae450de4 Re-read attachment from lock after taking lock in attachment handler 2012-12-20 12:18:52 +00:00
alexpeshkoff
c7454a49a5 Work in progress (committed due to SF upgrade). Checked only on SS.
1. Frontported fix for CORE-3935 and CORE-3993.
2. Added debugging support for mutexes and rwlocks in Vulcan style.
Unfortunately after last 'svn up' build asserts in JrdStatement:71.
2012-12-14 17:59:02 +00:00
dimitr
361c5a3b38 Implemented CORE-3994: Improve the limbo transactions scan at the end of the sweep.
Also, fixed the mistake in the refactored code (see the first change in the diff).
2012-11-22 17:17:59 +00:00
dimitr
41925536c7 Fixed CORE-3978: Invalid transaction counters may be reported in firebird.log during the sweep. 2012-11-13 09:42:11 +00:00
alexpeshkoff
4ca6e669fe 1. Fixed CORE-3786: Firebird 2.5.1 Hangs on MacOSX 10.7 (Lion) on DB create after reboot.
2. Cleanup: avoid functional style in stuff exception.
2012-11-01 11:40:18 +00:00
asfernandes
0769a10d48 Misc. 2012-09-16 16:09:24 +00:00
hvlad
b636315561 Improvement CORE-3656 : Support for sweep information in Trace API.
Fixed case when sweep cleaned up relation with all records deleted but corresponding event was missed in trace log.
2012-09-04 11:35:16 +00:00
dimitr
5f917a04ce Minor cleanup and simplification. 2012-08-28 18:19:09 +00:00
asfernandes
ba9f68d5d0 Misc. 2012-08-13 01:20:32 +00:00
hvlad
9124f5e188 Front ported improvements
CORE-3656 : Support for sweep information in Trace API, and
CORE-2668 : Write note into log when automatic sweep is started
Also per-table stats is enabled at transaction level (see thread_db::bumpRelStats)
2012-08-02 08:55:21 +00:00
dimitr
42a4c93b97 1) Removed the no longer actual "parent lock" concept from both the lock and event managers.
2) Reworked the lock manager synchronization: added the RAII mutex holders and avoided dirty reads for the shared memory.
3) Encapsulated lck_length into the Lock class + small related  refactoring.
4) Front ported recent fixes from the v2.x branches.
5) Misc cleanup.
2012-06-21 15:37:38 +00:00
alexpeshkoff
2a01e4bcf9 Implemented CORE-3861: Make it possible to encrypt database
Also some cleanups, the most important are:                                                                                                                   
- meaningful ctor on Jrd::Lock, helping to avoid code dup                                                                                                     
- avoid unneeded h-file dependencies, making boot build engine dependent
2012-05-31 16:53:42 +00:00
asfernandes
07557dc297 Misc. 2012-05-26 18:05:56 +00:00
robocop
642d506cd9 Change txn numbers to unsigned and commit after Vlad's review. If the compile-time checks (to ensure enough room for the new txn type) are too ugly, they may be deleted. 2012-05-19 12:04:37 +00:00
hvlad
02adff3b63 Improvement CORE-3598 : TRACE: add statistics of actions that were after transaction finished 2012-05-12 09:48:32 +00:00
robocop
70d5ebdfdf - Got rid of the fixed array that kept the stream count in the first element and 255 streams after it.
- Changed streams from UCHAR to ULONG as Dmitry wanted
- Got rid of some redundant flags to indicate BLR level
- Misc changes (for example, converted to test for DBB_read_only in Database to a function)
- BLR v6 is left commented (waiting for a better solution to appear, if any exists)
- This change is not going to raise the engine limits until a solution is found to express more than 255 streams in BLR.
2012-04-12 09:02:13 +00:00
alexpeshkoff
4e795f4047 Include platform definitions file common.h in firebird.h. Use OS-specific ThreadId instead artificial FB_THREAD_ID, avoiding unneeded casts in the code. This should fix BSD and MAC ports. 2012-03-01 08:55:43 +00:00
robocop
eed418a89e Make blb resemble more a class: private data members, convert some functions into methods, add methods with code that was in other files, etc. 2012-02-15 03:34:21 +00:00
robocop
186c817caa Playing with fire: converting some static functions into member functions. I tried to check every change I did. 2012-02-07 03:17:52 +00:00
robocop
21cd78a0fd Cleanup: unused functions, parameters & variables. 2012-01-24 03:37:43 +00:00
dimitr
20a8600bd0 Cleanup. 2011-12-23 17:55:00 +00:00
alexpeshkoff
7fb8ebd3a9 Fixed CORE-1898: Increase the password length from 8 characters, CORE-3372: Simplify process of non-default security database creation 2011-12-23 12:43:58 +00:00
dimitr
9bac54c2ca A little bit of safety doesn't hurt. 2011-11-09 13:31:27 +00:00
dimitr
444d5302e1 Refactored the tdbb initialization, especially in AST and BG threads.
Replaced dbb_use_count with a list of active requests (to be utilized later).
Misc cleanup.
2011-10-18 18:02:57 +00:00
dimitr
4263301039 Refactored the database shutdown. Work in progress. 2011-10-10 13:51:10 +00:00
dimitr
2604f07d68 Let's avoid having tdbb_transaction pointing to the deallocated memory. 2011-09-19 15:19:24 +00:00
asfernandes
47489fa71b Misc. 2011-06-26 18:48:00 +00:00
robocop
1c250c02eb Misc. 2011-06-25 03:40:18 +00:00
hvlad
f12c243e1c Improvement CORE-3537 : There is no need to undo changes made in GTT created with ON COMMIT DELETE ROWS option when transaction is rolled back. 2011-06-24 12:54:46 +00:00
hvlad
f2aaa12ce5 Improvement CORE-3536 : Garbage collection in GTT is unnecessary delayed by active transactions in another attachments 2011-06-24 12:49:08 +00:00
asfernandes
77af7c9d55 Misc. 2011-06-17 01:06:27 +00:00
hvlad
eb41aaa8d5 Fixed bug CORE-3525 : Autonomous transactions should not inherit run-time flags of "parent" transaction 2011-06-16 08:58:13 +00:00
hvlad
b202c0573a Try to correctly handle IO errors in cache and avoid some internal deadlocks. 2011-06-15 12:44:44 +00:00
alexpeshkoff
4c02901734 Fixed segfault in execute statement, reported by Dmitry privately 2011-06-03 15:29:01 +00:00
dimitr
df893a708d Better (I hope) solution for CORE-3058: New generators are created with wrong value when more than 32K generators was previously created. It also resolves the [temporary] inability to restore generator values. 2011-06-01 16:58:55 +00:00
hvlad
99c9c8e2db Enabled background threads (garbage collector and cache writer).
Introduced special kind of system attachments used in this threads and show its activity in monitoring.
2011-05-27 07:57:16 +00:00
asfernandes
3ce54d2eda Misc. 2011-05-11 01:18:28 +00:00
hvlad
fef1f49c94 Shared page cache implementation 2011-05-09 10:15:19 +00:00
alexpeshkoff
256cb1e853 1. Use reference counted stable in global pool objects instead PublicHandle's validation.
2. Avoid massive segfaults when closing heavily loaded server.                                                                                 
3. Restored logic in YValve required for correct shutdown.                                                                                    
4. Do not change externally visible request body when preparing it.
2011-04-25 17:47:56 +00:00
dimitr
0cc0d65eb1 Fixed the assertion caused by refcnt != 0. 2011-04-05 05:47:45 +00:00
alexpeshkoff
9ef53b65e0 Remove reference counting where not appropriate 2011-03-31 13:44:22 +00:00
dimitr
86ea2ddb00 Front ported:
Refactored the shared counter to support multiple number spaces.
Changed att_id and tra_id to be generated sequentially (without caching), as agreed with Vlad privately.
Fixed CORE-2305: Make mon$statement_id value constant among monitoring snapshots.
2011-02-15 07:16:57 +00:00
hvlad
12ada43e38 Front ported improvement CORE-3323 : Ability to cancel waiting in lock manager
LM part will be changed to not rely on engine internals.
2011-02-02 11:20:52 +00:00