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

198 Commits

Author SHA1 Message Date
dimitr
b096a2593d CONST -> const 2003-02-13 10:11:35 +00:00
eku
a7f18b2e31 Removed "register" variables from the source code. It's up to the compiler
to hold variables in CPU registers.
2003-02-10 13:28:35 +00:00
arnobrinkman
52a7ba0d51 bugfix: a simple LEFT JOIN on a VIEW with only a ON clause didn't use an index even if it was possible.
SF BUG # [ 508594 ]
2003-02-01 00:08:18 +00:00
arnobrinkman
fcb77779fa More and better optimizations with "complex" JOIN queries (LEFT JOIN, views, sp etc...).
bugfix: An SORT can't be generated when there are already RSBs on the stack, because this will lead to strange values. See also SF BUG # [ 221921 ].
2003-01-22 00:17:27 +00:00
arnobrinkman
d4624c794e bugfix: SF BUG # [ 221921 ] ORDER BY has no effect 2003-01-12 22:33:43 +00:00
arnobrinkman
a09fc594fb Reworked the last bugfix by dmitry 2003-01-12 13:55:35 +00:00
dimitr
ab4b67b24c 1. More proper implementation of my last bugfix.
2. Fixed known problems with explicit plans.
2003-01-11 19:04:36 +00:00
dimitr
2b0913546f Fix for the optimizer issue with compound indices. Leave it up to Arno to decide whether this fix is correct or not. 2003-01-11 18:02:17 +00:00
arnobrinkman
c83b1db4a7 more cosmetic changes to opt.cpp
bugfix: When UNIONS where used in a VIEW and that VIEW was used in the where clause inside an sub-select then the engine crashed !!
2002-12-31 00:12:18 +00:00
arnobrinkman
7e2b62528a bugfix: OUTER JOINs and no current record for fetch operation, caused by previous optimizer change 2002-12-28 00:20:45 +00:00
arnobrinkman
aa638632a3 another bugfix Alpha5 "no current record for fetch operation"
Added code so that more index-retrieval can be used.
Cases where an LEFT OUTER JOIN messed-up the optimizer should be much lower.
Example :
SELECT * FROM
  SomeTable t1
  LEFT JOIN AnotherTable t2 ON (t1.PK_Key = t2.FK_Key)
  JOIN AnotherTable t3 ON (t1.PK_Key = t3.FK_Key)

