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

505 Commits

Author SHA1 Message Date
asfernandes
5063bafc36 Misc 2009-07-15 03:13:16 +00:00
dimitr
9b90f012ca Fixed CORE-1971: Set the fixed and documented check order for WHERE clause and other conditional sentences.
The order of evaluation is now always from left to right.
2009-07-12 10:16:15 +00:00
alexpeshkoff
fe4aec8a12 Fixed CORE-2550: Bus error when working with DB_KEY on bigendian machines. Introduced dtype_dbkey inside engine. 2009-07-09 14:04:42 +00:00
asfernandes
8a94ecf6bc Misc 2009-06-29 02:06:00 +00:00
uid32383
e704280a59 Style. 2009-06-28 10:29:36 +00:00
robocop
f10e1b72eb Style. 2009-06-27 06:23:36 +00:00
asfernandes
91c2a6d464 Misc: replace MAX_UCHAR by MAX_STREAMS 2009-06-25 02:06:14 +00:00
robocop
c202492a2e Style. 2009-06-21 10:34:33 +00:00
robocop
ab2141b5e6 Misc. 2009-06-19 13:00:53 +00:00
asfernandes
a263449fa2 Fix build 2009-06-18 23:24:14 +00:00
robocop
6bfacad413 CORE-2509. Took the opportunity to fix several data types. 2009-06-18 12:07:07 +00:00
robocop
66b1227b22 Unused params, some formatting, cleanup. 2009-05-01 17:21:36 +00:00
asfernandes
1c20adb8fc Misc 2009-04-29 01:52:49 +00:00
robocop
2d7cb94844 Unused params
Some BLR checks
2009-04-28 13:08:04 +00:00
asfernandes
f6f364da49 Trim trailling spaces 2009-04-04 16:39:31 +00:00
alexpeshkoff
77498cac9b Fixed some warnings 2009-04-03 10:49:07 +00:00
robocop
a730fbf074 Get rid of more typedefs. 2009-04-03 10:07:55 +00:00
asfernandes
628eb5b557 Misc 2009-02-09 01:43:49 +00:00
hvlad
0950f997fb Fixed bug CORE-2311 : Possible memory leak in WITH RECURSIVE query 2009-02-08 15:50:12 +00:00
robocop
66dc4ddad9 Make code easier to read. 2009-02-08 09:39:59 +00:00
asfernandes
1105286dee Misc 2009-02-07 15:20:34 +00:00
asfernandes
636b304d8e Fix the problem reported by Vlad (another case of CORE-2237) 2009-02-05 01:19:20 +00:00
robocop
3689f15321 Style. 2009-01-20 08:33:59 +00:00
robocop
582cdf185b Style. 2009-01-14 09:19:00 +00:00
robocop
6406e45337 Shut up compiler warnings (unreferenced vars, uninitialized vars, compile-time conditional code, etc.) 2009-01-02 06:36:12 +00:00
asfernandes
5c97a235e3 Misc 2008-12-24 00:32:49 +00:00
robocop
2fadc0e456 Style. 2008-12-22 09:00:05 +00:00
robocop
9161be9116 Style. 2008-12-18 11:29:10 +00:00
asfernandes
4769d47fa3 Fixed CORE-2237 - Assertion at src\jrd\intl.cpp 569 2008-12-13 18:25:45 +00:00
asfernandes
8fbf0e8e8c Remove trailing spaces (.cpp files) 2008-12-05 01:20:14 +00:00
asfernandes
da7386109d Fixed CORE-2215 - GROUP BY concatenation with empty string 2008-11-28 14:59:17 +00:00
asfernandes
c51af68ff9 Misc 2008-11-09 22:42:11 +00:00
asfernandes
720a49c89e Fixed the others two problems of CORE-2176 2008-11-09 17:00:19 +00:00
dimitr
591186dd00 Misc. 2008-09-12 12:23:52 +00:00
dimitr
aad133369c Cleanup. 2008-09-12 08:48:47 +00:00
alexpeshkoff
13a15d4bfe 1. Final fix for CORE-1964 - finished vararg cleanup in jrd.
2. Generic cleanup of error reporting functions all around engine.
2008-08-27 12:20:47 +00:00
asfernandes
84da641b55 Fixed CORE-2034 - Problems related to CORE-1254 (Problem with DISTINCT and insensitive collations) re. UNICODE insensitive collations with DISTINCT or GROUP BY. 2008-08-08 01:44:42 +00:00
asfernandes
628cccf32e Misc 2008-07-16 13:55:41 +00:00
dimitr
99a17e984b Fixed the main problem of CORE-1971: inconsistency in the evaluation order between Windows and POSIX.
Now the order is always right-to-left. I would prefer to see it reversed, but that's for another day.
2008-07-09 11:46:44 +00:00
alexpeshkoff
a2e416210b Fixed CORE-1964: Use of 0 instead of isc_arg_end to terminate list of ERR_post's (and cousines) arguments is invalid.
Also cleaned up use of gds__log() in a few places.
2008-06-26 09:47:59 +00:00
robocop
5777ff76fa More VC6 cleanup. 2008-05-14 13:11:41 +00:00
hvlad
5f8774827c Better and simpler fix for bug CORE-1884. 2008-05-06 12:15:09 +00:00
dimitr
e0c6d0e13d Fixed CORE-1812. 2008-05-06 09:40:22 +00:00
hvlad
f672d51a14 Avoid manipulations with TDBB_use_db_page_space flag in jrd_rel::getPagesInternal 2008-04-02 13:55:10 +00:00
asfernandes
cacb90b74c Fixed CORE-1795 - Server crashes on SQL script 2008-03-19 15:59:25 +00:00
dimitr
de7d3f7e95 Optimizer adjustments for the new built-in functions. 2008-02-20 09:24:31 +00:00
robocop
10d74a7642 Style. 2008-02-13 12:57:04 +00:00
asfernandes
46c115411a Fixed CORE-1254 - Problem with DISTINCT and insensitive collations 2008-02-09 15:19:21 +00:00
asfernandes
6dd361603f Misc 2008-02-04 17:01:36 +00:00
robocop
4c3381ef6b Style, constness and macro cleanup. 2008-02-03 10:41:44 +00:00
dimitr
fec2f3e155 Restored the legacy logic for blob sorting, thus rolling back changes for CORE-859 and CORE-1530. 2008-01-26 18:06:42 +00:00
alexpeshkoff
39896cb955 Fixed CORE-1671: atexit() calls in client libraries cause segfaults
and CORE-1079: Every attach of fbclient/fbembed library leaks 64KB of memory

