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

223 Commits

Author SHA1 Message Date
dimitr
7f90a395c4 Fixed CORE-4498: FB 3.0 crashes when getting an explained plan for a DBKEY based retrieval. 2014-07-24 19:37:58 +00:00
skidder
7c743fc291 Fix build warnings 2014-07-17 18:48:46 +00:00
robocop
66af445e2e Misc. 2014-03-22 20:51:24 +00:00
dimitr
ef040723f7 This should fix the regression reported in fb-devel. 2014-03-21 18:57:41 +00:00
dimitr
f9c9257fc9 Totally misc. 2014-03-08 07:26:08 +00:00
dimitr
bd410d08aa Fixed refactoring errors that caused some optimizer regressions. Also, simplified code a little. 2014-02-09 15:58:33 +00:00
dimitr
994b04ea98 Fixed the assertion. 2014-02-06 09:52:16 +00:00
dimitr
39574ba899 Front-ported my recent commit re. possibly slow restore. 2014-01-26 15:27:15 +00:00
dimitr
3ee2025161 Fixed CORE-4118: Expression index may be not used for derived fields or view fields. 2014-01-06 09:24:46 +00:00
asfernandes
0ec5daac05 Misc. 2014-01-06 00:51:37 +00:00
dimitr
15113ae2dd Resolved CORE-1482: Make optimizer to consider ORDER BY optimization when making decision about join order.
Also, improved (hopefully) cost calculation for navigational retrievals.
2014-01-05 19:40:07 +00:00
dimitr
a5cde2bbb4 Correction for CORE-1550: Unnecessary index scan happens when the same index is mapped to both WHERE and ORDER BY clauses.
Also resolved CORE-1846: Allow index walk (ORDER plan) when there's a composite index {A, B} and the query looks like WHERE A = ? ORDER BY B.
2013-11-28 17:26:54 +00:00
dimitr
74fbaf5ec1 Another solution for CORE-1550: Unnecessary index scan happens when the same index is mapped to both WHERE and ORDER BY clauses. It's intended to fix the reported issues.
Also resolved CORE-4285: Choose the best matching index for navigation.
2013-11-28 09:12:02 +00:00
alexpeshkoff
d6297bebd4 Fixed some gcc warnings 2013-11-19 13:19:11 +00:00
dimitr
8ee2b22263 Fixed the optimization improvement accidentally broken by a recent commit. 2013-07-29 06:56:44 +00:00
dimitr
d11d3be507 Sync'ed with v2.5 and fixed wrong stream comparison checks. 2013-07-07 16:11:28 +00:00
dimitr
6961e4066d Fixed the assertion, thanks to Adriano. 2013-07-07 07:50:44 +00:00
dimitr
fec38d76b2 Slightly refactored the optimizer regarding navigational walks. 2013-06-30 17:33:02 +00:00
dimitr
a1d9ca6726 A few additional adjustments for CORE-1295: Bad optimization of queries with DB_KEY. 2012-11-27 17:36:13 +00:00
dimitr
b07ef45ae6 A few additional adjustments for CORE-1295: Bad optimization of queries with DB_KEY. 2012-11-27 17:22:42 +00:00
alexpeshkoff
2a01e4bcf9 Implemented CORE-3861: Make it possible to encrypt database
Also some cleanups, the most important are:                                                                                                                   
- meaningful ctor on Jrd::Lock, helping to avoid code dup                                                                                                     
- avoid unneeded h-file dependencies, making boot build engine dependent
2012-05-31 16:53:42 +00:00
robocop
70d5ebdfdf - Got rid of the fixed array that kept the stream count in the first element and 255 streams after it.
- Changed streams from UCHAR to ULONG as Dmitry wanted
- Got rid of some redundant flags to indicate BLR level
- Misc changes (for example, converted to test for DBB_read_only in Database to a function)
- BLR v6 is left commented (waiting for a better solution to appear, if any exists)
- This change is not going to raise the engine limits until a solution is found to express more than 255 streams in BLR.
2012-04-12 09:02:13 +00:00
asfernandes
a0194aeaf3 Simplificate CastNode. There is no need for a format there. 2012-03-17 16:06:05 +00:00
alexpeshkoff
4e795f4047 Include platform definitions file common.h in firebird.h. Use OS-specific ThreadId instead artificial FB_THREAD_ID, avoiding unneeded casts in the code. This should fix BSD and MAC ports. 2012-03-01 08:55:43 +00:00
asfernandes
a62c4b17d3 Fixed CORE-2457 - UNICODE_CI internal gds software consistency check. 2012-01-24 00:16:50 +00:00
asfernandes
42850d55b8 Misc. 2011-07-16 18:49:28 +00:00
dimitr
55b37f2648 Methinks this is a more correct logic than the one committed yesterday. Also, fixed the stream comparison for views. 2011-07-14 11:54:10 +00:00
asfernandes
03ce334e2b Misc 2011-04-04 13:37:47 +00:00
robocop
82403a5621 Misc, style, etc. 2011-04-02 04:45:26 +00:00
dimitr
82b595ae7e Misc adjustments. 2011-03-10 08:13:02 +00:00
dimitr
d97e9492a9 Fixed the regression I introduced recently. Temporary solution, to be reworked soon. 2011-02-26 09:02:19 +00:00
asfernandes
92fc79f8a9 Correction. 2011-02-22 15:29:21 +00:00
dimitr
af76dc8de8 Better solution for CORE-3355, as suggested by Vlad. 2011-02-22 12:43:14 +00:00
dimitr
b0e3c9f94d Fixed CORE-3355: Wrong comparison of DATE and TIMESTAMP if index is used. 2011-02-21 11:18:29 +00:00
dimitr
993788f9bc Misc optimizer tuning. 2011-02-21 10:09:30 +00:00
asfernandes
c916c09e42 Refactored out OPT_expression_equal while fixing checking of sameAs involving CASTs. Problem saw by Dmitry. 2011-02-12 18:11:43 +00:00
asfernandes
c7f7a763d1 Avoid casts. 2011-02-12 17:41:49 +00:00
dimitr
4d2f09c8f0 Cleaned up the unused (since FB2) parameter. 2011-02-12 14:13:40 +00:00
dimitr
9bd051b3e7 Refactored expression equality to make it independent from the stream being optimized. 2011-02-12 14:01:36 +00:00
dimitr
bb1f7ad9a6 Implement CORE-3076: Better performance for (table.field = :param or :param = -1) in where clause. 2011-02-07 17:54:24 +00:00
dimitr
6e6d341d4f Front ported CORE-3312: Sub-optimal join plan when the slave table depends on the master one via the OR predicate. 2011-01-29 11:34:25 +00:00
dimitr
46ef6561a4 Misc. 2011-01-16 08:42:42 +00:00
asfernandes
c9ec26c0c3 Feature CORE-726 - Boolean data type 2010-12-18 02:17:06 +00:00
asfernandes
a3064848d6 Make ExprNodes and RecordSourceNodes reference others directly instead of via jrd_nod.
Store ValueExprNodes instead of jrd_nod in the metadata cache.
Make RecordSourceNode child of ExprNode as they share most operations.
Get rid of the JRD visitors in favor of direct calls.
Convert assignments statement lists created inside expressions to separate source and targets ValuesExprNodes.
2010-11-21 03:47:29 +00:00
asfernandes
4dea3a42a1 Remove dependency of jrd_nod in ExprNode 2010-11-14 22:31:42 +00:00
asfernandes
3eb252ec5f Refactored DSQL nodes: nod_derived_field, nod_map, nod_dbkey and nod_rec_version.
Refactored JRD nodes: blr_field (JRD side only), blr_dbkey, blr_record_version and blr_stmt_expr.
2010-11-14 17:25:48 +00:00
asfernandes
5ee982afb9 Refactor blr_derived_expr 2010-11-07 22:12:14 +00:00
asfernandes
1d702dae81 Refactor blr_via, blr_from, blr_maximum, blr_minimum, blr_count, blr_average and blr_total 2010-11-07 02:18:58 +00:00
asfernandes
e65fd8fea8 1) Refactor CAST.
2) Fixed CORE-3204 - Constraint violation error of CAST is not raised inside views
2010-11-01 23:57:31 +00:00
asfernandes
3317eeeebc Refactor literal values. 2010-10-24 00:26:00 +00:00