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

230 Commits

Author SHA1 Message Date
robocop
94e04d3768 Misc. 2005-03-20 04:26:10 +00:00
dimitr
3075bdcdf2 1) Fixed bug with the lost sort node that caused unordered data to be returned.
2) Fixed badly optimized join orders in triggers.
2005-03-19 16:55:26 +00:00
arnobrinkman
5d2b73e496 Fix bug with index navigation were both dependent streams and free streams are performed in a inner join list 2005-02-22 22:12:19 +00:00
arnobrinkman
3a2d65b777 Fix, aggregate functions were also delivered from HAVING to the WHERE clause 2005-02-22 21:04:47 +00:00
dimitr
62b09e9bfc Fixed SEGV related to explicit plans. 2005-02-21 20:32:18 +00:00
robocop
854da4e241 Misc. 2005-02-21 06:01:01 +00:00
arnobrinkman
229d4415a4 Allow some more complex expressions to be unmapped 2005-02-15 12:17:51 +00:00
dimitr
e74888f7fc Minor stuff. 2005-02-15 11:52:52 +00:00
arnobrinkman
9ae0b6d273 simplify code and some cosmetic changes 2005-02-14 18:51:16 +00:00
robocop
7e5696adcd Misc. 2005-02-14 05:56:04 +00:00
arnobrinkman
29715e6834 Fix wrong commit, thanks to Claudio! 2005-02-13 11:38:39 +00:00
arnobrinkman
964710f2a0 Remove unneeded comment-blocks 2005-02-10 23:05:04 +00:00
arnobrinkman
283d7f0d8c Add new optimizer logic for handling :
ODS11:
- segment-selectivity
- better support for IS NULL
- better support for STARTING WITH
- matching both OR and AND nodes to indexes
- pick better JOIN order based on cost rules

ODSx:
- Indexed order on OUTER JOIN queries
2005-02-10 22:54:17 +00:00
arnobrinkman
d7792a2d76 fix some dependency issues 2005-02-01 14:39:36 +00:00
robocop
4fa02dbff2 Misc. 2005-01-25 06:38:58 +00:00
arnobrinkman
d299e4dae3 fix problems with explicit given PLAN and MERGE 2005-01-24 23:12:15 +00:00
robocop
778fecb78d 1.- Fix unregistered bug where an attempt to use an invalid index in an explicit plan causes garbage to be shown in the error message instead of the rejected index name.
2.- Use constants instead of hardcoded positions in node's arguments.
2005-01-21 08:39:28 +00:00
robocop
d65307b497 Style. 2004-12-24 08:52:39 +00:00
robocop
cb74ecd1f9 Fixing comments. 2004-12-22 08:50:47 +00:00
robocop
365de0fa48 Misc. 2004-12-16 03:10:20 +00:00
arnobrinkman
08ef027dfa fix wrong join order with parameters/variables/constants after my last commits 2004-12-15 20:12:27 +00:00
robocop
308bdd3de1 Misc. 2004-12-07 00:33:16 +00:00
arnobrinkman
e25f925d8e Improve cross join and merge/sort handeling 2004-12-03 23:56:51 +00:00
robocop
af6a16107a Misc. 2004-11-30 06:18:39 +00:00
arnobrinkman
e8e46c3381 1) Try to make new nodes from conjunctions applied to the top RSE of a UNION.
Deliver the new nodes (created per rse inside the union) to the optimizing phase of every rse.
2) Little refactoring of above function and the one for aggregate
2004-11-28 23:09:37 +00:00
dimitr
f570023657 Improved optimization of mixed AND/OR predicates. 2004-11-27 20:54:52 +00:00
arnobrinkman
eca3322cd2 Distribute HAVING clause conjunctions to the WHERE clause when possible.
This will improve VIEWs that contain a aggregate query and comparisons are done on fields from that VIEW that are also part of the GROUP BY clause.
2004-11-27 00:52:10 +00:00
arnobrinkman
2e8c916482 fix bug with partially matched lower bounds on descending multi segment index. 2004-11-23 22:43:26 +00:00
skidder
c40eb08a27 Remove CURRENT_DATABASE keyword 2004-11-22 20:50:34 +00:00
dimitr
b741e2c136 Fixed bugs SF #459059 and #543106. 2004-11-17 19:33:11 +00:00
skidder
1e26d6c80d CURRENT_DATABASE implementation. Established identity may also be used for isc_info_db_id datum 2004-11-11 05:37:52 +00:00
robocop
628b088d2c Treat string literals and string constants with more respect. 2004-11-10 04:26:45 +00:00
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