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

221 Commits

Author SHA1 Message Date
dimitr
c1cab92cab 1) Reworked error reporting
2) Allowed positioned updates for explicit cursors
3) Fixed some possible server crashes
2004-11-17 14:50:33 +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
robocop
5a33aeef91 Misc: extra semicolons do not help. :-) 2004-11-07 10:38:13 +00:00
arnobrinkman
4d2a4f6925 bugfix: still were some ambiguous queries possible.
fe: select rdb$database.rdb$relation_id from rdb$database, rdb$database
2004-11-02 23:07:09 +00:00
dimitr
42c929cfb1 Ported UPDATE/DELETE extentions from Yaffil. 2004-10-27 09:33:08 +00:00
dimitr
cd413c9b8a 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 18:54:54 +00:00
dimitr
a9772bd861 Restored the old code layout, as suggested by Claudio. 2004-10-14 16:35:13 +00:00
dimitr
a1bbad7ccf The entire RSE handling in the parser is slightly rewritten. New join syntax is introduced.
Notes:
1) Some features are disabled (via isc_wish_list) yet due to their incomplete implementation.
2) The parser may become unstable or cause regressions. It will be fixed ASAP.
2004-10-13 18:37:53 +00:00
robocop
a8da598248 Redundant casts. 2004-10-08 11:08:42 +00:00
robocop
ed17cfafbf Style:
if<space>(
for<space>(
switch<space>(
while<space>(
2004-10-04 08:15:00 +00:00
robocop
840bf14b36 If we are using namespace fb_utils, it doesn't make sense to prefix functions in it with fb_ again. Mechanical replacement made one by one (no bulk automatic changes). 2004-09-26 01:49:52 +00:00
dimitr
e58ba55a55 Solved issues with literal NULLs in the CASE-based functions.
To be reviewed by Arno.
2004-09-05 07:23:42 +00:00
dimitr
f45dc04f6a Allowed EXTRACT(<part> FROM NULL) to return NULL of SMALLINT/INT (depending on <part>) datatype. 2004-09-04 18:43:11 +00:00
dimitr
cf89467735 Let's describe literal NULLs correctly in expressions. 2004-09-04 18:24:12 +00:00
arnobrinkman
ce97981b91 Fix unneeded error-message with simple CASE and NULL (NULL as text in SQL)
CASE NULL WHEN NULL THEN 1 END
2004-08-22 00:53:04 +00:00
skidder
a294b74cb8 Fix one more possible random crash noted by Valgrind. This particular problem is old and happens when UNION DSQL construct is used. Fix is the result of consultations with Arno Brinkman 2004-08-18 18:33:21 +00:00
alexpeshkoff
31039a254e next step preparing to allocate auto objects memory from appropriate pool 2004-08-16 12:28:43 +00:00
dimitr
d6151c2d8f Fixed minor issue. 2004-08-01 18:01:54 +00:00
skidder
5494b34caa size_t is more correct type for container sizes and indices 2004-07-16 23:06:31 +00:00
arnobrinkman
8cde3d2aee 1) Fix FB2 problem with union-auto-cast and losing field-name as column-name
2) Fix FB2 problem with WITH CHECK OPTION
2004-06-29 22:15:10 +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
robocop
5b282ef4b5 Misc: keep comment in sync with code 2004-05-29 04:36:09 +00:00
alexpeshkoff
9a34ce553c make bool (isEmpty/hasData) checks for string and stack safe 2004-05-27 16:26:52 +00:00
skidder
ed7234e65e Fix problem with UDF argument mapping to parameters reported by Torsten Grundke 2004-05-24 12:09:12 +00:00
brodsom
06f7148859 -Replace *_thread_data macros with inline functions 2004-05-22 14:23:10 +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
b30a0b8799 Macro cleaning 2004-05-12 00:02:37 +00:00
robocop
802f244ec1 Misc changes 2004-05-09 05:48:33 +00:00
skidder
e9f8ef102e Fixes needed to make GCC 3.4 happy 2004-05-03 04:25:06 +00:00
skidder
43cb0d1ce4 Y-Valve handle translation layer 2004-05-02 23:06:37 +00:00
brodsom
e0854daa99 Removing ib_stdio.h 2004-04-28 22:00:03 +00:00
alexpeshkoff
e362fdbef3 fixed number problems after lls to Stack conversion 2004-04-21 14:48:23 +00:00
alexpeshkoff
045e9dc8ec 1. removed any mentions of blk_pool() from engine (and method itself)
2. replaced 'struct lls' with 'template Stack'
2004-04-18 14:22:27 +00:00
arnobrinkman
fe1e74c504 Fix wrong mapping for Count(*) in having clause when used with IN, ANY, SOME, ALL 2004-04-02 23:20:29 +00:00
arnobrinkman
217773ac42 1) Field with alias was also seraching for match in higher context then the first matching context found. Noted by Nickolay
Example (this does fail now with column o.ID unknown):
SELECT * FROM Orders o
WHERE
  EXISTS(SELECT * FROM RDB$DATABASE o WHERE o.ID = 1)
2) Improved derived table support.
  When using derived tables inside sub-selects it should be able to reference to higher contexts.
