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

878 Commits

Author SHA1 Message Date
dimitr
9881681557 Complete one of my previous commits. 2006-06-01 09:48:02 +00:00
dimitr
78c23ca592 Some preparation for RETURNING in UPDATE/DELETE.
To be completed in v3.0.
2006-05-31 18:02:34 +00:00
robocop
60d8b0c277 Follow Alex' fix but in the other DSQL preprocessed file. 2006-05-31 01:19:59 +00:00
alexpeshkoff
9806b4d1b7 fixed regression in diagnostics 2006-05-30 14:45:07 +00:00
robocop
73c9775c2a Tag time differences and timestamp differences as NUMERIC sub_type if they produce exact numeric results. 2006-05-28 07:46:35 +00:00
dimitr
5c049f1eab MT related cleanup. 2006-05-26 06:11:04 +00:00
asfernandes
67e900c4f3 Regenerate parse.cpp 2006-05-26 01:01:04 +00:00
asfernandes
d76fde6496 GLOBAL is reserved word in SQL2003. Move from non_reserved_word to keyword_or_column. 2006-05-26 00:59:17 +00:00
robocop
7040d668fd Misc. 2006-05-25 08:40:23 +00:00
dimitr
bc83c1ef4c Updated parse.cpp 2006-05-25 08:01:33 +00:00
robocop
1571fef42c Introduce the new v2.1 keywords as non-reserved words. Someone with the new build system (btyacc) please regenerate the files. 2006-05-25 07:05:35 +00:00
dimitr
006d5871b0 Restored my previous solution. The final decision is that NOT IN cannot be index-optimized reliably. 2006-05-24 13:19:33 +00:00
asfernandes
24d936cd70 Misc 2006-05-22 01:29:06 +00:00
asfernandes
8e5e51e84d New keywords is using tok_version = 2 2006-05-22 00:14:20 +00:00
hvlad
1296e18049 Regenerate parser and error codes files (after GTT) 2006-05-21 22:14:38 +00:00
hvlad
701f2cbda4 Global temporary tables implementation 2006-05-21 22:07:35 +00:00
asfernandes
292ad66e96 Misc 2006-05-20 01:53:51 +00:00
asfernandes
a3b411a4c1 Misc 2006-05-20 00:59:22 +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
robocop
1cd8eb20da Cope with old compilers. 2006-05-18 06:26:15 +00:00
dimitr
e3646a03d2 Fixed the regression reported by Adriano. 2006-05-17 04:33:44 +00:00
asfernandes
abc1a41b6d Misc 2006-05-17 02:43:12 +00:00
dimitr
4976c7d29d Committed the correct UPDATE behaviour. Disabled so far. 2006-05-16 09:09:18 +00:00
asfernandes
c3348f77b9 Fix problem when trimming not-nullable blobs 2006-05-14 14:32:43 +00:00
asfernandes
40bfb5f0f4 Make TRIM of blob work - returning a blob 2006-05-13 01:27:35 +00:00
robocop
136cab1caf Misc. 2006-05-04 02:57:26 +00:00
asfernandes
f3251b285b Misc 2006-05-02 00:15:29 +00:00
robocop
ea3c37f4cb Remove unused code. 2006-05-02 00:11:46 +00:00
robocop
07f4bed382 I don't want another "interprete", so I rename "defered" to "deferred". 2006-05-02 00:04:12 +00:00
hvlad
f94b8bd641 Merge B1_5_Remote_LazyPort branch into HEAD 2006-05-01 22:23:31 +00:00
dimitr
cebda2b4bf Threading cleanup. More to follow. 2006-05-01 04:43:59 +00:00
alexpeshkoff
469589f573 Use Firebird::Array instead of STL's vector 2006-04-25 17:49:24 +00:00
dimitr
8b45562f81 The DSQL code of the LIST function. Unstable yet. 2006-04-24 17:24:26 +00:00
asfernandes
73d35f65d6 Sync with parse.y 2006-04-23 15:14:35 +00:00
robocop
e54dedb70c Misc. 2006-04-20 01:23:10 +00:00
dimitr
cfefbee57a Removed the lexer hacks from the parser. 2006-04-19 11:32:37 +00:00
asfernandes
3b54c24652 Let LOWER/UPPER (blob) work - returning a blob 2006-04-16 18:45:40 +00:00
robocop
866854d91c Misc. 2006-04-11 07:14:48 +00:00
alexpeshkoff
3e8edbaeb3 fixed AV during massive addition of relations to DSQL hash 2006-04-09 12:47:29 +00:00
asfernandes
a34d59a454 Fix problem which occur when select a field with NONE charset when using another connection charset - second part of problem reported by Michal Kubecek 2006-04-08 03:09:08 +00:00
dimitr
ebed4eb85f More threading related fixes. As a side effect, it disables a primitive client-side caching of a few predefined queries, but it doesn't show any performance difference. 2006-04-07 09:16:55 +00:00
dimitr
f084389653 Fixed the regression caused by my changes re. Dialect 1. 2006-04-05 04:38:03 +00:00
hvlad
5f105d2154 Make input parameters of EXECUTE BLOCK statement nullable 2006-03-29 09:41:48 +00:00
arnobrinkman
ce6eeb13c7 Fix node compare function for derived fields.
Fixes field test-item #1449377.
2006-03-14 10:57:11 +00:00
asfernandes
32f770b760 Fix incorrect malformed string error, reported by Richard Wesley 2006-03-10 00:08:44 +00:00
dimitr
8da75613c4 Fixed yet another bug in explicit cursors.
Unfortunately, BLR compatibility is not provided, so users have to recompile their SPs/triggers.
2006-03-07 17:52:33 +00:00
dimitr
958b1fea85 Fixed bug in RETURNING INTO code. 2006-03-07 14:42:19 +00:00
dimitr
fee85ae5d6 Added a context overflow check to DSQL as well.
Based on a bugreport by Volker Rehn.
2006-03-07 10:20:52 +00:00
dimitr
5ac952b661 There's no need to transform NOT ANY to ALL, as NOT ANY effectively uses indices. 2006-02-15 13:35:53 +00:00
hvlad
a2afa1051e Fixed unregistered bug: AV in request driven by freed cursor
(when request is dropped flag REQ_orphan is set for child requests but
this flag is never checked)
2006-01-27 07:36:17 +00:00
dimitr
a3b2c23aff CREATE VIEW should be aware that a column alias doesn't necessarily mean an expression. 2006-01-26 11:21:12 +00:00
robocop
770fd53775 Fix SF Bug# 1408079 and also the same problem with unterminated comment blocks /* ... 2006-01-25 08:40:39 +00:00
arnobrinkman
a52a8f5c66 Fix incorrect "Ambiguous field name error" reported by Ivan Prenosil:
SELECT
    (SELECT RDB$FIELD_NAME   FROM RDB$RELATION_FIELDS
      WHERE RDB$FIELD_SOURCE = RDB$FIELDS.RDB$FIELD_NAME)
  FROM RDB$FIELDS
 WHERE RDB$FIELD_NAME NOT IN
    (SELECT RDB$FIELD_SOURCE FROM RDB$RELATION_FIELDS)
