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

146 Commits

Author SHA1 Message Date
skidder
f4e7ebdd3b Implement rudimentary framework to track lifetimes of active BLOBs.
This solves the following issues:
1) Outrageous memory consumption when blobs are converted from strings during request processing
2) Materialization doesn't cause invalidation of BLOB IDs too early.
Original behaviour caused errors with updatable views or procedures receiving BLOB arguments.
2004-06-22 20:13:10 +00:00
alexpeshkoff
1591a54e5e Thread cleanup:
1. Added macros to declare thread entrypoints
2. THD_mutex_* functions use Firebird::Mutex
3. Thread local storage use fb_tls.h
2004-06-08 13:41:08 +00:00
brodsom
64c1dee04e -Use C++ struct declaration style. 2004-05-24 17:31:47 +00:00
brodsom
bed146ad19 -Replace *_thread_data macros with inline functions (jrd step 2) 2004-05-23 03:18:10 +00:00
brodsom
f4ca41fa3d -Replace *_thread_data macros with inline functions (jrd step 1) 2004-05-22 14:28:54 +00:00
robocop
441817bd82 1.- Misc changes
2.- Style
3.- Recover dsc_ttype in dsc after Blas' cleanup as a synonym for dsc_sub_type in text types
2004-05-21 06:16:17 +00:00
brodsom
68cb86b274 - Remove *_THREAD_DATA definitions from thd.h, are unneeded and conflicts with definitions in providers/services main headers (which need to use undef).
- Use different names for each service/provider *_THREAD_DATA macros.
2004-05-19 18:14:29 +00:00
brodsom
9dbe1e64fe -Remove casts unneeded after macro cleaning 2004-05-14 18:43:34 +00:00
brodsom
1ffe279896 -Avoid shadow warning 2004-05-12 19:39:17 +00:00
brodsom
b30a0b8799 Macro cleaning 2004-05-12 00:02:37 +00:00
brodsom
62a4b10c22 -Replace define with const
-Remove ifdef cplusplus from internal code
-Remove unused macros
2004-05-06 18:09:24 +00:00
brodsom
2f4865a195 Replace defines for constants 2004-04-29 14:51:02 +00:00
brodsom
5cf9fdfc90 Removing ib_stdio.h 2004-04-28 22:43:34 +00:00
alexpeshkoff
045e9dc8ec 1. removed any mentions of blk_pool() from engine (and method itself)
2. replaced 'struct lls' with 'template Stack'
2004-04-18 14:22:27 +00:00
alexpeshkoff
0acfd46d50 better memory allocation for csb_idx_allocation 2004-04-04 08:25:40 +00:00
alexpeshkoff
98aebc619a changed csb_index_allocation to Array from str 2004-04-01 16:32:54 +00:00
robocop
faa41f7b3b Cleanup 2004-03-30 04:10:52 +00:00
robocop
1824343930 Cleanup.
Fixed a linking error with MSVC6, too.
2004-03-28 09:10:30 +00:00
alexpeshkoff
1e6c7b18e9 fixed problem with loop in includes 2004-03-22 11:38:23 +00:00
alexpeshkoff
7007d6f2a4 1. introduced Jrd and Ods namespaces
2. cleanup of blk* request conversions
3. fixed memory allocation in Execute Statement
2004-03-20 14:57:40 +00:00
robocop
958f9e31aa Cleanup
A few new[] - delete[] pairs fixed.
2004-03-19 06:14:53 +00:00
robocop
f58c769c37 Cleanup. In geeky words:
PandoraBox* pbox = reinterpret_cast<PandoraBox*>(&can_of_worms);
pbox->open();
pbox->flush();
Nickolay may want to undo my ods.h changes if gcc insists
in its crusade against non-PODs and poodles.
2004-03-18 05:56:06 +00:00
alexpeshkoff
67f1740fea Various cleanup to make engine compile and work after mentioned earlier changes.
Mainly:
1) MemoryPool* => MemoryPool& in arrays' constructors
2) use Firebird::string to keep strings data
2004-03-14 13:40:14 +00:00
robocop
2ab1f94dd2 Cleanup
Some minor corrections
Second step to rename
2004-03-11 05:04:26 +00:00
arnobrinkman
9efc5a488b some optimization in index-stuff 2004-03-07 21:50:53 +00:00
robocop
e6187cecd2 Cleanup
Some bug fixes
Style
2004-03-07 07:58:55 +00:00
skidder
dc7aab8f9c Fix up exception handling. Handle (do not ignore) std::bad_alloc and generic exceptions, provide syscall and error information in system_call_failed 2004-03-01 03:35:23 +00:00
skidder
f99d7d5f9f Fix MSVC7 build issue 2004-02-26 01:31:26 +00:00
skidder
b3d29d6511 Fix POSIX build issue 2004-02-26 00:32:31 +00:00
arnobrinkman
9ddf4b9450 Use compressed index-entries.
This will save 2 bytes on every duplicate entry and pagenumber / recordnumber are stored by 7-bits as needed.
2004-02-25 22:14:19 +00:00
robocop
5c3c8abd9a Big cleanup.
God have pity on platform maintainers.
I only can compile/test Win32; sorry, folks.
2004-02-20 06:43:27 +00:00
robocop
663e3b16e7 Cleanup 2004-02-02 11:02:12 +00:00
robocop
2b295a9108 General cleanup. Sorry if I missed some occurrence. 2004-01-28 07:50:41 +00:00
robocop
b441cd9aef Cleanup 2004-01-13 09:52:19 +00:00
robocop
06a4df3708 A requiem for JOURNAL and WAL.
Instructions in the list.
2004-01-06 10:33:18 +00:00
robocop
fd93837ec3 Cleanup:
const correctness
BOOLEAN -> bool
Vars in scope
Formatting
JRD_REQ -> jrd_req*
JRD_TRA -> jrd_tra*
JRD_REL -> jrd_rel*
JRD_FLD -> jrd_fld*
event -> event_t, EVENT_T dropped, EVENT should go in the future
Frank's corrections
alice's STR -> alice_str*
remote's STR -> rem_str*
etc.
It creates entities and backups and restores for me. :-)
2004-01-03 10:59:52 +00:00
skidder
7dc877ff23 Fix ODS10 support after per-segment index selectivity was introduced 2003-12-31 22:40:09 +00:00
robocop
16cbc204df Cleanup 2003-12-31 05:36:12 +00:00
arnobrinkman
8d69efa666 use standard memcpy / memmove functions and fix a bug with large-key index 2003-12-28 13:42:45 +00:00
robocop
ad0b5c4de3 General cleanup 2003-12-22 10:00:59 +00:00
dimitr
516ed97c39 Fixed my yesterday's bug. 2003-12-15 21:10:20 +00:00
dimitr
6ae0d51b91 IMPORTANT - this commit introduces an ODS change!
1. Added selectivity to idx_repeat and irtd
2. Let's make the selectivity array independent from ODS
3. Cleanup
TODO - use per-segment selectivities in the optimizer and get rid of idx::idx_selectivity for ever
2003-12-14 18:22:06 +00:00
arnobrinkman
bcaa8859d3 Fix some descending bugs i created 2003-12-11 23:06:36 +00:00
robocop
d020ea5ca1 ping-pong cleanup: change one place and you have to change several others 2003-12-11 10:33:30 +00:00
arnobrinkman
801b4f00bb another descending problem 2003-12-04 00:55:26 +00:00
arnobrinkman
ce69dfce07 Fix bugs created by myself and the problem (finally ;-) why descending indices were slower as ascending in some cases. 2003-12-04 00:22:12 +00:00
arnobrinkman
bd7b3e08de remove unnessecary code 2003-12-02 15:35:21 +00:00
aafemt
227f881dda Wrong variable name fixed. Thanks to Claudio 2003-12-02 11:52:39 +00:00
brodsom
7844cc7cd4 Fix scope change that breaks posix build 2003-12-02 02:47:34 +00:00
arnobrinkman
710037031f Enhanced Index Structure.
1) NULLs on top when sorting on ASC index, DESC stays the same.
2) Support for larger index lengths, can be up to 1/4 page size.
3) Store record-number on non-leafpages for faster lookup in many duplicates.
4) Jump-nodes for faster key-lookup in index on larger page-sizes.
5) Segment selectivity calculation added.
2003-12-01 02:37:25 +00:00
dimitr
f99e3373d4 Let's support segment-level selectivities. Amen. 2003-11-30 21:14:30 +00:00
brodsom
c5253ae8a5 -Replace gds__ constants with isc_ contants
-Replace codes.h with iberror.h (or remove)
-Move gds__vax_integer and gds__event_block* to alt.cpp and isc_ to gds.cpp
-Use ISC_QUAD internally
-Use isc_vax_integer internally
2003-11-11 12:19:20 +00:00
brodsom
89e8f89f86 Extern "C" cleaning 2003-11-06 03:03:36 +00:00
brodsom
ff070a16a8 Replacing assert with fb_assert 2003-11-03 23:59:24 +00:00
aafemt
900fa62a1d 'struct' cleanup 2003-10-20 10:53:52 +00:00
brodsom
9757af1c66 Macro cleaning 2003-10-09 02:02:42 +00:00
brodsom
64c31be213 extern cleaning
removing underscores in macros
DLL_EXPORT cleaning
2003-10-03 01:34:14 +00:00
arnobrinkman
9759921ef9 Fix problem with MinGW build :-( 2003-09-21 00:38:22 +00:00
arnobrinkman
cc87aaae41 Before starting with the new index-structure i do some code clean-up. 2003-09-17 23:24:03 +00:00
arnobrinkman
7e024c858e Remove IGNORE_NULL_IDX_KEY define.
Still to go : nav.cpp, nav_proto.h, ods.h, dba.epp
2003-09-16 23:19:46 +00:00
dimitr
dabc8fc047 Some cleanup 2003-09-16 17:08:44 +00:00
skidder
b05dc24810 Forward port removal of artificial index number limitation from 1.0.3.
Fix bug in dbb_max_idx calculation. Do not port GC and metadata versioning
changes as they seem very dangerous to me.
2003-08-18 21:13:56 +00:00
aafemt
5ca9856d5b replacing BTR_get_quad() by get_long 2003-08-13 10:45:10 +00:00
dimitr
d25f1382fb no message 2003-06-28 12:48:04 +00:00
dimitr
945bd0042a Cleanup 2003-06-27 16:55:58 +00:00
dimitr
c17f3cc0df Small cleanup. 2003-05-26 15:46:20 +00:00
dimitr
873ac89b67 no message 2003-05-05 14:25:40 +00:00
dimitr
3ad80a5611 no message 2003-04-11 07:28:47 +00:00
skidder
8fbe3f2d29 Fix up the reason of slowdown of Windows CS 2003-03-24 14:41:42 +00:00
brodsom
3bcad89ae7 Replace UTEXT with UCHAR 2003-03-18 02:03:46 +00:00
skidder
b68242f571 Fix up engine to work with multi-field foreign constraints again after nulls handing changes in unique indices 2003-03-09 21:07:29 +00:00
dimitr
d6932d887d Allowed NULLs in unique indices. 2003-03-05 11:23:08 +00:00
tamlin
80a0e44eba back out const-correcntess fix 2003-02-20 06:57:44 +00:00
tamlin
72f10a1fa2 const correctness and a quite large speed-up in BTR_get_quad for IA32 CPU arch. 2003-02-20 00:24:33 +00:00
brodsom
45efaaa7e0 Remove inline keyword. 2003-02-13 22:49:16 +00:00
dimitr
67749f906b Fixed exception handling. 2003-02-13 13:33:57 +00:00
brodsom
6b884aa14d Remove some unused defines & macros 2003-02-13 12:16:25 +00:00
dimitr
b096a2593d CONST -> const 2003-02-13 10:11:35 +00:00
brodsom
6ec592a397 Remove DN10000 define (apollo) 2003-02-10 17:01:34 +00:00
eku
a7f18b2e31 Removed "register" variables from the source code. It's up to the compiler
to hold variables in CPU registers.
2003-02-10 13:28:35 +00:00
brodsom
32ad3f4583 Change debug defines names to DEBUG_* 2003-02-10 00:03:54 +00:00
skidder
ba5e11b15c Integrate new memory manager into the engine 2003-01-16 17:47:10 +00:00
dimitr
b4e1b71321 Cleanup. 2002-12-15 13:03:57 +00:00
hippoman
4a76e9e4fe change TRA,REQ,TRG,REL,CTX or PRC, to module local names. 2002-11-17 00:13:59 +00:00
dimitr
5f61e44ddc Global names change:
FBOK=>FB_SUCCESS
FAILURE=>FB_FAILURE
xxx_FBOK=>xxx_SUCCESS
2002-11-14 08:33:08 +00:00
kkuznetsov
6887f405ab Renaming all occurences of SUCCESS to FBOK 2002-11-13 15:01:21 +00:00
hippoman
25c1dbd367 * Changed NOD struct name to JRD_NOD. 2002-11-11 19:42:47 +00:00
seanleyne
b3ad604669 Removed support for obsolete "PC_PLATFORM" define 2002-10-31 05:06:02 +00:00
seanleyne
0b82f4aa07 Removed obsolete "Netware" port 2002-10-30 06:40:58 +00:00
skidder
6d64014e57 Changed engine to store source file name/line number information for EVERY allocation when DEBUG_GDS_ALLOC is defined. All allocation should be done using FB_NEW or FB_NEW_RPT macros instead of keyword new since now 2002-09-25 17:12:16 +00:00
eku
6380cea068 Removed compiler warnings. Fixed more SIG_FPTR issues. Use GNU C to check
format strings against arguments.
2002-09-24 12:57:10 +00:00
eku
4eaf8c0914 Autoconf cleanup:
o since the define 'VAX' was only used to tell that the byte order is
   LITTLE_ENDIAN (it have nothing else to do with the VAX computer family)
   it can safely replaced with '!WORDS_BIGENDIAN'.
 o check if pointers are 64 bit
 o replaced HAS_64BIT_POINTERS with 'SIZEOF_VOID_P == 8'
2002-09-17 05:58:40 +00:00
bellardo
773836f1b1 Finished removal of setjmp/longjmp code, and fixed a handful of FB1->FB2
porting bugs.
2002-04-04 07:10:40 +00:00
tamlin
80f7fb6dd4 New C++ memory pool 2001-12-24 02:51:06 +00:00
skywalker
365a7fe19c Changes to compile fb2 under autoconf includes some structural changes 2001-07-29 17:42:23 +00:00
tamlin
9a776a604e First steps towards a C++ conversion. 2001-05-23 13:26:42 +00:00