This change fixed also BUG SF #219525.
2002-12-16 00:45:35 +00:00
arnobrinkman
7f67f42a5f bugfix: no index was used for STARTING WITH and IS NULL comparison inside OR structures. 2002-12-04 20:05:04 +00:00
arnobrinkman
fb42c5b975 Cosmetic changes with thanks to Claudio V.
A better/logical change so that the optimizer can use indices in sub-selects and aggregate-statements.
2002-12-04 18:39:14 +00:00
eku
34e9391a97 Use the new macro FB_NELEM to calculate the number of elements in an array. 2002-12-02 09:45:52 +00:00
arnobrinkman
b5f4f72800 1) bugfix another LEFT JOIN and 'no current record for fetch operation'.
2) Let sub-selects also use indices when there parent is a stored procedure.
2002-11-23 23:36:22 +00:00
dimitr
3d55c724ae no message 2002-11-23 17:59:11 +00:00
arnobrinkman
5b4b3ef482 bugfix Optimizer LEFT OUTER JOIN and error : no current record for fetch operation 2002-11-21 23:02:54 +00:00
hippoman
7387e6fb70 changed nod,tra,req,trg,rel,ctx,prc struct names to local module names 2002-11-20 23:18:16 +00:00
arnobrinkman
e1f9fefb15 More optimizer improvement of handle AND nodes inside an OR node. 2002-11-18 21:31:01 +00:00
skidder
53f625e077 New explicit pessimistic locks implementation. It is logically consistent in all TPB modes and should be very fast. 2002-11-18 20:27:24 +00:00
hippoman
4a76e9e4fe change TRA,REQ,TRG,REL,CTX or PRC, to module local names. 2002-11-17 00:13:59 +00:00
skidder
5a712a4fee Fixed restore problem for databases having views that use procedures AND are used by procedures. General procedure metadata related cleanup. 2002-11-16 18:48:01 +00:00
hippoman
25c1dbd367 * Changed NOD struct name to JRD_NOD. 2002-11-11 19:42:47 +00:00
arnobrinkman
2600ac844b Update for explicit PLAN support and little cosmetic changes. 2002-11-09 01:42:10 +00:00
dimitr
8d62d05d5c Yep, I've joined with Arno in his struggle with the optimizer ;-) 2002-11-08 16:23:20 +00:00
arnobrinkman
65251221cd no message 2002-11-06 19:23:48 +00:00
arnobrinkman
b652434669 New changes to the optimizer. Better backward compatibility with forced PLAN's 2002-11-06 03:07:50 +00:00
arnobrinkman
d3ed97fa75 Give ASC a higher priority against same selectivity indices. 2002-11-04 21:57:39 +00:00
arnobrinkman
1d84ffbfd3 Added better support for using indices with "OR".
Pick the best available compound index from all "AND" nodes.
2002-11-02 03:20:52 +00:00
seanleyne
0b82f4aa07 Removed obsolete "Netware" port 2002-10-30 06:40:58 +00:00
tamlin
fb3cfa85da const correctness etc 2002-10-29 16:27:47 +00:00
arnobrinkman
3b053bc9c3 AB: Added support for detecting use of index with sub-selects in aggregate selects 2002-10-26 21:16:39 +00:00
skidder
6d499910f9 Move nulls first/last code out of SCROLLABLE_CURSORS ifdef 2002-10-12 20:27:26 +00:00
skidder
b9b600d7fd Fixed problem which caused complex outer joins to produce wrong results 2002-10-12 19:46:29 +00:00
skidder
b4cb6b07ff Fixed problem which caused complex outer joins to produce wrong results 2002-10-12 19:39:19 +00:00
skidder
6d64014e57 Changed engine to store source file name/line number information for EVERY allocation when DEBUG_GDS_ALLOC is defined. All allocation should be done using FB_NEW or FB_NEW_RPT macros instead of keyword new since now 2002-09-25 17:12:16 +00:00
eku
4eaf8c0914 Autoconf cleanup:
o since the define 'VAX' was only used to tell that the byte order is
   LITTLE_ENDIAN (it have nothing else to do with the VAX computer family)
   it can safely replaced with '!WORDS_BIGENDIAN'.
 o check if pointers are 64 bit
 o replaced HAS_64BIT_POINTERS with 'SIZEOF_VOID_P == 8'
2002-09-17 05:58:40 +00:00
skidder
f1b4c04d42 Added nulls first/last support 2002-09-10 18:34:00 +00:00
skywalker
d89b1a0842 Changes to make fb2 compile super version for linux 2002-07-29 15:37:59 +00:00
skywalker
82d8017317 Merged change from fb1. 2002-07-01 16:59:09 +00:00
dimitr
67fd70aa1d Fixed bug with uninitialized local variables. Thanks to Oleg LOA. 2002-06-20 10:10:28 +00:00
dimitr
c5f50577cb 1. New system variables - CONNECTION_ID and TRANSACTION_ID
2. Universal triggers
2002-06-14 12:09:37 +00:00
bellardo
895801a449 Changes to bring intl support to FB2. 2002-06-04 19:56:16 +00:00
bellardo
773836f1b1 Finished removal of setjmp/longjmp code, and fixed a handful of FB1->FB2
porting bugs.
2002-04-04 07:10:40 +00:00
skywalker
a887af3646 Changes to make it compile on linux.
and work through a few issues.
2002-01-04 11:34:22 +00:00
tamlin
80f7fb6dd4 New C++ memory pool 2001-12-24 02:51:06 +00:00
skywalker
365a7fe19c Changes to compile fb2 under autoconf includes some structural changes 2001-07-29 17:42:23 +00:00
tamlin
9a776a604e First steps towards a C++ conversion. 2001-05-23 13:26:42 +00:00