Dmitry Yemanov
f2d0b64ba2
Misc adjustments after CORE-5232 and more encapsulation for the Lock
...
class.
2016-05-10 10:44:30 +03:00
hvlad
9ae426a757
Please MSVC14:
...
-add space before XXXFORMAT macros to not confuse it with user-defined literals
-use existing snprintf
This should fix part of the issues at CORE-5099 and CORE-5120
2016-03-17 12:33:26 +02:00
asfernandes
9f8062b7d1
Misc.
2015-11-19 01:12:04 +00:00
dimitr
212faade87
Simplified the locking logic and fixed races during record backout.
2015-11-02 11:46:43 +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
hvlad
f7e248ca63
Improvement CORE-4935 : Increase performance of backout of dead record version (or undo of just created primary record version) when backversions chain is too long
...
Improvement CORE-4936 : Reduce internal contention in background garbage collector
Other small improvements:
- garbage collector\sweep now skip record header if transaction is below OIT - it allows to reduce number of page fetches
- missed points to gather RECORD_FRAGMENT_READS and RECORD_BACKVERSION_READS statistics
2015-09-16 21:16:13 +00:00
asfernandes
e3946cf189
Misc.
2015-09-06 18:52:59 +00:00
dimitr
6f7185ec14
Core support for 32KB page size. Disabled so far.
2015-09-01 07:33:36 +00:00
hvlad
48645308b9
Correction
2015-07-15 11:10:22 +00:00
alexpeshkoff
e420019cd4
Fixed CORE-4871: Merge SharedDatabase/SharedCache into single parameter ServerMode, affecting the way how server is started
2015-07-10 13:41:10 +00:00
robocop
939feab036
Misc.
2015-03-13 15:26:22 +00:00
alexpeshkoff
7fed9ff78c
cleanup
2015-03-05 16:18:46 +00:00
hvlad
39a137e913
Use attachment's or relation's pool instead of dbb_permanent where it is more suitable.
...
It fixed memory leak from dbb_permanent (CORE-4683)
2015-02-22 11:02:49 +00:00
dimitr
6ae3e2cbaf
1) Fixed CORE-4383: Index and BLOBs garbage collection doesn't work for update_in_place().
...
2) Applied the same approach to temporary GC records.
3) Refactored the Record class to avoid reallocations, to improve encapsulation and to simplify the code.
4) Slightly refactored UndoItem to isolate its logic from the Record class.
5) Reduced the in-memory size of the undo log.
6) Slightly better alternative to the legacy NULL reporting for outer joins.
7) Minor fixes and adjustments in BufferedStream.
2015-02-19 14:15:00 +00:00
dimitr
29e238f78d
Type correctness (mostly signed->unsigned adjustments).
2014-12-29 21:15:54 +00:00
dimitr
bd3ce4e6fb
This commit is expected to fix CORE-4384: Problems when a table grows beyond 65535 pointer pages. Testing would be appreciated.
2014-12-29 17:40:47 +00:00
asfernandes
cebc7c36b3
Misc.
2014-11-30 21:09:39 +00:00
hvlad
f5e1502b63
Small optimization by Dimitry Sibiryakov:
...
set ppg_min_space to the next really non-full slot when current ppg_min_space slot is marked as full.
2014-11-21 12:23:19 +00:00
asfernandes
8b76cfcff8
Misc.
2014-10-12 19:33:09 +00:00
asfernandes
c642ddca82
Misc.
2014-10-12 02:25:02 +00:00
skidder
0030f9adeb
Fix warnings
2014-09-22 19:25:40 +00:00
hvlad
8ba9d33798
Implement improvement CORE-4556 : Allocate data pages in group of sequential ordered pages (extents)
...
Validation code will follow
2014-09-18 22:31:53 +00:00
skidder
7c743fc291
Fix build warnings
2014-07-17 18:48:46 +00:00
dimitr
153b06b2fd
Minor structure changes.
2014-06-13 16:28:22 +00:00
asfernandes
bb735cb5a2
Misc.
2014-05-23 02:12:56 +00:00
hvlad
714c151a2d
Front ported fix for bug CORE-4372 : Deadlock is possible when two data pages contains record fragments pointing to each other
2014-05-16 10:53:28 +00:00
robocop
4aeb269291
Use enumerations where possible (1).
2014-04-04 18:36:35 +00:00
robocop
9683418a7c
Shortcut.
2014-03-26 19:11:32 +00:00
robocop
ae8f6d6b8f
Misc.
2014-03-03 04:37:29 +00:00
robocop
b873d352fd
Make DPM_fetch_back return bool.
2014-02-25 06:31:39 +00:00
robocop
3460f121f6
Misc.
2013-05-21 21:47:23 +00:00
dimitr
941029af90
Correction as per Claudio's request.
2013-05-03 13:29:21 +00:00
dimitr
d0e20d5f8c
Pass the pool explicitly, it saves us one TLS access per record.
2013-04-06 09:12:14 +00:00
asfernandes
26ab241631
Misc.
2013-03-30 02:31:03 +00:00
hvlad
a418373026
Optimization: delay clearing of page_full flag until page have at least 25% of free space. It saves few costly mark_full() calls when space is actively allocated and reclaimed in highly concurrent environment and reduces PP contention.
2013-03-21 08:23:39 +00:00
dimitr
680d1b4e34
Fixed CORE-4036: Bugcheck or database corruption when attempting to store long incompressible data into a table.
2013-03-17 14:39:09 +00:00
asfernandes
50475858e2
Misc.
2013-03-10 15:39:13 +00:00
hvlad
50c4099b92
Make tracing VIO works and more easy to use:
...
- log into file instead of console
- rebuild only small set of affected modules when VIO_DEBUG is changed
2013-03-10 14:48:17 +00:00
hvlad
0e766ce3d5
Fixed bug CORE-4002 : Error message "index unexpectedly deleted" in database trigger on commit transaction
2012-11-30 08:01:34 +00:00
hvlad
b6c6915693
Fixed bug CORE-3855 : Blobs, inserted into GLOBAL TEMPORARY TABLE ON COMMIT DELETE ROWS, could be placed into newly allocated pages even if there is enough free place on some existing data page
2012-05-26 22:01:30 +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
hvlad
e67ae1a372
Undo patch for CORE-3468
2012-03-21 14:45:44 +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
asfernandes
add3d8ddef
Misc.
2011-06-08 01:55:13 +00:00
hvlad
945a1bdbf4
Fixed bug CORE-3515 : Index corruption. Validation put "missing entries" message into firebird.log
2011-06-05 08:15:33 +00:00
asfernandes
f14ec26183
Misc.
2011-06-04 02:18:55 +00:00
dimitr
f75b00b62d
Misc.
2011-06-01 17:03:14 +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