2004-03-21 01:48:29 +00:00
skidder
e1b6cec486 Allow using PSQL cursors in EXECUTE BLOCK statement 2004-03-15 02:57:07 +00:00
alexpeshkoff
67f1740fea Various cleanup to make engine compile and work after mentioned earlier changes.
Mainly:
1) MemoryPool* => MemoryPool& in arrays' constructors
2) use Firebird::string to keep strings data
2004-03-14 13:40:14 +00:00
robocop
e6187cecd2 Cleanup
Some bug fixes
Style
2004-03-07 07:58:55 +00:00
robocop
663e3b16e7 Cleanup 2004-02-02 11:02:12 +00:00
robocop
2b295a9108 General cleanup. Sorry if I missed some occurrence. 2004-01-28 07:50:41 +00:00
skidder
08eee5ebaa Further AMD64 fixes. Given this fixes you may start playing with databases using isql_static. 2004-01-21 07:18:30 +00:00
hvlad
d09206678b Added support for default parameters and EXECUTE BLOCK statement 2004-01-16 10:43:21 +00:00
robocop
b441cd9aef Cleanup 2004-01-13 09:52:19 +00:00
arnobrinkman
1cbc04f4cb Fix check constraint bug caused by my previously commit 2004-01-10 18:04:40 +00:00
arnobrinkman
0fb9764dcc Change ambiguity check for proper handling of sub-queries and non-aliassed (derived)tables.
This doesn't work anymore :
"select table.field from table t"

But now this does work correctly :
"select * from table t join table on (table.ID = t.ID)"
2004-01-09 02:23:46 +00:00
robocop
16cbc204df Cleanup 2003-12-31 05:36:12 +00:00
robocop
9fafc348bf const correctness
vars in scope
minimal interface cleanup
small bug fixes
2003-11-28 06:48:34 +00:00
robocop
a94dbd85fd const correctness and other minor items 2003-11-18 07:58:35 +00:00
brodsom
c5253ae8a5 -Replace gds__ constants with isc_ contants
-Replace codes.h with iberror.h (or remove)
-Move gds__vax_integer and gds__event_block* to alt.cpp and isc_ to gds.cpp
-Use ISC_QUAD internally
-Use isc_vax_integer internally
2003-11-11 12:19:20 +00:00
robocop
f55c6f6f8c const correctness and cleanup 2003-11-10 09:16:38 +00:00
brodsom
43683ea52b Removing gdsold.h 2003-11-07 23:27:24 +00:00
dimitr
270dcf6aa0 Added ROWS clause. FIRST/SKIP remains allowed in unions, although I still think it doesn't have much sense. 2003-11-07 14:10:16 +00:00
brodsom
146b6f2001 Extern function cleaning 2003-11-07 13:25:53 +00:00
robocop
35396625f5 const correctness
function signatures
variables in local scope
BOOLEAN -> bool
TEXT[32] as SqlIdentifier for DYN
Stop random garbage in firebird.msg's bytes 8 to 11
some cleanup
2003-11-05 09:02:33 +00:00
brodsom
ff070a16a8 Replacing assert with fb_assert 2003-11-03 23:59:24 +00:00
dimitr
08a9f40b52 1. Reworked cursor management
2. Added explicit cursor statements
3. Slightly reworked LEAVE code
4. Lots of cleanup
2003-11-02 12:28:30 +00:00
robocop
cda707bd36 const correctness and other related changes 2003-11-01 10:26:43 +00:00
brodsom
938e66eb2f Macro cleaning 2003-10-14 22:22:32 +00:00
dimitr
adccd3d8ce Fixed server crash with explicit plans used in subqueries, when outer aggregation is performed. 2003-10-13 12:56:44 +00:00
robocop
f2a738de1b const correctness, vars in scope, etc. 2003-10-05 06:37:26 +00:00
brodsom
db312dfa0e Macro cleaning
extern cleaning
DLL_EXPORT cleaning
2003-10-03 02:00:40 +00:00
brodsom
c0485b7c67 Macro cleaning 2003-10-01 18:11:23 +00:00
aafemt
b5994fabad sym -> dsql_sym + some 'struct' cleanup 2003-10-01 10:58:07 +00:00
robocop
c931a674c2 Cleanup.
Hopefully harmless
It should fix the issue introduced with constness in gds__interprete for current applications.
2003-09-29 12:43:14 +00:00
skidder
235db035ce Ok, i'm joining Firebird destruction team with my cleanup:
1. Bring trace DSQL, DYN and BLR trace logging up-to-date
2. Remove redundant CSB pointer dereferences in BLR parser and request compiler
3. Convert RIGHT JOIN to LEFT JOIN early during BLR parsing
4. Check BLR syntax for unititalized contexts usage
5. Some type-safety and const-correctness fixes
2003-09-28 21:36:05 +00:00
dimitr
2f8c56b330 Fixed types convertion. 2003-09-28 12:05:10 +00:00
dimitr
f1cde7d613 Slightly reworked my labels implementation. 2003-09-28 11:12:03 +00:00
brodsom
4c9f386bd2 Macro cleaning 2003-09-28 00:36:28 +00:00
skidder
ad60c5b70b Make RIGHT JOIN symmetrical to LEFT JOIN at DSQL layer.
This fixes a couple issues when engine rejected correct RIGHT JOINs
or accepted incorrect and failed subsequentally during query execution
2003-09-21 17:49:16 +00:00
arnobrinkman
71b17588d9 Added ORDER BY support on derived tables. (Suggested by Dmitry Yemanov) 2003-09-15 21:21:40 +00:00
dimitr
f7aa490111 The final part of my little PLAN enhancement. 2003-09-14 15:37:05 +00:00
arnobrinkman
74380ab714 Don't forget unnamed derived tables 2003-09-04 21:40:21 +00:00
brodsom
a4416db52a -Replace BOOLEAN, TRUE and FALSE 2003-09-04 21:26:15 +00:00
brodsom
f51c931f6d Correction 2003-09-04 15:26:53 +00:00
arnobrinkman
4a37161c8d Changed internally derived-table support to better readable/understanding code 2003-09-04 15:02:22 +00:00
brodsom
c4179f6e13 Fix cast warning 2003-09-04 13:45:06 +00:00
arnobrinkman
f691e5d79c Change types that were used as booleans to the real bool type 2003-09-03 23:52:47 +00:00
arnobrinkman
e5574959ad Change BOOLEAN to bool type 2003-09-01 23:22:22 +00:00
brodsom
8624a7c209 -Use NULL instead 0 for null pointers
-Remove unneeded casts
2003-09-01 07:58:04 +00:00
dimitr
eb6acae759 Cleanup variable names. 2003-08-30 16:49:15 +00:00
brodsom
602c201989 -Remove NULL_PTR
-Remove unneeded NULL casts
-Remove (void) function return cast
2003-08-28 13:07:29 +00:00
dimitr
323bae2372 1. MAP renamed to DSQL_MAP
2. Minor cleanup
3. Fixed BREAK/LEAVE code to support FOR EXECUTE STATEMENT loops
4. Added support for loop labels and LEAVE <label> statement
5. Fixed SUBSTRING to support value expressions as its arguments
2003-08-26 07:13:33 +00:00
arnobrinkman
11b4fcf5b7 1) Make COALESCE/CASE output descriptor more SQL-standard.
Exception is that we allow mixing datatypes with (var)char (except blob), because all datatypes are convertable to character-type and because this functionallity was available from 1st day COALESCE is introduced inside Firebird.
2) Fix bug with expressions without fields inside aggregate-functions.
Example :
  SELECT
    (SELECT Count(1) FROM RDB$DATABASE)
  FROM
    RDB$RELATIONS
