8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-30 09:23:09 +01:00
Commit Graph

198 Commits

Author SHA1 Message Date
arnobrinkman
5f13621bf9 1) fix outer join issues
2) fix problem with ORDER BY <index> and missing NULLs
2004-10-26 22:23:56 +00:00
dimitr
09c51110b4 Added the equivalence operator. The major index optimizations are done.
Notes:
1) Some optimizations will follow after more deep analysis.
2) The syntax "==" is not yet agreed on. I'd prefer it to be changed.
2004-10-14 19:09:19 +00:00
dimitr
421f259a4e 1) Locks related cleanup
2) Got rid of TRA_nowait + transaction waits related cleanup
3) Return isc_lock_timeout when it's necessary
TODO: Enhance SET TRANSACTION
2004-10-07 09:15:32 +00:00
skidder
02a0915156 Teach engine to work with larger record numbers - 64-bit internally, 40-bit externally 2004-09-28 06:28:38 +00:00
dimitr
0551c0fcb6 Fixed some issues with expression indices. 2004-09-26 12:37:24 +00:00
dimitr
47d00c34e0 A number of little corrections. 2004-09-13 21:06:41 +00:00
dimitr
a975c23a96 Fixed the context pool management. 2004-09-03 06:10:23 +00:00
dimitr
270841c3e9 More EXPRESSION_INDICES changes. 2004-09-03 05:27:44 +00:00
dimitr
62c11614fc Let's choose a reasonable join order for intermixed inner and outer joins. 2004-09-02 14:53:43 +00:00
dimitr
7f16a055e9 A few little fixes in the optimizer. 2004-09-02 14:43:26 +00:00
alexpeshkoff
c3db4aaa97 added (and used in sources) template to change and restore default pool 2004-08-30 18:11:08 +00:00
robocop
3a45a04ea7 MSVC6 doesn't keep variables in a for() only in that scope. This standard construction is rejected:
for (int i = ...);
for (int i = ...);
Put the variable again before the loops to be able to compile.
2004-08-27 04:46:01 +00:00
brodsom
15a5a276da Fix signed/unsigned comparisons 2004-08-26 21:47:19 +00:00
robocop
b60c0e4cab Misc: format 2004-08-21 09:29:46 +00:00
dimitr
cfb0e2eb5a More asserts and some style changes. Thanks to Claudio. 2004-08-20 07:55:09 +00:00
dimitr
89a31cdd07 Make EXPRESSION_INDICES generally working. 2004-08-20 04:04:06 +00:00
dimitr
d09aa165db The EXPRESSION_INDICES code now compiles. 2004-08-19 18:41:19 +00:00
dimitr
ca4ea54a1e Small optimization of multiple OR booleans (or a constant IN predicate).
The idea is to use a single sparse bitmap for an index matching and hence avoid OR'ing bitmaps for every argument value.
Ported from Yaffil.
2004-08-17 17:52:19 +00:00
alexpeshkoff
31039a254e next step preparing to allocate auto objects memory from appropriate pool 2004-08-16 12:28:43 +00:00
skidder
311d7b4b34 Fix a couple 'invalid read' problems found by Valgrind. Both could cause crashes, one could result in invalid nulls placement. Removed const*const*const stuff in couple places because things like that make code really hard to understand 2004-08-11 05:34:23 +00:00
arnobrinkman
f42e0e4f55 Bugfix with OUTER JOINS
Finally i got them as they should have been
2004-08-07 16:49:00 +00:00
arnobrinkman
f2345109a0 Bugfix: optimizer didn't add boolean-node when it was a OR operator and no index could be used.
This caused unnecessary evaluation of joined rse's to that rse.
2004-07-20 18:55:03 +00:00
arnobrinkman
401fb7d12f 1) Fix starting with and empty string index problem where empty string is passed in parameter. (STARTING WITH ?) ? = ''
2) New index structure ensures that NULLs cannot hold the same key-value as a data value.
3) Ignore NULLs already on scanning index where possible.
2004-07-15 23:01:12 +00:00
skidder
2915fcf547 Somewhat simplify invariant tracking stuff. It is more pessimistic now, but should work more reliably when invariants are modified (see QMDB tests for details) 2004-06-25 22:12:20 +00:00
skidder
5f43cf8683 Report PLANs for selectable procedures in correct order. This is a fix for regression which I introduced a few months ago and it was found by Vlad Horsun 2004-06-23 16:40:19 +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
alexpeshkoff
9a34ce553c make bool (isEmpty/hasData) checks for string and stack safe 2004-05-27 16:26:52 +00:00
alexpeshkoff
2f99a5ebf1 small strings cleanup 2004-05-26 16:12:05 +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
1ffe279896 -Avoid shadow warning 2004-05-12 19:39:17 +00:00
brodsom
b30a0b8799 Macro cleaning 2004-05-12 00:02:37 +00:00
robocop
802f244ec1 Misc changes 2004-05-09 05:48:33 +00:00
brodsom
c8db819ac5 Replace defines with consts 2004-05-07 07:57:46 +00:00
arnobrinkman
8e472b4fc4 Fix bug with slow MERGE
Fix bug with FULL JOIN and IS NULL in where clause.
  SELECT * FROM TableX FULL OUTER JOIN TableY ON (...) WHERE TableY IS NULL
2004-05-06 22:06:56 +00:00
brodsom
60d9d085a0 Macro cleaning 2004-05-03 21:43:56 +00:00
skidder
43cb0d1ce4 Y-Valve handle translation layer 2004-05-02 23:06:37 +00:00
brodsom
5cf9fdfc90 Removing ib_stdio.h 2004-04-28 22:43:34 +00:00
skidder
7e7b6f604c Slightly better fix for the FBTCS problem spotted by Blas 2004-04-28 17:28:33 +00:00
skidder
5f909e21b8 Fix for FBTCS Join 17 testcase 2004-04-28 05:18:27 +00:00
hvlad
2afe197918 Added Stack::iterator::hasMore method. Replaced getCount() and notEmpty() with hasMore() when it's possible 2004-04-23 08:02:52 +00:00
alexpeshkoff
7b27fa55be fixed number problems after lls to Stack conversion 2004-04-21 14:14:36 +00:00
alexpeshkoff
176041c63e applied fixes, mentioned by Claudio 2004-04-19 13:40:30 +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
skidder
abdbec6f84 Switch to Firebird container templates for request resource tracking. This significantly reduces CPU time any memory consumption for databases with complex metadata 2004-04-18 02:50:38 +00:00
robocop
6d4c0ab908 Three changes to isql:
Fix isql bug #910430.
Add SET HEADING ON/OFF option
Add -M2 command-line option to send output of statistics and plans to the same file than the rest of the output.
Those items do not appear when using HELP SET inside isql or with isql -? from the command line.
2004-04-11 04:04:18 +00:00
robocop
59b235cea3 Small corrections 2004-04-10 00:25:22 +00:00
alexpeshkoff
1678d0f819 Returned opt.cpp to buildable state 2004-04-08 14:51:31 +00:00
alexpeshkoff
98aebc619a changed csb_index_allocation to Array from str 2004-04-01 16:32:54 +00:00