8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-26 06:43:04 +01:00
Commit Graph

57 Commits

Author SHA1 Message Date
f995ed4408 Merges changes from master 2017-04-02 19:12:18 +03:00
Adriano dos Santos Fernandes
6b06320fdc Misc. 2017-03-09 00:49:23 -03:00
hvlad
2c49e6fcf2 New feature CORE-5488 : Timeouts for running SQL statements and idle connections 2017-02-22 14:30:57 +02:00
028248b194 Merged changes from master branch 2017-02-16 17:56:23 +03:00
Adriano dos Santos Fernandes
cae7bdd658 Misc. 2017-01-15 12:53:50 -02:00
5e70385a16 Fixed CORE-5433: Minor performance optimization - avoid additional database attachment from security objects mapping code 2016-12-30 19:28:37 +03:00
f88ddeda49 Fixed CORE-5428: Rare segfault when preparing request working with a table with triggers 2016-12-25 18:07:57 +03:00
5aede150e3 Decimal floating point numbers - first draft 2016-11-11 17:59:55 +03:00
hvlad
d6fae697a3 Remove not necessary sync points - dbb_lck_sync 2016-07-06 16:08:11 +03:00
Dmitry Yemanov
f2d0b64ba2 Misc adjustments after CORE-5232 and more encapsulation for the Lock
class.
2016-05-10 10:44:30 +03:00
Dmitry Yemanov
c3858e1e65 Refactored database-level info to be retrieved directly into the MON$
snapshot, without intermediate storage in shmem. This should also fix
CORE-5179 (Database-level statistics (MON$STAT_GROUP = 0) may contain
multiple rows under concurrent load).
2016-03-31 13:53:08 +03:00
dimitr
99ad42ab82 This should fix the races while accessing the relation statistics inside dbb_stats. Reads/writes/fetches/marks are incremented (CCH) and read (INF) unprotected, as it's crash safe and read skews are acceptable. Other counters (both global and relation wise) are protected with a mutex. They're incremented on demand based on the attachment counters (via diffs). While being there, cleaned up the currently unused performance counters. 2016-01-24 21:14:18 +00:00
dimitr
dc7aad88ed 1) Slightly refactored recheduling and checkout logic.
2) Re-enabled checkouts in PIO routines, this resolves CORE-4179. Windows build may be broken, please validate.
3) Implemented faster reaction on asynchronous cancellation/shutdown requests.
4) Avoided locking dbb_sync in AST. This change also solves races during massive attachment shutdown.
2015-11-29 15:12:31 +00:00
dimitr
4e4d8002e5 CORE-4965: Extend the transaction ID space beyond 2^32 transactions. Initially developed in the v2.5 custom branch, then reworked and now merged into v3.0. 2015-10-19 13:32:02 +00:00
alexpeshkoff
139331c7e3 Enhanced memory leaks search - changed FB_NEW to FB_NEW_POOL,
plain new to FB_NEW, making allocated with it blocks tagged with file/line.
Make related code slightly better readable.
2015-10-12 14:26:00 +00:00
hvlad
2e78b5a7e0 Feature CORE-4707 : Implement ability to validate tables and indices online 2015-06-19 12:07:41 +00:00
hvlad
feea0f7924 Fixed few stability issues with EDS related with cases when external connection is broken unexpectedly. 2015-05-10 20:46:17 +00:00
hvlad
79b760b4ac Memory leak (CORE-4683) 2015-02-16 13:57:28 +00:00
dimitr
d4492eea92 Better (methinks) synchronization for the monitoring stuff. Being field tested. 2014-08-10 20:11:41 +00:00
dimitr
6199136792 Refactored database monitoring, made its handling attachment bound. This should make deadlocks impossible, as well as avoid blocking worker connections while the monitoring request is processed. 2014-07-31 08:56:53 +00:00
asfernandes
86487fda92 Misc. 2014-07-20 02:19:06 +00:00
skidder
7c743fc291 Fix build warnings 2014-07-17 18:48:46 +00:00
asfernandes
08f3a00cb0 Misc. 2014-06-20 02:28:22 +00:00
dimitr
153b06b2fd Minor structure changes. 2014-06-13 16:28:22 +00:00
alexpeshkoff
6a2016235a Fixed CORE-4435: After calling release() for attachment to database (instead detach) in embedded mode attachment remains active forever (and some cleanup re. reference counters) 2014-06-10 07:13:34 +00:00
robocop
2810026363 Misc and warnings. 2013-12-29 00:35:50 +00:00
asfernandes
2aa3e8dd4d Working in progress on the fix for CORE-4271: unify as possible the handling of procedures and functions. 2013-12-12 14:42:31 +00:00
alexpeshkoff
bd65abc1aa Cleanup 2013-10-31 15:10:26 +00:00
dimitr
c235774864 Attempted to fix CORE-4235: Deadlock is possible while accessing the monitoring tables under concurrent load.
Refactored the list of reference counted attachments to be useful in other cases.
Some minor adjustments in the monitoring code.
2013-09-22 16:10:06 +00:00
dimitr
01b81b1edb Code simplification and some corrections. 2013-08-19 18:50:28 +00:00
asfernandes
60d0269c92 Fixed CORE-4119 - Metadata source becomes wrong after twice transliteration to the metadata charset. 2013-06-16 23:05:41 +00:00
alexpeshkoff
c74565ce0e Avoid races with lck_attachment in AST 2012-12-29 13:48:49 +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
9f2a992078 Implemented:
CORE-2780: Include client library version and protocol version in mon$attachments
CORE-2187: Return the Hostname in mon$attachments
CORE-3779: Report OS user name in MON$ATTACHMENTS
+ some cleanup.
2012-09-12 07:45:51 +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
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
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
hvlad
177b43306c Adjust order of releasing metadata objects when attachment is released.
It also avoids assert in MET_verify_cache() pointed privately by Alex.
2011-05-11 09:39:57 +00:00
asfernandes
d0c2265105 Misc. 2011-05-10 01:12:14 +00:00
hvlad
fef1f49c94 Shared page cache implementation 2011-05-09 10:15:19 +00:00
asfernandes
69dc52ba48 Integrate IAttachment and ITransaction in the external engines API. 2011-05-07 19:52:44 +00:00
asfernandes
9754526943 Misc; reinterpret to static casts; correction in YRequest version. 2011-04-26 01:00:33 +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
alexpeshkoff
9ef53b65e0 Remove reference counting where not appropriate 2011-03-31 13:44:22 +00:00
alexpeshkoff
d6fcde387b New plugin manager. Use it for all types of plugins. 2011-01-14 17:31:40 +00:00
asfernandes
20b0bbaf82 Refactor CREATE/ALTER/DROP DOMAIN 2010-07-06 00:49:33 +00:00