2006-01-22 19:14:27 +00:00
asfernandes
e781d29e1e Fixed problem caused by usage of UNICODE_FSS system domains in users views and tables - thanks to Dmitry 2006-01-21 14:55:16 +00:00
hvlad
c65b1fda0a Regenerated parser files after parse.y change
By bison 2.1 now
2006-01-20 13:34:18 +00:00
hvlad
7c1372ee30 Again fix issue with parser and not correctly stored source for
CURRENT_TIME\CURRENT_TIMESTAMP in procedure parameters
default values. Reported by Martijn Tonies
2006-01-20 13:31:26 +00:00
paul_reeves
6baee04435 Forward port OldColumnNaming from Fb 1.5.3 2006-01-17 04:40:31 +00:00
alexpeshkoff
fb6757bbed fixed gcc warning(s) 2006-01-16 16:31:15 +00:00
asfernandes
608a594696 Fixed problem causing collation lost in sqlsubtype when using dynamic charset - reported by Ivan Prenosil 2006-01-15 18:11:31 +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
robocop
be13107102 Misc. 2006-01-04 05:55:24 +00:00
dimitr
68ea35e64c More realistic BLR buffer. We don't need redundant allocations. 2005-12-21 17:49:47 +00:00
dimitr
96f644b6bd Fixed a few wrong error messages + minor cleanup. 2005-12-12 17:36:19 +00:00
dimitr
75fade8b0a Ported solution for SF #1371274 from Yaffil + minor cleanup. 2005-12-12 17:27:10 +00:00
dimitr
52abeceb5e Changed location of some defines in order to avoid internals inside ibase.h. 2005-12-05 11:31:45 +00:00
hvlad
84244fc30e Regenerate parser files 2005-12-04 12:21:00 +00:00
hvlad
c333e74b4c 1. Correct end_default_opt rule
2. Fix wrong error reporting found by Claudio
2005-12-04 12:18:51 +00:00
asfernandes
68830f0724 Lookup for procedure parameters in isc_blob_lookup_desc 2005-12-02 00:28:14 +00:00
dimitr
9e7ae46d1f Simplified code a bit. Fixed the crash with the usage of TRIM in aggregation. 2005-11-30 09:03:53 +00:00
hvlad
d7ccce5c37 Regenerated parser files after parse.y change 2005-11-29 16:13:03 +00:00
hvlad
217fd7e959 Second attempt to fix issue with parser and not correctly stored source
for DEFAULT CURRENT_TIME\DEFAULT CURRENT_TIMESTAMP
2005-11-29 16:09:02 +00:00
robocop
5508320ef7 Misc. 2005-11-29 06:24:56 +00:00
arnobrinkman
ee9ac954ee Fix column-name problem with UNION and derived fields.
Problem found by Volker Rehn.
2005-11-28 23:06:53 +00:00
alexpeshkoff
62a24d46e4 1. Moved data structures, written to database file, into ods.h.
2. Added new types of clumplets to ClumpletReader and ClupmletWriter.
3. Applied modified ClumpletReader and ClupmletWriter to /remote and partially /jrd.
4. Added active protection from remote brute-force attack to services API.
2005-11-27 20:53:09 +00:00
arnobrinkman
d1e0291152 Add missing nodes to sub-select detection 2005-11-26 16:15:47 +00:00
dimitr
a34cf16466 Let's generate blr_blob2 for PSQL blobs instead of blr_quad.
This allow PSQL blobs to carry the charset/collation attributes.
2005-11-25 14:58:50 +00:00
hvlad
b144b0267d Enlarged dsql and jrd hash tables sizes 2005-11-21 23:52:11 +00:00
hvlad
b5094b2b2c Regenerated parser files after parse.y change 2005-11-21 17:58:07 +00:00
hvlad
a174b8336f Fixed issue with parser and not correctly stored source
for DEFAULT CURRENT_TIME\DEFAULT CURRENT_TIMESTAMP
2005-11-21 17:57:20 +00:00
robocop
d1373b1555 Fix clash with winbase.h on IGNORE. 2005-11-18 04:39:47 +00:00
robocop
90174410a2 Let Ivan Prenosil test his beloved transaction options. 2005-11-17 04:22:10 +00:00
hvlad
f89e461887 Cached charsets by id (not only by name) in dsql. Removed irq_cs_bpc request as unneeded anymore 2005-11-16 07:49:28 +00:00
robocop
016931bb63 What about putting the nodes you added in node.h also in the DSQL debugging facilility, folks?
:-)
2005-11-12 23:36:09 +00:00
dimitr
a0ea9ad0bc Globals must die, epysode III. 2005-11-12 18:48:09 +00:00
arnobrinkman
a381385af0 Fix problem with sub-queries/derived tables in the HAVING clause 2005-11-08 23:49:50 +00:00
robocop
405346ba33 Fix SF-bug field-test #1192225. 2005-10-30 08:15:29 +00:00
dimitr
5e8af7b048 Implemented RECREATE TRIGGER. 2005-10-29 09:15:37 +00:00
alexpeshkoff
5724d3eb15 Fixed SS deadlock in DSQL 2005-10-28 16:34:59 +00:00
dimitr
953aa2dfd0 Fixed the bug noticed by Claudio. 2005-10-28 05:37:34 +00:00
dimitr
85388cd3c7 1) Fixed check constraints
2) A bit simplified generation of check option triggers
3) Cleanup of unused parser stuff
2005-10-26 18:21:32 +00:00
arnobrinkman
a93df44449 Fix NEW/OLD context problem found by Dmitry 2005-10-25 20:42:29 +00:00
dimitr
868a5bb21f Better (and more honest) diagnostics. 2005-10-21 09:43:26 +00:00
dimitr
23eb1ca985 Change the visibility rules for uncommitted relations.
The goal is to simplify them and fix known issues with ALTER TABLE.
Hopefully, this won't cause any side effects.
2005-10-21 08:47:26 +00:00
robocop
68f3568b0f Close the remaining, third item in SF Bug #217042. Now the four items are solved.
However, this third item was the tip of the iceberg: computed fields silently dropped implicit or explicit charset/collation/sub_type specification, whether it was derived from the expression or dictated by an explicit cast.
Also, had to invent a new flag to deal with relations being just created now and whose db_key_length obviously doesn't exist. Still looking for better solution.
2005-10-08 06:52:57 +00:00
robocop
e2dd9845b5 Totally misc. 2005-10-08 06:47:34 +00:00
robocop
7d304b0fbb Fix SF Bug #1292007
Move some hardcoded error texts to the msg database.
2005-10-06 06:08:10 +00:00
robocop
01e8fab3e0 Trim unneeded blanks and some control characters between DEFAULT clause and the default value itself in procedure parameters, too.
Trim unneded blanks and some control characters before the BEGIN or DECLARE clauses in a procedure body.
2005-09-30 07:50:39 +00:00
dimitr
75ac53eeb4 Temporarely rolled back to the previous end_trigger logic due to found issues.
Still looking for a proper solution.
2005-09-28 13:23:02 +00:00
arnobrinkman
3326dd95ff Fix another "with check option" issue <sigh> 2005-09-27 20:41:18 +00:00
hvlad
1b26b6e6b5 Make code more robust. Reported privately by Tom Cole 2005-09-27 19:23:24 +00:00
dimitr
dead116ac8 Significant changes in the DDL source parsing (begin_*, end_* rules):
1) store WITH CHECK OPTION instead of WITH CHECK (views)
2) store DEFAULT <value> instead of <value> (procedure parameters)
3) attempt to fix the bug in end_trigger causing longer string to be stored (try e.g. DEFAULT CURRENT_TIME NOT NULL)
4) major cleanup of begin_trigger and indentation, simplified some parser rules
Now awaiting for the Claudio's attack :-)
2005-09-27 11:17:54 +00:00
dimitr
3e575cc3ba Let's recognize an attempt to alter a not existing table earlier than in DYN.
In particular, this prevents a server crash introduced by some recent DDL checks.
2005-09-19 14:48:26 +00:00
dimitr
51a8e6dd62 Fixed dialect 1 regression caused by my recent changes. 2005-09-16 10:50:57 +00:00
dimitr
e285db7acf Fixed the issue with zero-initialized status vector during prepare. 2005-09-14 19:06:28 +00:00
asfernandes
13910d5c73 Fix issue of SQLVAR.sqllen from non-system MBCS fields, thanks to Roman 2005-09-14 18:09:40 +00:00
dimitr
39bceddf43 Another attempt to fix the issue with uncommitted DDL. 2005-09-14 11:42:21 +00:00
robocop
aab2d20725 - Get rid of DBB_v3 in DSQL and put a message just in case we find ODS<=7 (impossible in theory, since FB wouldn't open such db).
- Put mnemonics for two hardcoded error msgs I hijacked from DYN years ago. Now they are defined for the SQLERR facility.
2005-09-10 07:15:24 +00:00
dimitr
e2ca3104e5 Cleanup. 2005-09-09 10:15:02 +00:00
dimitr
d946030bed Small correction. 2005-09-09 09:07:08 +00:00
dimitr
9309486dba Clear the DSQL metadata cache after ALTER EXTERNAL FUNCTION statement. 2005-09-09 06:40:44 +00:00
hvlad
c420a96abe Removed unused member 2005-09-04 21:39:22 +00:00
hvlad
6e63680183 Correction 2005-09-04 21:33:57 +00:00
hvlad
a3c369866a Add error handlers 2005-09-04 21:32:16 +00:00
hvlad
3f03b1d619 Small code reorganisation:
1. move two identical 'copy_status' functions from array.epp and blob.epp into utld.cpp
2. allow ERRD_punt use local instance of status-vector
2005-09-04 21:31:25 +00:00
robocop
36f8683511 Get rid of my old hack to solve a problem between John/Mark's FIRST/SKIP parameters type and dialect detection. The dialect is in the request. 2005-09-03 08:03:39 +00:00
robocop
057f098a28 - Misc.
- Detect a limit case with params and containing or starting.
2005-09-03 07:47:32 +00:00
dimitr
898cb02240 1) Made output parameter naming a common procedure instead of select-list private code.
2) Allowed value expressions in the RETURNING clause.
2005-09-02 05:30:16 +00:00
asfernandes
f93bf8d46a Fixed problem of implict NOT NULL (in PRIMARY KEY constraint) being generated with the same constraint name of the PK.
Thanks to my brother Adilson for the test case.
2005-08-29 18:41:21 +00:00
dimitr
faa8162a2b Fixed SEGV reported by Konstantin. 2005-08-25 12:37:26 +00:00
dimitr
0cd5e57eaa Added optional seconds precision to CURRENT_TIME and CURRENT_TIMESTAMP
as agreed with Ann and others times ago.
2005-08-24 09:42:14 +00:00
dimitr
2f4312b6c6 Added optional seconds precision to CURRENT_TIME and CURRENT_TIMESTAMP
as agreed with Ann and others times ago.
2005-08-24 09:22:40 +00:00
dimitr
8df5a70299 Rolled back my commit as a performance looser.
More precise savepoints handling is being investigated.
2005-08-24 06:21:47 +00:00
dimitr
a30e17bce3 Fixed wrong keyword version. 2005-08-22 13:39:30 +00:00
dimitr
9a489515b9 Fixed PSQL exception handling which never worked consistently. 2005-08-22 10:12:13 +00:00
asfernandes
0b1eb55d62 Fixed SF field-test #1249187 - 2.0a3: String literals dest. for large CHAR fields truncated 2005-08-21 15:52:30 +00:00
arnobrinkman
b900f56435 Allow outer reference in derived table to higher scope-levels 2005-08-16 21:19:17 +00:00
robocop
22742ccdd7 Tweak DYN to solve several issues:
- Allow to set and drop defaults for table's fields (as it has been possible with domains).
- Stop people from setting a default value for array types.
- Close checking holes that allowed people to change from scalar types to array types and vice/versa.
- Improve some error messages.
2005-08-14 05:48:20 +00:00
dimitr
6494351243 Fixed a number of issues for Dialect 1 and Dialect 3 (string arithmetics) + some cleanup.
The issues are:
1) '1.5' / '0.5' doesn't work in Dialect 1
2) avg ('1.5') doesn't work in Dialect 1
3) 5 * '1.5' produces INT result instead of DOUBLE PRECISION in Dialect 1
4) sum ('1.5') produces NUMERIC(15, 2) result instead of DOUBLE PRECISION in Dialect 1
5) - '1.5' doesn't work in Dialect 1
6) '1.5' * '0.5' and '1.5' / '0.5' are not forbidden in Dialect 3
2005-08-06 05:29:31 +00:00
robocop
773b8035c1 Totally misc. 2005-08-04 04:03:01 +00:00
arnobrinkman
d41f73b112 Sigh, if i change something then i must do it right 2005-08-02 08:36:51 +00:00
arnobrinkman
ec541b28d5 Fix unreleased contexts problem with derived tables, found by Vlad. 2005-08-01 19:05:57 +00:00
arnobrinkman
a6deb7b96e Fix mistake, noticed by Claudio 2005-07-31 14:13:30 +00:00
robocop
a32d2f48b6 Totally misc. 2005-07-31 03:34:04 +00:00
arnobrinkman
8a6f8e4a1c Fix nullable flag for descriptor generated by MAKE_desc_from_list() 2005-07-28 13:35:08 +00:00
arnobrinkman
8b39342fdf Fix "WITH CHECK OPTION" bug introduced with tighter alias handling.
In fact the tighter alias handling was showing a hidden "bug".
2005-07-27 18:57:15 +00:00
dimitr
0b3d60bbde Fixed the GEN_ID(<name>, NULL) issue (reported by Claudio). 2005-07-27 07:36:03 +00:00
dimitr
50add99198 Fixed the NEXT VALUE FOR bug for dialect 3. Thanks to Claudio. 2005-07-27 05:36:43 +00:00
dimitr
3e0fe831cd Fixed the arrays bug introduced by myself. 2005-07-26 12:16:29 +00:00
arnobrinkman
e2a664a6a2 Fix and simplify PLAN alias lookup 2005-07-26 11:54:37 +00:00
arnobrinkman
beb6fb213d Fix and simplify PLAN alias lookup 2005-07-26 11:48:10 +00:00
arnobrinkman
22ac7c9cdc Fix derived table issues with NEW/OLD contexts (Triggers/check-constraints)
Also adjust IN predicate behaviour to derived table.
PLAN parsing for derived tables will be fixed later.
2005-07-25 14:43:28 +00:00
asfernandes
d524eec86f Fixed SF #1242379 - Collation changes VARCHAR's length 2005-07-22 02:08:14 +00:00
dimitr
81b86138b3 Correction. 2005-07-20 12:49:56 +00:00
dimitr
1a3218625d Added DSQL support for ROLLBACK RETAIN. 2005-07-20 10:05:57 +00:00
dimitr
e26108da29 1) Fixed threading issues in DSQL (they always existed, but were hidden until recently).
2) Cached all METD requests.
2005-07-17 07:00:55 +00:00
dimitr
75a8789a09 Temporarily rolled back my fix. 2005-07-16 06:46:07 +00:00
arnobrinkman
21c839b45a Send annoying unemployed code out of the door 2005-07-13 20:07:13 +00:00
dimitr
3a6419378d Fixed SF #1012152. 2005-06-24 15:06:54 +00:00
asfernandes
2cae7d39b7 Simplification 2005-06-17 01:33:14 +00:00
robocop
e28ed6b27c Try to indicate position of incomplete commands.
Some casts because statuses are fixed 32 quantities, not natural int types.
2005-06-16 05:11:08 +00:00