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

108 Commits

Author SHA1 Message Date
dimitr
937008d479 Fixed a number of bugs related to the lost scale when matching some value to an int64 key. 2006-05-23 09:56:29 +00:00
dimitr
8c66a4883a 1) Fixed wrong ALL results in the ODS11 optimizer.
2) Fixed SF #527681 -- Strange/Inconsistent query results
2006-05-17 19:15:41 +00:00
dimitr
d42818dadc More precise calculation of index cardinalities. 2006-03-07 14:43:39 +00:00
robocop
3389149564 The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
Tenth step: some code was tagged PC_ENGINE but was for SCROLLABLE_CURSORS instead, hence restore it. Also, clean unused data members, obsolete BLR verbs and the like.
2006-02-07 08:08:49 +00:00
dimitr
819c970570 Temporary rolled back one one of my previous fixes due to discovered issues. 2006-01-19 16:53:22 +00:00
dimitr
1293d9fd97 Fixed bug related to expression indices vs. collates, reported by Ivan. 2006-01-15 16:04:39 +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
dimitr
7981fef9be Fixed optimizer. Some adjustments may follow. 2005-12-17 10:37:58 +00:00
arnobrinkman
5a38bd903d Another "workaround" for prepared statements on empty tables.
To be reviewed by Dmitry Yemanov.
2005-12-13 23:19:26 +00:00
hvlad
5160d8a9d4 Use EXE_find_request in optimizer at index expression comparison to avoid AV in case of using index simultaneously in some connections 2005-12-05 22:13:00 +00:00
robocop
84fb43d1c1 Misc. 2005-11-26 09:10:51 +00:00
arnobrinkman
06ffac16d0 Fix explicit PLAN issue with ODS11 optimizer 2005-11-25 12:49:14 +00:00
dimitr
060d5b9ce8 Fixed wrong optimization of join orders. 2005-11-23 14:22:06 +00:00
arnobrinkman
70f23e227f no message 2005-11-19 18:45:11 +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
dimitr
68a2827d2e 1) Commented code that doesn't work properly (until Arno is back).
2) Fixed some optimization issues in the new logic.
3) Small cleanup.
2005-09-08 10:22:59 +00:00
dimitr
6e927365fb Fixed server crash in the optimizer. 2005-08-22 08:34:50 +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
aafemt
b61d8b3c17 Warnings 2005-06-22 05:13:54 +00:00
asfernandes
890494ac7c 1) Fixed SF #1016040 Missing external libraries causes engine exception
2) Use better error messages
2005-06-14 03:16:54 +00:00
asfernandes
559ce29c51 1) Replace length_ to strlen as noted by Claudio and Dmitry
2) Change USHORT to ULONG in intl.cpp
2005-06-06 18:14:10 +00:00
robocop
b8d1f00f94 - Corrections and changes to Adriano's commit, subject to his inspection.
- Solved an endless loop with trim and zero-length trim characters, etc.
- Some places are signaled with FB_COMPILER_MESSAGE for prompt attention.
2005-06-06 08:30:03 +00:00
asfernandes
ad1a65f798 Apply forgotten opt.cpp changes in Optimizer.cpp 2005-06-03 01:25:47 +00:00
asfernandes
59213efe7e Merge INTL branch into HEAD 2005-05-27 22:45:31 +00:00
arnobrinkman
b81de1aca4 more realistic cost value for unique retrieval 2005-05-23 23:19:43 +00:00
dimitr
8f13835656 1. Fixed bug with selectivity of non-equality comparisons.
2. A bit changed the invertions selection code to help in both MERGE and JOIN paths.
2005-05-18 14:43:36 +00:00
dimitr
0f9e349f19 Fixed a small OR handling bug. 2005-05-15 12:44:07 +00:00
alexpeshkoff
5729790ed6 1. Applied class MetaName
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
hvlad
a3e64959da Correction. Thanks to Claudio 2005-05-12 13:51:43 +00:00
hvlad
f1d576feb4 Fixed unregistered bug - "index key too big" when creating descending index 2005-05-07 19:45:57 +00:00
dimitr
c01b84565a Tuned reduce factors again. 2005-04-23 12:16:11 +00:00
dimitr
79f50250ff Third attempt to apply reduced selectivity properly. 2005-04-16 17:28:45 +00:00
dimitr
2045d89a76 Code simplification and some style corrections. 2005-04-16 16:57:06 +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
dimitr
fde48e9530 Moved page-level code to DPM. 2005-03-29 09:43:31 +00:00
dimitr
eaf99a7a0e Second attempt to fix "divide by zero" issues in the optimizer. 2005-03-29 09:07:51 +00:00
dimitr
75d6a7c5a0 Oops. 2005-03-28 15:29:38 +00:00
dimitr
706a1b925d Corrected previous commit + ODS11 branch. 2005-03-28 15:24:18 +00:00
dimitr
f5bb311b4b Fixed "wrong page type" bugcheck. 2005-03-25 07:54:32 +00:00
arnobrinkman
2955e5e79a Fix bug #1169728 with explicit navigational PLAN no comparisons in the WHERE clause were matched against the navigational index 2005-03-24 21:49: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
aafemt
2f6d857bc9 There is no need for MSVC hacks if MSVC is not used 2005-03-10 10:27:17 +00:00
arnobrinkman
cd11c3a123 fix divide by zero issues and add some comments 2005-03-07 22:59:13 +00:00
dimitr
78617a7154 Fixed more issues with explicit plans. 2005-02-22 05:51:03 +00:00
robocop
854da4e241 Misc. 2005-02-21 06:01:01 +00:00
arnobrinkman
bb3560eb92 cosmetic changes 2005-02-17 00:17:05 +00:00
dimitr
e74888f7fc Minor stuff. 2005-02-15 11:52:52 +00:00
fsg
9b7fcb5fa0 Fix Claudio's fix.
FSG
2005-02-15 10:03:53 +00:00
robocop
59b49cab6e Temporary fix for problems reported by Alex and Frank.
Since this is Arno's new file, I didn't want to touch more.
Folks may prefer to use the ugly MIN/MAX macros (which I abhor) instead of the template versions in xutility, but I digress.
2005-02-15 06:39:53 +00:00
arnobrinkman
9ae0b6d273 simplify code and some cosmetic changes 2005-02-14 18:51:16 +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