alexpeshkoff
9a7c7a6c31
Fixed CORE-4685: Accessing DB in invalid manner when links (hard or symbolic) are used for it
2015-02-09 14:08:31 +00:00
asfernandes
2a857cb415
Misc.
2015-01-15 01:17:27 +00:00
asfernandes
b99311dd1e
Make the API usable with different type of IStatus classes, throwing (what class?) or not throwing. Builtin are CheckStatusWrapper (no throw) and ThrowStatusWrapper (throws FbException).
2015-01-12 00:21:38 +00:00
asfernandes
d8a0ff5f4b
Generate interfaces with I-prefix.
2014-12-19 15:24:44 +00:00
hvlad
18806682fd
Fixed bug CORE-4575 : AV in garbage collector thread at disconnect of last attachment
2014-10-10 10:11:14 +00:00
alexpeshkoff
153de0f271
Language independent API
2014-09-29 11:03:47 +00:00
asfernandes
03370ed479
Fixed problem of undefined behaviour when deleting pointer of an incomplete type.
2014-09-05 15:21:10 +00:00
dimitr
b742803ebf
Refactored the shared cache checks. Optimized the shared counter for SS.
2014-09-01 13:19:53 +00:00
dimitr
51d1cd35d3
Front-ported Nickolay's improvement for the shared counter.
2014-08-10 20:07:45 +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
skidder
7c743fc291
Fix build warnings
2014-07-17 18:48:46 +00:00
asfernandes
62719c854d
Warnings.
2014-07-10 02:25:44 +00:00
roman-simakov
573e93e5a6
Fixed CORE-735: User rights for metadata changes.
...
We check DDL in DDL nodes and skip at vio level. vio level still exists for direct metadata editing.
2014-07-08 07:35:27 +00:00
robocop
2810026363
Misc and warnings.
2013-12-29 00:35:50 +00:00
alexpeshkoff
83db69c849
Fixed new gcc 4.7 warning "deleting object of polymorphic class" in many places. Adjusted use of interface types (reference counted vs just vesrioned). Avoided some hacks caused by badly chosen interface type.
2013-11-18 12:20:23 +00:00
alexpeshkoff
120b10a78a
Implemented CORE-4263: Database linger
2013-11-14 16:16:24 +00:00
hvlad
34b99e6f3a
Don't force flush for database which creation is not complete.
2013-11-07 10:32:35 +00:00
dimitr
3821ec9d41
Implemented CORE-4218 (database owner in MON$DATABASE) and CORE-4222 (auth method in MON$ATTACHMENTS).
2013-09-18 09:37:13 +00:00
dimitr
b7372ba47e
Front ported CORE-3989: Bad performance / slow response when many concurrent sorts are executed.
2013-08-06 09:37:44 +00:00
dimitr
9e8bbbdd13
Better protection against AST delivery during detaching.
2013-07-03 13:22:44 +00:00
hvlad
c12e731b6a
Fixed bug CORE-4134 : Race condition when auto-sweep is started
2013-06-29 11:32:55 +00:00
robocop
3460f121f6
Misc.
2013-05-21 21:47:23 +00:00
alexpeshkoff
3746843930
Postfix for CORE-3935 and CORE-3993: avoid opening same database file twice
2013-04-15 16:51:20 +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
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
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
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
dimitr
46cc7d15af
Optimized the shared counter generator to avoid LM calls if there's no contention on the protecting lock.
2012-03-27 10:52:15 +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
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
4675f8d2d2
Fix build.
2011-08-05 02:10:05 +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
alexpeshkoff
a8842629ea
fixed gcc warning
2011-05-10 11:56:52 +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
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
3cb62191b5
Front ported fix for CORE-3356.
2011-02-25 07:32:36 +00:00
asfernandes
e623bb4bf1
Misc
2011-02-18 00:52:10 +00:00
dimitr
bccfda7aa6
Misc.
2011-02-15 07:32:56 +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
asfernandes
ffb28dfc3d
Misc
2011-01-22 17:15:52 +00:00
alexpeshkoff
f89ac854ef
Getting ready to use 32 (not 31) page and transaction numbers
2011-01-21 17:55:04 +00:00
dimitr
2ed04ec8a9
Fixed CORE-3217: Server crashes inside the lock manager when multiple connections attaching/detaching simultaneously.
2010-11-08 10:21:04 +00:00
dimitr
c5f6f04726
Cleanup.
2010-11-02 11:30:57 +00:00
alexpeshkoff
e05c1a825f
Moved some more .h-files to common from jrd as Vlad suggested
2010-10-13 10:39:52 +00:00