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

347 Commits

Author SHA1 Message Date
dimitr
5453b5c394 Attachments marked as shutdown may still be running (before they reach the rescheduling point), so they should not be accounted as already gone. This should also fix CORE-4236: Database shutdown is reported as successfully completed before all active connections are in fact interrupted. 2013-11-13 15:42:48 +00:00
hvlad
34b99e6f3a Don't force flush for database which creation is not complete. 2013-11-07 10:32:35 +00:00
dimitr
ddcbc3928c Unconditionally flush the page cache to disk if FLUSH_ALL / FLUSH_FINI modes are used and FW=OFF. This puts a little bit more consistency and favors explicit flushes over implicit ones (e.g. when database is detached and its file is closed). 2013-09-22 15:35:36 +00:00
asfernandes
a66366bc82 Misc. 2013-08-18 18:53:41 +00:00
dimitr
d2fa09942e Fixed incorrect accounting re. number of fetches. 2013-08-15 11:54:56 +00:00
hvlad
82b574fbfd Restore scan-resistance feature of the page cache.
Refactor common code a bit.
2013-08-08 08:41:12 +00:00
dimitr
f4a856beee Fixed the page cache stats not being reported (CORE-4159). 2013-08-04 07:31:07 +00:00
asfernandes
b6a4d39596 Misc. 2013-07-06 23:11:13 +00:00
dimitr
1e03bccf84 Misc. 2013-07-03 11:33:59 +00:00
hvlad
de2a34daa3 Fixed my bug introduced when porting page cache on fb3 2013-06-30 14:02:51 +00:00
hvlad
0b5815507c Implement wait with timeout for page buffer's latches.
Note, engine passes timeout as negative seconds, while sync objects works with positive milliseconds.
2013-06-16 21:41:35 +00:00
alexpeshkoff
6f5fedec9a Fixes related with CORE-3993 2013-04-17 08:04:02 +00:00
dimitr
2fe61fed12 Avoid calling lock_buffer() for the SS setup. 2013-04-07 07:55:40 +00:00
asfernandes
26ab241631 Misc. 2013-03-30 02:31:03 +00:00
hvlad
447f204929 Refactor a bit 2013-03-28 16:52:03 +00:00
hvlad
c131de732c Cleanup:
- removed never used bcb_checkpoint and BDB_checkpoint
- removed conditional compilation for CACHE_WRITER as it is already ruled by flag BCB_cache_writer at almost all places
- added necessary checks for BCB_cache_writer when it was missed
2013-03-23 13:58:41 +00:00
dimitr
47c71f35ed Completed refactoring of the database shutdown. Fixed a few remaining bugs there. Fixed timeout accounting in SS as well as CORE-3817: Forced database shutdown does not work if non-zero delay was specified. 2013-03-17 12:14:25 +00:00
alexpeshkoff
fc12495d0e Modified IStatement interface in our API:
1. Never allocate empty statement - always use att->prepare() to create statement interface
2. Separated IStatement into 2 parts - statement itself and resultset.
3. Added stmt->openCursor() (and att->openCursor() for unprepared statements) to create IResultSet.
4. Always use IMessageMetadata (former IParametersMetadata) to pass message fromat info from client,
   therefore avoiding need in BLR generation in client applications.
2013-02-17 12:08:53 +00:00
asfernandes
d9275d6567 Misc. 2013-01-07 01:15:24 +00:00
dimitr
dcb8c8fd86 Front ported to trunk. 2012-12-21 14:11:45 +00:00
alexpeshkoff
c4ae450de4 Re-read attachment from lock after taking lock in attachment handler 2012-12-20 12:18:52 +00:00
hvlad
8d81d2717d Add lost PAGE_LOCK_RE_POST call. 2012-12-19 13:51:48 +00:00
asfernandes
9b72aa53bc Misc. 2012-12-19 00:56:57 +00:00
alexpeshkoff
b3f9759960 Take locks in AST before building tdbb
Fixed assertion in CCH_exclusive_attachment 
Rolled back my changes required to let cancelOperation() enter engine after shutdown
Better locks' history in SyncObject
2012-12-18 13:54:18 +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
1b5f6cd7b2 Avoid garbage to be written to the shadow's header page. It does not really hurt, but anyway. 2012-12-10 05:50:52 +00:00
hvlad
7012311f4d Front ported fix for CORE-3034 (Bugcheсk 300 (can't find shared latch)) 2012-12-06 14:51:58 +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
alexpeshkoff
64a89b73a0 Improvement CORE-3588: More detail in message "wrong page type" 2012-06-28 11:46: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
9af385d031 Some changes in CryptoManager, discussed with Vlad and Adriano 2012-06-05 10:06:31 +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
844b15bd13 Misc and style. 2012-05-20 10:00:52 +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
ec6c21f244 Fixed bug CORE-3814 : SuperClassic server crashes when performing a database shutdown (FW=OFF) 2012-05-03 14:05:47 +00:00
asfernandes
580172419b Misc. 2012-04-23 00:48:28 +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
hvlad
bd96e2c2e5 New patch for CORE-3468 2012-03-22 00:21:57 +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
21cd78a0fd Cleanup: unused functions, parameters & variables. 2012-01-24 03:37:43 +00:00
asfernandes
ed3d7ed720 Misc. 2012-01-20 01:42:03 +00:00
robocop
e2914070b9 Misc. 2012-01-19 04:54:39 +00:00
dimitr
64f68935d0 Methinks this solution should be a bit better, as it doesn't overwrite the pending error code (happened in PIO). 2011-12-23 18:13:55 +00:00
dimitr
8dda62eaab Fixed the assertions caused by the isc_lock_conflict error left in the status vector after successful execution of the API call. 2011-12-23 17:11:37 +00:00
dimitr
d542f5ac88 Fixed the races leading to a crash during dbb finalization. Thanks to Adriano for assistance. 2011-11-01 04:02:59 +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
hvlad
dc4abc05e4 Protect system attachments list with dedicated sync object. It prevents deadlocks with common sync object on process shutdown. 2011-10-02 10:19:06 +00:00
asfernandes
b048dfb072 Misc. 2011-09-30 01:15:13 +00:00