8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-27 05:23:02 +01:00
Commit Graph

241 Commits

Author SHA1 Message Date
robocop
16361cada8 Misc. 2009-11-01 10:58:16 +00:00
dimitr
5c80805bed Cleanup. 2009-10-31 11:45:44 +00:00
dimitr
7bdb39e616 Wipe out the SCROLLABLE_CURSORS code + minor cleanup.
Also, surfaced scrollability for PSQL cursors (without internal support yet).
2009-10-31 06:17:49 +00:00
asfernandes
b31aaf0129 Some statements nodes refactor - creation of IfNode, ExitNode, SuspendNode, PostEventNode and SavePointNode. 2009-10-24 17:45:33 +00:00
asfernandes
ed0e0daeb3 - External Engines implementation.
- Plugins API.

- Feature CORE-2700 - UDR (User Defined Routines) Engine - C++ API supporting functions, triggers and stored procedures.
- Feature CORE-2470 - Support for alternate format of strings literals.
- Feature CORE-2310 - DDL triggers.
- Feature CORE-2312 - PSQL Packages.
- Feature CORE-1209 - CONTINUE statement.
- Feature CORE-1180 - DDL syntax to change (not) nullable state of columns.
- Feature CORE-2090 - Support OVER () clause with current aggregate functions.

- Fixed CORE-2699 - Common table expression context could be used with parameters.

- Introduce ODS 12.0.

- Work in progress in type-safe parser.
- Refactor some DDL commands (procedures and triggers) from DYN to DdlNodes.
- Refactor virtual tables to use a class hierarchy instead of namespaces. This is basic thing, not based on the changes done in Vulcan. Window functions is based on this work.
- Refactor COMMENT ON and DROP FUNCTION from DYN to DdlNodes. COMMENT ON do not use GDML anymore, it uses DSQL with PreparedStatement class.
- Refactor EXECUTE BLOCK to StmtNodes.
- Refactor the IUDF to SysFunctions. That eliminates RDB$GET_CONTEXT and RDB$SET_CONTEXT from RDB$FUNCTIONS.
2009-10-21 00:42:38 +00:00
asfernandes
f590889311 Fixed CORE-2607 - Introducer (_charset) problems with monitoring and persistent modules 2009-08-30 02:26:50 +00:00
asfernandes
88495f2e92 Fixed CORE-2584 - Wrong results for CASE used together with GROUP BY 2009-08-06 02:32:56 +00:00
hvlad
9a749a272f Implement improvement CORE-2452 : Add Role Name in input parameters for EXECUTE STATEMENT 2009-05-14 10:21:47 +00:00
asfernandes
c986de33a2 Misc 2009-04-22 01:58:40 +00:00
robocop
74537636b9 Comments. 2009-04-18 14:13:26 +00:00
robocop
b627ad2a39 Style. 2009-01-07 09:30:57 +00:00
robocop
8dca837420 Style. 2009-01-06 05:53:34 +00:00
asfernandes
41b4b3ab8d Fixed CORE-2227 - Problem with column names with Accents and triggers.
Thanks to Alex for makefile fixes!
2008-12-08 23:45:23 +00:00
asfernandes
db82e7cd6b Misc 2008-11-06 00:23:21 +00:00
alexpeshkoff
d8ea120ded AIX port - use FB_ prefix for alignment constants 2008-11-05 11:26:23 +00:00
asfernandes
774635c3a9 Fixed another case for CORE-1246 - Incorrect column values with outer joins and derived tables:
select t2.n
  from rdb$database t1
  left join (
    select 11 n
      from (
        select 0 a
          from rdb$database
      ) x1
  ) t2
    on 1 = 0
;

was returning 11.
2008-10-04 02:48:35 +00:00
robocop
0c85fac2d4 CORE-1799: improve the almost useless "expression evaluation not supported" error message.
Did the DSQL part for now.
2008-09-27 09:51:53 +00:00
asfernandes
b550749a47 Fixed CORE-1246 - Incorrect column values with outer joins and derived tables 2008-09-07 19:44:48 +00:00
robocop
a6d4e3de82 Misc. 2008-09-03 12:18:59 +00:00
asfernandes
139e4f8ca9 Misc 2008-09-03 02:26:45 +00:00
asfernandes
9150e6f4f2 This should fix regressions related to fixes of:
CORE-501 - Optimization problem with COALESCE
CORE-1343 - Bug with a simple case and a subquery
CORE-2041 - update or insert with gen_id() with wrong generator value

