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

22 Commits

Author SHA1 Message Date
robocop
b4091ac9a6 Make them explicit. 2008-03-10 08:16:57 +00:00
robocop
4c3381ef6b Style, constness and macro cleanup. 2008-02-03 10:41:44 +00:00
hvlad
7a0dc31863 Fixed mistake 2006-11-01 21:19:19 +00:00
hvlad
ece81ac260 Proper but more complex fix for CORE-904: new ODS11 optimizer used unnecessary huge amount of memory while processing IN list with large number of items.
Use Firebird::ObjectsArray instead of Firebird::Array and remove IndexScratchListHolder as unneeded
2006-08-26 12:12:30 +00:00
hvlad
b20aa92714 Common table expressions implementation 2006-08-01 20:37:58 +00:00
dimitr
e26bcb63db Forward-ported optimizer selectivity adjustments. 2006-07-29 07:03:34 +00:00
robocop
df48977a4b Disable the debug info for the optimizer in the public repository as it might produce release builds that create an output file with that information. 2006-01-17 07:39:12 +00:00
arnobrinkman
78dcb398ef Fix bug with lower/upper -exlude flag for indexes 2006-01-15 13:19:05 +00:00
robocop
1ca7a582f9 EXPRESSION_INDICES code is considered stable and therefore there's no need to keep it protected by macros. Please do a full rebuild. 2006-01-14 07:00:44 +00:00
dimitr
88f5a0d05e Fixed the issue related to non-indexed relationships (reported in fb-devel). 2005-12-19 13:59:03 +00:00
robocop
105cd42e21 Non-member functions that are used in other modules should have a prefix.
Created a couple of temporary vars for code simplification.
2005-11-06 01:56:03 +00:00
arnobrinkman
94e7337628 Use candidate cost for decision which candidate to use.
Stop using indexes when total cost is greater as the previous used total cost.
Fix excludeLower/exludeUpper problem with using more operators to the same field.
2005-11-05 14:50:01 +00:00
hvlad
15ac3a9f47 Fixed SF #223060
Slow processing of GREATER-THEN operator
2005-10-27 21:52:17 +00:00
robocop
132eedb7a6 Misc. 2005-08-12 08:05:53 +00:00
arnobrinkman
c3f9c5bebc Some more cost based calculation. Fine-tunning will follow 2005-08-08 22:17:40 +00:00
alexpeshkoff
5729790ed6 1. Applied class MetaName
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
dimitr
c01b84565a Tuned reduce factors again. 2005-04-23 12:16:11 +00:00
dimitr
4410fb9f97 1) Fixed wrong index usage for nested loop joins (indexed relationship must be a requirement).
2) Better optimizaton for tables with zero selectivities.
3) Fixed wrong choice of index in the case of the same selectivity and number of indices.
4) Fixed wrong total selectivity calculated for compound non-equality comparisons.
5) Some constants tuning based on two weeks of the extreme testing.
Subject of Arno's review, although all my tests show much better results without any regressions.
2005-04-15 14:54:59 +00:00
arnobrinkman
bb3560eb92 cosmetic changes 2005-02-17 00:17:05 +00:00
robocop
5a951268ae Don't know if gcc is going to accept the const member functions. There's a MemoryPool in the middle. 2005-02-14 06:05:57 +00:00
arnobrinkman
6f7813bf28 Remove some temp-code that was still left 2005-02-12 17:06:12 +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