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

1796 Commits

Author SHA1 Message Date
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
brodsom
ab6ba391f2 Change wrong define 2003-02-09 23:31:50 +00:00
brodsom
3a9b561a11 Remove JPN_ defines 2003-02-07 18:46:49 +00:00
arnobrinkman
bd7a1b6bed bugfix: wrong context was used with FieldX IN (sub-select) predicate.
Caused by me by an other bugfix SF BUG # [ 213859 ]
2003-01-30 22:14:02 +00:00
arnobrinkman
9b5c62d89c bugfix: It wasn't possible to use non-aggregate related-fields from a aggregate query inside an sub-query.
Example (this failed) :
SELECT
  Count(T1.F1),
  SUM((SELECT T2.F2 FROM Table2 T2 WHERE T2.F1 = T1.F1))
FROM
  Table1 T1
2003-01-30 13:30:15 +00:00
hippoman
801a2ad538 Some fixes to to DSQL_pretty:
-. Added some missing verbs and mispellings
-. Fixed a bug displaying parameters info.
2003-01-25 01:50:32 +00:00
dimitr
9ba418a493 Disallowed PLAN clause in views until it works. 2003-01-23 09:18:59 +00:00
alexpeshkoff
b8610ddefe Finished y-valve C++ conversion cleanup 2003-01-22 16:37:59 +00:00
skidder
884c38d6c4 Memory manager changes - added memory usage stats, empty extents are now deallocated 2003-01-18 21:45:24 +00:00
dimitr
fd2f852e49 Cleanup. 2003-01-18 19:39:12 +00:00
dimitr
37b87ac7ed Fixed porting bug which caused zero to be returned as bytes-per-character value. 2003-01-17 12:52:04 +00:00
skidder
3622fc966f Fix intermittent bug in aggregate reference tracking 2003-01-17 12:47:19 +00:00
dimitr
801ae673ec Rolled back previous commit. 2003-01-17 12:40:01 +00:00
dimitr
0474fdc4ca Restored compatibility with FB1. Index name is no longer assigned automatically for constraints. 2003-01-17 11:11:02 +00:00
skidder
ba5e11b15c Integrate new memory manager into the engine 2003-01-16 17:47:10 +00:00
dimitr
55ed1b6444 1. Reworked internal info stuff once more.
2. Added DSQL support for parametrized events.
3. Fixed bug with cursors in triggers.
4. Added support for runtime trigger action checks (INSERTING/UPDATING/DELETING).
5. Fixed bug with concatenation and trashed RDB$FIELD_LENGTH.
2003-01-15 12:00:33 +00:00
dimitr
8e838186f5 Reworked internal info stuff. 2003-01-15 11:57:28 +00:00
dimitr
2fb1a59ef4 Remove REQ_SAVEPOINT from allowed requests in EXECUTE STATEMENT. 2003-01-14 13:47:30 +00:00
arnobrinkman
3dcc0600c8 bugfix: SF BUG # [ 213859 ] Subquery connected with 'IN' clause 2003-01-12 20:27:00 +00:00
alexpeshkoff
8f04fd8e3b Cleanup of mixed use of macro FRBRD and struct why_hndl 2003-01-12 18:16:50 +00:00
arnobrinkman
411c18bbf2 bugfix on my latest commits 2003-01-12 16:29:59 +00:00
arnobrinkman
5b8422a178 bugfix on my latest commits 2003-01-12 00:41:28 +00:00
arnobrinkman
1b552b007e Introduce backwards compatibilty within aggregates.
Deepest field inside aggregate determine where an aggregate-context should belong too.
2003-01-11 02:49:13 +00:00
skidder
2975b16cce Allow arbitrary expressions in ORDER-BY clause 2003-01-09 16:50:24 +00:00
arnobrinkman
31eea59b1a bugfix: PLAN wasn't correctly returned. bug probable introduced by c to c++ port. 2002-12-29 22:26:35 +00:00
alexpeshkoff
6adbcc873b Fixed problem with
extern "C" DDL_resolve_intl_type
2002-12-22 11:42:19 +00:00
dimitr
411c994122 Now we understand single-line comments (--) in any position of the SQL statement. 2002-12-19 14:48:22 +00:00
dimitr
8842052537 Prepared parser to allow non-reserved words as valid symbol names. 2002-12-19 13:14:41 +00:00
dimitr
7f71918bc3 no message 2002-12-19 13:08:21 +00:00
dimitr
2861cbf063 no message 2002-12-19 08:57:53 +00:00
dimitr
9dc68b4a7b Fixed bug with BREAK and partially implemented labels and LEAVE statement. 2002-12-18 15:01:50 +00:00
arnobrinkman
d3bfe539d3 fix so that win32/msvc6 builds works again 2002-12-16 23:54:30 +00:00
skidder
9b57d8b649 Several little changes to make engine compilable again on Linux 2002-12-16 21:19:51 +00:00
alexpeshkoff
a83fcfeab9 Sorry for wrong DATABASE directive :-( 2002-12-16 16:25:09 +00:00
alexpeshkoff
90cdfbdaf5 Rename all links to why.cpp handle to struct why_hndl *
Warning! Don't commit parse.cpp and dsql.tab.h, because:
1. I use another YACC version.
2. They must be removed from CVS at all.

Execute STATEMENT also here
2002-12-16 15:38:26 +00:00
arnobrinkman
24fa36302d bugfix previous added code. correct way of retrieving length for
an variable inside SP/Trigger. This was needed for CASE expressions.
2002-12-16 00:48:53 +00:00
arnobrinkman
d8450be335 bugfix: length of text variables inside procs/triggers wasn't copied to descriptor structure. 2002-12-13 02:02:38 +00:00
dimitr
2300540ff8 Fixed serious bug with views I unfortunately introduced in Alpha 5 :-( 2002-12-11 10:09:22 +00:00
dimitr
0523aa4951 Cleanup. 2002-12-11 09:45:59 +00:00
eku
5b8ffd81c2 Removed unused variables. 2002-12-10 11:53:53 +00:00
dimitr
6e51db6e6e 1. Implemented ORDER BY clause in subqueries.
2. Disallowed FIRST/SKIP for views.
3. Allowed zero as valid argument for FIRST.
2002-12-03 18:04:36 +00:00
skidder
c60c29f4c8 Oops. Forgot to enable parameter duplication in parameter bug emulation mode 2002-12-03 13:48:18 +00:00
skidder
5187fa6c44 Added configuration parameter to enable older parameter ordering behavior 2002-12-03 13:37:06 +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
hippoman
9a8f0768b9 Changed struct fld and FLD to local module names 2002-11-30 17:45:02 +00:00
arnobrinkman
97caf1f635 bugfix: allow use of other outer-references in a aggregated sub-select 2002-11-25 20:29:39 +00:00
skidder
2b995ac2ab Make SQLDA parameter mapping consistent with order and number of parameters in source SQL string 2002-11-24 15:22:03 +00:00
arnobrinkman
2ea3a3664a no message 2002-11-24 13:03:51 +00:00
skidder
f13636d29c Fixed nulls first/last and collation handling in "order by" clause of unions 2002-11-22 15:27:59 +00:00
arnobrinkman
b986fe4438 bug : UDF node didn't contain any character set, was always NONE. 2002-11-20 23:48:34 +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
dimitr
776c54bdac Renamed MSG to DSQL_MSG. 2002-11-19 12:35:28 +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
62cf7d7a88 change TRA,REQ,TRG,REL,CTX or PRC, to module local names. 2002-11-17 00:04:19 +00:00
dimitr
5f61e44ddc Global names change:
FBOK=>FB_SUCCESS
FAILURE=>FB_FAILURE
xxx_FBOK=>xxx_SUCCESS
2002-11-14 08:33:08 +00:00
alexpeshkoff
865b39fec1 Fixed bug with exception inside for/while loop in triggers 2002-11-13 15:57:29 +00:00
kkuznetsov
6887f405ab Renaming all occurences of SUCCESS to FBOK 2002-11-13 15:01:21 +00:00
dimitr
470713caa1 no message 2002-11-13 14:47:54 +00:00
alexpeshkoff
e39d470832 Avoid deadlocks:
lock databases_mutex only when THREAD_EXITed
2002-11-12 16:04:01 +00:00
skywalker
166ff6f924 Changes to make some NOD entries now XXX_NOD as per module (assume this
is part of Ignatio's change).
Change to define xdr_hyper when it's available locally.  (The standard
#include file rpc/xdr.h is not included and the definition needs to be
in remote/xdr_proto.h for some reason).
2002-11-12 05:05:01 +00:00
hippoman
c75a6d3019 * Changed NOD struct name to DSQL_NOD. 2002-11-11 19:08:37 +00:00
dimitr
8177404f3f A bit improved parser's debug output. Thanks to Ignacio J. Ortega. 2002-11-10 07:58:13 +00:00
dimitr
1cd12e4972 Fixed small parser bug. Thanks to Ignacio J. Ortega. 2002-11-10 07:48:52 +00:00
dimitr
127c64dc9c Committed Ignacio's fix for DSQL_pretty (affects debug builds only). 2002-11-09 08:05:26 +00:00
dimitr
eb75186f5e Cleanup. 2002-11-01 08:53:05 +00:00
dimitr
1d4e51d5a0 A bit more cleanup. 2002-10-31 13:08:18 +00:00
dimitr
7aaa9dc9ee Let's report real statement, not it's internal meaning. 2002-10-31 12:22:05 +00:00
dimitr
1b2fc90266 Disallowed Nickolay's SAVEPOINT feature for SPs/triggers. 2002-10-31 12:01:53 +00:00
dimitr
8043127aac Cleaned up to remove those damned line numbers. 2002-10-31 11:28:56 +00:00
seanleyne
0b82f4aa07 Removed obsolete "Netware" port 2002-10-30 06:40:58 +00:00
skidder
8e6622a20e Merging changes from skidder branch - explicit locks, savepoints, build system changes 2002-10-29 20:20:44 +00:00
seanleyne
11e4f78a30 Code cleanup, removed obsolete "MPEXL" port 2002-10-29 02:59:57 +00:00
dimitr
5c8530579d Re-allowed plans in triggers. 2002-10-25 08:29:12 +00:00
eku
0c1b55dd08 Code cleanup:
Since we already have the define ISC_STATUS_LENGTH for the the length of
the status vector, we should use it! Replaced 'status[20]' with
'status[ISC_STATUS_LENGTH]'.

Replaced the different symbolic names for the maximum length of a path
(MAX_PATH, MAX_PATH_LENGTH, MAXPATHLEN) with one uniq symbol MAXPATHLEN.
2002-10-24 09:01:44 +00:00
arnobrinkman
38a4597423 AB: "cosmetic changes" 2002-10-19 00:56:25 +00:00
arnobrinkman
9b24424cab AB: "cosmetic changes" 2002-10-19 00:49:23 +00:00
arnobrinkman
ed61fc2a36 AB: bug fixed with sub-select and group by clause and cosmetic changes 2002-10-19 00:32:23 +00:00
eku
23952873f2 Eventually fixed redefinition of PAGESIZE. 2002-10-16 08:40:01 +00:00
dimitr
59920b4bc6 Commented out because MSVC doesn't understand such a preprocessor directive. 2002-10-10 12:52:23 +00:00
eku
2da5b5088a Added warning. One needs to rename PAGESIZE to something different. It's
already defined in 'sys/param.h'.
2002-10-08 05:12:59 +00:00
skywalker
f35570a03b A few makefile dependancies fixed.
Started work on upgrading rpm build scripts
Fix makefiles for super build
Exchange editline for readline in isql
2002-10-07 01:29:13 +00:00
dimitr
969fab91c8 BLOB subtypes are no longer ignored in views (expression fields only). 2002-10-06 10:51:54 +00:00
arnobrinkman
8b7c1e763e AB: Fixed bug with alias and GROUP BY clause 2002-10-04 17:53:35 +00:00
dimitr
41b82b0e77 Hide ALTER VIEW functionality until it works good. 2002-10-02 13:24:59 +00:00
dimitr
4b1d91b887 Made it in-sync with the FB1 tree. 2002-10-02 13:24:03 +00:00
arnobrinkman
5d6efbeae8 AB: Fix error-message bug with aggregate only in sub-select 2002-10-01 00:34:29 +00:00
arnobrinkman
dd6b72d89e AB: Adding better error-handeling and support for subqueries with group_by clause 2002-09-28 23:52:36 +00:00
dimitr
536d8c0552 1. Reworked internal_info implementation in both DSQL and JRD.
New helper class created to serve it properly.
2. Added exception re-raise semantics.
Syntax: EXCEPTION;
If there was handled exception, re-initiate it, otherwise evaluate to no-op.
3. Implemented run-time exception messages.
Syntax: EXCEPTION <exception_name> [<value>];
If <value> is specified, evaluate it and use instead of RDB$EXCEPTION_MESSAGE.
4. Added new SQLCODE and GDSCODE system variables.
Available in procedures/triggers only.
If there wasn't any exception raised, return zero (success), otherwise return an error code.
5. Implemented ROWS_AFFECTED system variable.
Available in procedures/triggers only.
Count rows affected by the last INSERT/UPDATE/DELETE statement.
For any other statement, result is always zero.
2002-09-28 14:04:35 +00:00
eku
42dd94a872 Fixed compiler warning about redefinition of 'assert'. 2002-09-27 09:05:33 +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
c74d8b6e7d Fixed cached metadata error which caused many DDL/DML statements to fail 2002-09-12 19:53:44 +00:00
skidder
7ca3274707 Fixed cached metadata error which caused many DDL/DML statements to fail 2002-09-12 19:51:50 +00:00
skidder
7ffb19662c Optimize it a little 2002-09-10 18:30:52 +00:00
skidder
f8006cb881 added nulls first/last syntax support 2002-09-10 18:28:23 +00:00
dimitr
68805c2846 Fixed error in GDML statement. 2002-09-10 08:07:16 +00:00
dimitr
8b131027ea More complete implementation of the INDEX subclause of a constraint declaration. 2002-09-06 07:51:33 +00:00
dimitr
cf6dddaf52 Fixed bug with wrong RDB$SYSTEM_FLAG values for the relation constraint triggers. 2002-09-05 11:48:40 +00:00
dimitr
c6e838a144 Changed syntax of the INDEX subclause of a constraint declaration,
now it looks as:
[USING [ASC[ENDING] | DESC[ENDING]] INDEX index]
2002-09-04 12:09:25 +00:00
dimitr
b36015e6e9 - allowed user-defined index names for PK/FK/UK constraints
- fixed ugly hardcoded name checks for primary/foreign keys
- implemented RECREATE VIEW statement
2002-09-01 15:49:03 +00:00
dimitr
94fa429dc4 - allowed user-defined index names for PK/FK/UK constraints
- fixed ugly hardcoded name checks for primary/foreign keys
- implemented RECREATE VIEW statement
2002-09-01 15:44:45 +00:00
dimitr
b45eb004a2 Implemented CREATE OR ALTER statement for procedures/triggers/views. 2002-08-27 07:48:34 +00:00
arnobrinkman
d757d31ed4 Added code in pass1_simple_case for handeling parameters in case_operand together with when_operands.
The method used to get the derciber for parameters is taken from MAKE_desc_from_list in make.cpp
Example : SELECT CASE FieldA WHEN :param1 THEN 1 WHEN 2 THEN 2 ELSE NULL END FROM TableA
Note : At least one "know describer" must be in the list else no describer could be guested (logic but...) !
2002-08-26 19:40:59 +00:00
dimitr
e65f11afe0 Now UDFs work again. 2002-08-13 07:40:53 +00:00
dimitr
7922269845 1. BIGINT is now the only keyword for the 64-bit exact numerics and it's available
in dialect 3 only.
2. BREAK statement has been disabled in triggers (like EXIT) because of the known
   BLR limitations. I hope it can be safely used in stored procedures though, hence
   I'd prefer to have it officially documented.
3. More complete implementation of the GROUP BY clause. You can group by internal
   functions and have ability to use more complex grouping conditions than before.
   By Arno Brinkman.
4. Allowed declaring and defining local variables at the same time.
   By Claudio Valderrama.
   Syntax: declare [variable] <var_name> <var_type> [{= | default} <default_value>]
5. Allowed ordinals to be used in the GROUP BY clause (like ORDER BY).
   By Arno Brinkman.
   Example: select extract(month from order_date), sum(order_sum) from orders group by 1
6. The first approach to the ALTER VIEW statement. Only high-level implementation so far.
   A lot of work in dfw.epp, metd.epp, etc. still required.
   By Dmitry Yemanov.
2002-08-11 08:04:54 +00:00
dimitr
15a9015236 1) Implemented CASE, NULLIF, COALESCE
2) Allowed grouping by internal functions (some work in pass1.cpp still required)
Thanks to Arno Brinkman.
2002-08-03 15:27:20 +00:00
dimitr
717c1200ea Fixed my own damned mistake. Sorry to everyone who got scared by this change ;-) 2002-07-30 09:49:16 +00:00
dimitr
4b0c2969b3 Stay in-sync with Mark's changes and make them win32 friendly. 2002-07-30 07:23:40 +00:00
skywalker
d89b1a0842 Changes to make fb2 compile super version for linux 2002-07-29 15:37:59 +00:00
dimitr
ba4a17a374 Minor additions to my previous changes. 2002-07-10 14:52:42 +00:00
skywalker
89e06a1b43 Merge final changes from fb1 tree. 2002-07-06 05:32:02 +00:00
skywalker
854b35d650 Change DEBUG_KEYWORD to KW_DEBUG,
few more changes in parse.y (mostly post fb1 changes)
2002-07-05 16:01:08 +00:00
skywalker
350b251820 Changes to get compiling on linux (post fb1 changes). 2002-07-05 15:00:26 +00:00
dimitr
88edfc0714 Merging changes from fb1 (stage 2 - fixing porting errors). 2002-07-02 12:20:50 +00:00
skywalker
13d2715fd8 Added LEX_StringIsAKeyword function to avoid an awkward #include from isql
module.
2002-06-29 13:47:28 +00:00
skywalker
ae266af6d1 Merging changes from fb1. 2002-06-29 06:56:51 +00:00
dimitr
c013eea874 Fixed bug with the server crash when XSQLDAs are prepared for not all statement parameters. 2002-06-28 13:49:47 +00:00
paul_reeves
f8388295c2 Remove superfluous include 2002-06-27 12:14:54 +00:00
paul_reeves
f9b8800970 Updated code to support building under Linux. Main changes are to support the platform manager and the move of kanji.* to /intl. 2002-06-23 19:51:37 +00:00
dimitr
745d1093a2 Enabled support for empty BEGIN...END blocks 2002-06-20 11:42:15 +00:00
dimitr
c6cbd67c49 Force SP parameters to behave the same way in both syntaxes (SELECT FROM and EXECUTE PROCEDURE), thus enabling expressions, UDFs, etc. to be passed as a parameter. 2002-06-20 08:00:29 +00:00
dimitr
f84869f782 While I'm in touch with the parser - INT64 and LARGEINT aliases for the intenal dtype_int64 data type. 2002-06-15 09:38:14 +00:00
dimitr
95281ccf25 1. New system variables - CONNECTION_ID and TRANSACTION_ID
2. Universal triggers
(parser changes are not very nice, but at least it works;
perhaps it should be polished up a bit later)
2002-06-14 12:07:20 +00:00
bellardo
5993ece95e Fixed some ugly code I committed yesterday. 2002-04-04 16:41:41 +00:00
bellardo
48226c97f6 Fixed the buffer overflow check to be correct instead of commenting it out. 2002-04-04 16:22:14 +00:00
dimitr
8463265fc1 Implemented 'EXECUTE VARCHAR' command. 2002-04-04 13:53:20 +00:00
bellardo
60bf531271 Cleaning up unneeded setjmp/longjmp code. 2002-04-04 05:35:21 +00:00
bellardo
7c00bdca98 c++ conversion bug fix 2002-04-04 05:34:10 +00:00
bellardo
e68de5f1bc Can't BLKCHK stack variables anymore. Fixed one such occurance in pass1.cpp 2002-04-02 17:10:34 +00:00
dimitr
3990deb9e5 Cleanup 2002-04-01 09:11:49 +00:00
seanleyne
74395949da Code cleanup, corrected some mistakes (;-[) in my removal of the Win3.1 port. 2002-02-24 16:53:24 +00:00
seanleyne
8e93b8a859 Code cleanup, removed old Win3.1 port from routines I missed the first time 2002-02-24 16:39:31 +00:00
seanleyne
17720d16e0 Code cleanup, removed old Windows 3.1 (WINDOWS_ONLY) port 2002-02-23 22:08:37 +00:00
dimitr
9a114da9de Correction to the clean up of the Apollo port 2002-02-23 07:49:48 +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
5ae485f0b5 cleaning up 2001-12-29 11:41:29 +00:00
tamlin
e48b2468d7 MemoryPool work 2001-12-28 05:16:31 +00:00
tamlin
80f7fb6dd4 New C++ memory pool 2001-12-24 02:51:06 +00:00
tamlin
eea9bdfe5a Synch with FB1 changes. 2001-11-02 20:40:15 +00:00
skywalker
4c4bc9a95c Global changes for new Makefile and firebird2 compile on linux 2001-07-29 23:43:24 +00:00
skywalker
816439e5d7 Fix simple syntax errors 2001-07-14 00:44:14 +00:00
bellardo
6681f4852e More changes to convert FB2 to c++. This time is files that have been renamed
and some conflict resolutions on files edited by more than one person at once.
2001-07-12 06:32:05 +00:00
bellardo
747d13c0d5 Changes to bring FB2 to c++ on *nix. 2001-07-12 05:46:06 +00:00
awharrison
baa3485651 read only databases are supported unconditionally in fb2 2001-07-10 17:35:13 +00:00
tamlin
9587c717b3 ongoing cleanup 2001-05-24 14:54:26 +00:00
tamlin
9a776a604e First steps towards a C++ conversion. 2001-05-23 13:26:42 +00:00