2003-08-25 23:35:30 +00:00
arnobrinkman
79c10074c0 Already fix COALESCE/CASE output-descriptor behaviour inside HEAD branch to conform with SQL-standard.
FB1.5_RELEASE will follow when error-message is added
2003-08-24 22:15:23 +00:00
arnobrinkman
9cf1f386fa fix bad behaviour with auto-union-cast 2003-08-24 15:22:11 +00:00
arnobrinkman
006070b331 added comment and nested derived table fix 2003-08-24 02:56:53 +00:00
arnobrinkman
c61cbdc5ca fix some derived tables problems 2003-08-24 02:36:46 +00:00
arnobrinkman
9b4b90d606 bugfix nested derived tables 2003-08-19 23:56:28 +00:00
arnobrinkman
05d343bda8 Oops missed something 2003-08-19 23:47:07 +00:00
arnobrinkman
506b858567 Added PLAN support for derived tables 2003-08-19 23:34:23 +00:00
arnobrinkman
f5002b3f5b Code clean-up and re-apply comments as suggested by Claudio V. 2003-08-18 21:37:47 +00:00
arnobrinkman
9e82b6d20b Fixed ambiguous columnname problems with derived tables.
Added support for unnamed derived tables.
2003-08-16 00:36:54 +00:00
arnobrinkman
0d203a2c36 derived table support 2003-08-15 00:02:18 +00:00
arnobrinkman
77d9804ed0 Support all expressions directly in GROUP BY clause 2003-08-10 15:19:43 +00:00
arnobrinkman
f81b831315 2nd RC4 bugfix, but much better tracking of supported nested aggregates. 2003-07-29 00:29:17 +00:00
arnobrinkman
0df22b0b31 bugfix RC4: a higher context was supported with nested aggregates, but this isn't possible.
Only a lower context is possible with nested aggregates.
2003-07-28 19:22:56 +00:00
skidder
905670f5f9 Separate DSQL cursors management and explicit locks as suggested by Ivan Prenosil 2003-07-11 22:36:05 +00:00
skidder
e9d8645824 Forbid pessimistic locks in queries with DISTINCT clause 2003-06-30 14:31:00 +00:00