And should fix this one (snapshot build bug):
CORE-2051 - don't work subquery in COALESCE
2008-09-01 13:18:02 +00:00
robocop
92f2d1dc1b Misc. 2008-08-26 10:28:58 +00:00
asfernandes
e54682efa0 Fixed CORE-1343 - Bug with a simple case and a subquery 2008-08-21 01:58:53 +00:00
asfernandes
b910161f82 Fixed CORE-501 - Optimization problem with COALESCE 2008-08-20 01:54:45 +00:00
asfernandes
736659c1a1 Misc 2008-08-16 15:42:38 +00:00
asfernandes
5d4084d30c Fixed CORE-2041 - update or insert with gen_id() with wrong generator value 2008-08-15 16:32:42 +00:00
alexpeshkoff
1785fb6ee3 fixing CORE-1964: Use of 0 instead of isc_arg_end to terminate list of ERR_post's (and cousines) arguments is invalid
finished cleanup of vararg in error diagnostics in DSQL
2008-08-15 11:21:47 +00:00
asfernandes
45786da3bc Misc 2008-07-06 16:42:52 +00:00
robocop
1d7bc9916b Misc. 2008-07-03 07:12:36 +00:00
robocop
1ffc7a2291 Misc. 2008-07-02 09:46:44 +00:00
asfernandes
ce4bf91533 Misc 2008-07-01 01:12:02 +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
asfernandes
d30d6410ea Misc 2008-06-13 01:42:58 +00:00
robocop
30b5480c66 Move the new EXEC STMT functionality to a separate function. 2008-06-12 09:02:54 +00:00
hvlad
66fd7d5488 Make blr_exec_stmt extensible in the future.
Sorry, recompile of stored objects using new EXECUTE STATEMENT is necessary. Hope the last time ;)
2008-06-10 22:43:30 +00:00
dimitr
c639285420 Fixed the Linux build. 2008-06-10 03:31:19 +00:00
hvlad
5d9c430674 Implemented improvement CORE-1928 : Allow EXECUTE STATEMENT to inherit access privileges of caller stored procedure or trigger.
Allow to specify EXECUTE STATEMENToptional clauses in any (not fixed) order.
Use INTERNAL_PROVIDER for access to the current database by another user too.
2008-06-08 20:42:27 +00:00
asfernandes
552f58dd48 Misc 2008-06-06 02:25:35 +00:00
robocop
07c087094d Mostly remove useless parentheses. 2008-06-03 06:14:59 +00:00
asfernandes
0d979e5b92 Misc 2008-05-28 02:11:00 +00:00
robocop
88859fdc51 Make operations a bit faster by enabling the vector to add an array of values in a single pass (the same idea as insert's overloaded version). 2008-05-25 12:16:20 +00:00
asfernandes
d4bf9ab246 Split dsql_req into dsql_req and CompiledStatement. This should be my last refactoring to 2.5:
- dsql_req becomes a running request;
- CompiledStatement is derived from dsql_req. The compilation state previously in dsql_req comes to here;
- Rename many "request" parameters to "statement" where type is changed from dsql_req to CompiledStatement.
This changes makes easy the path to support compiled statement cache.
2008-05-24 03:19:52 +00:00
asfernandes
d52dc96278 1) Move the new Node classes to appropriate files
2) Creation of StmtNode
3) Conversion of IN AUTONOMOUS TRANSACTION to InAutonomousTransactionNode (inherited from StmtNode) - it makes this feature almost self-contained