To do it:
- created new template GlobalPtr, controlling access to destructors of global objects.
- applied it to global objects.

Also some related cleanup.
2008-01-23 15:52:40 +00:00
asfernandes
05b90fa684 Eliminate some warnings 2008-01-16 14:37:26 +00:00
dimitr
6992f2a638 The merge continued. 2008-01-16 09:41:31 +00:00
alexpeshkoff
eea9070f48 Optimized RuntimeStaticstics (and related part of ThreadDb) for performance - some tests run 25faster 2007-12-03 15:46:39 +00:00
robocop
2d2b8cf718 Misc. 2007-11-17 10:18:10 +00:00
paulbeach
7602a29b94 HPUX Port 2007-11-12 14:26:44 +00:00
dimitr
4d7d563e6e Fixed CORE-1533. 2007-10-29 17:57:24 +00:00
alexpeshkoff
6a844b2041 Avoid unneeded cast 2007-10-02 17:03:53 +00:00
dimitr
33fb126a74 Fixed CORE-1436. 2007-08-31 10:14:09 +00:00
hvlad
671e59e993 Fixed bug CORE-1373 : Incorrect result of recursive CTE query when recursive member's SELECT list contains expression using self-referenced fields 2007-07-21 21:28:56 +00:00
asfernandes
f09ea7782f Transliterate object names from PLANs to the client charset 2007-05-25 14:06:55 +00:00
asfernandes
c97d57013e Fixed CORE-1253 - LIST(DISTINCT) concatenate VARCHAR values as CHAR 2007-05-11 02:07:36 +00:00
dimitr
1b44f36eda Front-ported RISC-specific fixes. 2007-03-09 08:11:10 +00:00
dimitr
7eefa833f8 Adjusted the logic accordingly to the Alex's fix. 2007-03-01 15:08:11 +00:00
alexpeshkoff
86344f06c3 Use faster and more clear method when possible 2007-03-01 13:09:09 +00:00
asfernandes
e544f6fd1e Misc 2007-03-01 00:44:14 +00:00
asfernandes
2d26b3f5f8 Allow BLOBs in EXECUTE STATEMENT and possibly in others unkown cases 2007-02-27 02:36:20 +00:00
dimitr
02035b1860 Fixed CORE-1130. 2007-02-15 07:20:59 +00:00
dimitr
c2392582af Fixed CORE-1029. 2006-11-29 17:48:54 +00:00
dimitr
eecccbbc72 Fixed CORE-1025. 2006-11-28 13:26:24 +00:00
asfernandes
9ca610d9f4 Misc 2006-11-23 00:30:07 +00:00
dimitr
81bbdfd4f2 Attempted to fix CORE-995. 2006-11-21 14:02:29 +00:00
dimitr
e95f81408d Fixed CORE-1005. 2006-11-21 07:47:02 +00:00
asfernandes
1d422a8330 1) Refactor intl_classes.h and intl.cpp
2) Make conversions from CharSet1->UTF16->CharSet2 job of CsConvert class
2006-10-10 19:40:33 +00:00
robocop
db7c21a752 Misc. 2006-09-14 09:40:58 +00:00
asfernandes
87c0e8360d Check limits 2006-09-12 16:31:38 +00:00
dimitr
a4f78f4365 1) Fixed CORE-925
2) Added assertion to EVL to catch other related bugs
3) An attempt to simplify my previous solution
2006-09-12 11:36:18 +00:00
asfernandes
5c26d54f02 1) Fixed CORE-899 - Problems with explicit cursors in unwanted states
2) Make RDB$DB_KEY in outer joins returns NULL when appropriate
2006-09-07 01:55:49 +00:00
arnobrinkman
eaf233717a Fix bug CORE-897 2006-08-31 18:16:58 +00:00
hvlad
b20aa92714 Common table expressions implementation 2006-08-01 20:37:58 +00:00
dimitr
cffe207614 A few fixes for the monitoring tables. 2006-07-23 12:14:59 +00:00
dimitr
a05bc8f15d 1) Fixed CORE-859.
2) I've restored the asserts disabled by Frank in 2000. I really don't see how skd_dtype == 0 can be valid, as the sorter works inproperly in this case and it allows unsupported datatypes to be attempted to sort on.
2006-07-20 11:11:37 +00:00
dimitr
c68587fe66 1. Virtual tables
2. ODS 11.1, procedure type and relation type
2006-07-17 17:44:18 +00:00
dimitr
211645e3dc Getting rid of the old allocator routines. 2006-05-23 10:17:00 +00:00
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
alexpeshkoff
b056a118b5 1. Avoid use of STL
2. Reworked exceptions to make status_exception always hold correct status vector
3. Avoid use of RTTI
2006-05-19 15:17:02 +00:00
dimitr
9d2af66fc0 Fixed bug with explicit plans and dependent vs free streams. 2006-05-19 11:09:44 +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
b0cb5b92cd Misc. 2006-05-13 05:00:21 +00:00
dimitr
bf1e56bff1 Fixed a bugcheck by restoring to the old nod_count processing.
Still clueless why it's done that way.
2006-04-25 12:54:12 +00:00
asfernandes
7e7f4183a3 Misc 2006-04-25 03:48:19 +00:00
dimitr
54d4cc4ddf The core implementation of the LIST function. Unstable yet. 2006-04-24 16:56:58 +00:00
arnobrinkman
782f902948 Fix "no current record .." bug when an undependent stream A is dependent on stream B and B is dependent on stream C.
Stream A was merged with the stream C and only B was correctly joined.
2006-04-22 21:18:19 +00:00
robocop
c5f2284b15 Style. 2006-04-06 08:18:53 +00:00
robocop
e455915e74 Misc. 2006-02-18 23:39:23 +00:00
robocop
044c5841ad Misc. 2006-02-10 03:28:43 +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
robocop
2011950972 The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
Ninth step: while doing cleanup, I discovered some data members that aren't used anymore or that should be inside conditional code. This is the result.
2006-02-03 02:28:58 +00:00
dimitr
bf1562a49a Fixed a bug with NOT ANY/ALL reported by Alex. 2006-02-02 12:56:57 +00:00
robocop
2b99e764e3 The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
Sixth step: remove the places protected by the macro PC_ENGINE. More to come. (I guess all of you who have pending functional changes to post will love this commit. <g>)
2006-02-02 07:32:07 +00:00
robocop
51e1d59ac5 Misc. 2006-01-28 04:12:42 +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
8174f08112 Allowed expression indices to be used for navigation on outer streams. 2006-01-05 17:13:23 +00:00
alexpeshkoff
f4feffe700 fixed some warnings 2005-12-02 16:48:47 +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
hvlad
15ac3a9f47 Fixed SF #223060
Slow processing of GREATER-THEN operator
2005-10-27 21:52:17 +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
b0ab11bc9a Misc. 2005-06-21 01:44:43 +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
59213efe7e Merge INTL branch into HEAD 2005-05-27 22:45:31 +00:00
robocop
3f0b18df85 Misc. 2005-05-16 09:15:31 +00:00
alexpeshkoff
5729790ed6 1. Applied class MetaName
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
robocop
68bb0c4308 Totally misc. 2005-05-12 06:51:33 +00:00
hvlad
f1d576feb4 Fixed unregistered bug - "index key too big" when creating descending index 2005-05-07 19:45:57 +00:00
arnobrinkman
d8764cbdb1 Fix problem with distributing sort to deeper RSE, query example:
SELECT
  RDB$RELATION_NAME