Please do a boot build or at least run blr_table.
2008-05-19 13:47:48 +00:00
hvlad
48f8d0ff80 Correct my mistake 2008-04-17 10:47:31 +00:00
hvlad
23dad7416f Generate old blr codes (blr_exec_sql or blr_exec_into) if given EXEC STMT statement is compatible with old syntax. Per Adriano request. 2008-04-16 13:08:51 +00:00
robocop
4580126101 Do not use flags for values that are exclusive (can't be combined). 2008-04-16 10:38:08 +00:00
asfernandes
6e59d736df 1) Fix Linux build
2) Misc
2008-04-11 01:38:50 +00:00
asfernandes
0e8febd6e3 Misc 2008-04-10 02:35:30 +00:00
hvlad
fe3f8c184b New EXECUTE STATEMENT with support of external data source implementation 2008-04-09 20:18:47 +00:00
dimitr
580544fbd7 More changes targeted to a better error diagnostics. 2008-04-04 10:01:06 +00:00
dimitr
e0feb6e228 Misc. 2008-04-01 12:56:30 +00:00
dimitr
30f7cce178 Fixed CORE-1811. A solution is to move the validation code from GEN to PASS1 in order to catch bad things earlier. This differs from the SAS solution, but hopefully it's more generic. 2008-04-01 06:11:29 +00:00
asfernandes
2e8bd421dc Cleanup: do not replicate attachment charset info in DSQL 2008-03-01 19:32:16 +00:00
asfernandes
f49017d2ff Misc 2008-03-01 15:08:11 +00:00
dimitr
99caa91b85 DSQL integration into the engine. 2008-02-28 13:48:16 +00:00
dimitr
c7db4d6a64 Get rid of DsqlMemoryPool. 2008-02-20 15:24:21 +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
dimitr
eac5ac337b The merge continued. 2008-01-16 06:52:43 +00:00
hvlad
2b47bbe55b Revert files back after wrong commit 2007-11-19 00:21:18 +00:00
hvlad
86f1141328 Execute statement with support of external data source 2007-11-18 22:59:20 +00:00
alexpeshkoff
407cf7e1d8 Changes suggested by Claudio and Adriano. Further cleanup 2007-10-19 11:51:58 +00:00
alexpeshkoff
e4271ba6fa Fixed CORE-1501: Wrong access to SLONG data in dsql_nod 2007-10-17 14:35:31 +00:00
asfernandes
8c202cdd61 Fixed CORE-1378 - Domain names and charset issues 2007-07-24 16:28:08 +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
robocop
5c152e5cfe Misc. 2007-07-08 08:43:30 +00:00
asfernandes
379ebc9ab6 Misc 2007-07-01 02:40:15 +00:00
hvlad
77a5e7498c Improve implementation of nod_src_info to avoid generation of additional blr_begin\blr_end pair 2007-06-29 10:22:50 +00:00
asfernandes
410b2809a1 Fixed CORE-1332 - Put the connection charset in sqlscale of blobs when appropriate 2007-06-28 15:27:28 +00:00
alexpeshkoff
86fa05c192 Misc 2007-05-28 12:46:15 +00:00
asfernandes
3431784b92 Misc 2007-05-27 00:37:39 +00:00
asfernandes
e705b335f8 Fix non-ASCII object names in:
1) aliases in PLANs
2) EXECUTE PROCEDURE
3) SELECTs inside procedures/triggers
2007-05-26 22:08:13 +00:00
asfernandes
c67afcb4ee Improvement CORE-1277 - Automatic transliteration of text blobs 2007-05-22 02:14:20 +00:00
asfernandes
b06deea4c6 CORE-1226: Allow RETURNING in INSERT...SELECT, UPDATE and DELETE 2007-04-24 15:22:05 +00:00
robocop
422d659fcb Misc. 2007-04-15 11:25:23 +00:00
asfernandes
166fc0b865 Misc 2007-04-13 01:37:44 +00:00
asfernandes
8c7076b67f Port of Yaffil builtin functions 2007-04-12 15:56:34 +00:00
hvlad
f48f2af25b Few corrections pointed by Claudio 2006-11-03 09:42:42 +00:00
asfernandes
4197a8be70 Fixed a bug when the connection charset is multibyte, appeared after recent changes to CsConvert class. 2006-11-02 22:37:19 +00:00
asfernandes
88a9a84a01 Misc 2006-10-31 14:23:31 +00:00
hvlad
58d381edd7 1. Remove blr_src_info code as it is prevents database downgrade from ODS 11.1
2. Put debug information (mapping between blr offset and source line\column and names of local variables) into new blob field RDB$DEBUG_INFO
This is first step to implement native SQL debugger i believe
2006-10-30 20:58:06 +00:00
asfernandes
a40b7b8ae5 MERGE statement 2006-09-14 02:05:32 +00:00
asfernandes
55ec30965d REPLACE statement 2006-09-03 01:09:23 +00:00
asfernandes
3fb67ef75d Fix problems of RETURNING...INTO of not yet existent constructions (update/delete) 2006-08-19 18:18:31 +00:00
asfernandes
b3cf84ecdf Fixed INSERT...RETURNING...INTO not working 2006-08-19 15:49:28 +00:00
aafemt
c662ea7d9e Warnings 2006-08-17 12:08:49 +00:00
hvlad
b20aa92714 Common table expressions implementation 2006-08-01 20:37:58 +00:00
robocop
34e37d54ae Fix CORE-200
Handle column names in subqueries.
Put some more names for common operations and special data.
Disable nod_count since it's not generated by our parser.
2006-07-30 05:09:41 +00:00
dimitr
9d534e1521 Misc. 2006-07-21 04:15:40 +00:00
dimitr
5519d31f70 More format overflow checks. Also this fixes CORE-842. 2006-07-20 09:57:04 +00:00
hvlad
fac53c8177 Added blr_src_info. Error call stack now contains not only
procedures\triggers names but line\column numbers also.
Thanks to Eugeney Putilin for idea
2006-07-04 14:44:43 +00:00
robocop
7d4cb328fc Misc. 2006-06-02 08:03:22 +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
dimitr
8b45562f81 The DSQL code of the LIST function. Unstable yet. 2006-04-24 17:24:26 +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
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
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
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
90174410a2 Let Ivan Prenosil test his beloved transaction options. 2005-11-17 04:22:10 +00:00
dimitr
e285db7acf Fixed the issue with zero-initialized status vector during prepare. 2005-09-14 19:06:28 +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