FROM
  (SELECT FIRST 10 * FROM RDB$RELATIONS ORDER BY RDB$RELATION_NAME DESC)
ORDER BY
  RDB$RELATION_NAME
2005-05-04 08:56:14 +00:00
arnobrinkman
b4b0a354ca Fix bug with ORDER BY and DISTINCT on OUTER JOIN where the ORDER BY clause was given to a deeper rse, but shouldn't because the distinct should be applied first.
Reproducable query:
SELECT
  DISTINCT r.rdb$relation_name, r.rdb$relation_id
FROM
  rdb$relations r
  LEFT JOIN rdb$relation_fields f ON (f.rdb$relation_name = r.rdb$relation_name)
ORDER BY
  r.rdb$relation_id
2005-04-21 17:35:44 +00:00
dimitr
44b2667c68 Oops. 2005-03-28 15:39:52 +00:00
dimitr
706a1b925d Corrected previous commit + ODS11 branch. 2005-03-28 15:24:18 +00:00
dimitr
3037a12405 Allowed navigation using an expression index. 2005-03-28 15:07:44 +00:00
dimitr
d629414f0d Minor RSB tree output change. 2005-03-25 08:05:34 +00:00
alexpeshkoff
0e98fe0052 fix gcc warnings 2005-03-20 13:52:51 +00:00
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
alexpeshkoff
31039a254e next step preparing to allocate auto objects memory from appropriate pool 2004-08-16 12:28:43 +00:00
skidder
311d7b4b34 Fix a couple 'invalid read' problems found by Valgrind. Both could cause crashes, one could result in invalid nulls placement. Removed const*const*const stuff in couple places because things like that make code really hard to understand 2004-08-11 05:34:23 +00:00
arnobrinkman
f42e0e4f55 Bugfix with OUTER JOINS
Finally i got them as they should have been
2004-08-07 16:49:00 +00:00
arnobrinkman
f2345109a0 Bugfix: optimizer didn't add boolean-node when it was a OR operator and no index could be used.
This caused unnecessary evaluation of joined rse's to that rse.
2004-07-20 18:55:03 +00:00
arnobrinkman
401fb7d12f 1) Fix starting with and empty string index problem where empty string is passed in parameter. (STARTING WITH ?) ? = ''
2) New index structure ensures that NULLs cannot hold the same key-value as a data value.
3) Ignore NULLs already on scanning index where possible.
2004-07-15 23:01:12 +00:00
skidder
2915fcf547 Somewhat simplify invariant tracking stuff. It is more pessimistic now, but should work more reliably when invariants are modified (see QMDB tests for details) 2004-06-25 22:12:20 +00:00
skidder
5f43cf8683 Report PLANs for selectable procedures in correct order. This is a fix for regression which I introduced a few months ago and it was found by Vlad Horsun 2004-06-23 16:40:19 +00:00
alexpeshkoff
1591a54e5e Thread cleanup:
1. Added macros to declare thread entrypoints
2. THD_mutex_* functions use Firebird::Mutex
3. Thread local storage use fb_tls.h
2004-06-08 13:41:08 +00:00
alexpeshkoff
9a34ce553c make bool (isEmpty/hasData) checks for string and stack safe 2004-05-27 16:26:52 +00:00
alexpeshkoff
2f99a5ebf1 small strings cleanup 2004-05-26 16:12:05 +00:00
brodsom
f4ca41fa3d -Replace *_thread_data macros with inline functions (jrd step 1) 2004-05-22 14:28:54 +00:00
robocop
441817bd82 1.- Misc changes
2.- Style
3.- Recover dsc_ttype in dsc after Blas' cleanup as a synonym for dsc_sub_type in text types
2004-05-21 06:16:17 +00:00
brodsom
68cb86b274 - Remove *_THREAD_DATA definitions from thd.h, are unneeded and conflicts with definitions in providers/services main headers (which need to use undef).
- Use different names for each service/provider *_THREAD_DATA macros.
2004-05-19 18:14:29 +00:00
brodsom
1ffe279896 -Avoid shadow warning 2004-05-12 19:39:17 +00:00
brodsom
b30a0b8799 Macro cleaning 2004-05-12 00:02:37 +00:00
robocop
802f244ec1 Misc changes 2004-05-09 05:48:33 +00:00
brodsom
c8db819ac5 Replace defines with consts 2004-05-07 07:57:46 +00:00
arnobrinkman
8e472b4fc4 Fix bug with slow MERGE
Fix bug with FULL JOIN and IS NULL in where clause.
  SELECT * FROM TableX FULL OUTER JOIN TableY ON (...) WHERE TableY IS NULL
2004-05-06 22:06:56 +00:00
brodsom
60d9d085a0 Macro cleaning 2004-05-03 21:43:56 +00:00
skidder
43cb0d1ce4 Y-Valve handle translation layer 2004-05-02 23:06:37 +00:00
brodsom
5cf9fdfc90 Removing ib_stdio.h 2004-04-28 22:43:34 +00:00
skidder
7e7b6f604c Slightly better fix for the FBTCS problem spotted by Blas 2004-04-28 17:28:33 +00:00
skidder
5f909e21b8 Fix for FBTCS Join 17 testcase 2004-04-28 05:18:27 +00:00
hvlad
2afe197918 Added Stack::iterator::hasMore method. Replaced getCount() and notEmpty() with hasMore() when it's possible 2004-04-23 08:02:52 +00:00
alexpeshkoff
7b27fa55be fixed number problems after lls to Stack conversion 2004-04-21 14:14:36 +00:00