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
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
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
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
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
dimitr
40b5c1d6bb
RETURNING implementation.
2005-06-13 12:45:42 +00:00
asfernandes
4efb74fc51
Removed some compiler messages
2005-06-13 02:12:14 +00:00
robocop
b7e36b865d
Backport Tom Cole's fix for FP numbers as strings.
2005-06-11 03:14:22 +00:00
asfernandes
3d93cdf69c
Fix possible problems with larger columns sizes noted by Claudio
2005-06-10 02:03:08 +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
arnobrinkman
8affc50d24
Fix unneeded evaluation of last item by COALESCE function, noted by Dmitry
2005-06-03 21:14:35 +00:00
asfernandes
59213efe7e
Merge INTL branch into HEAD
2005-05-27 22:45:31 +00:00
dimitr
543d0fa51b
Solved issues with EXEC PROC and input message (related to my previous changes).
2005-03-30 17:55:29 +00:00
dimitr
3f3eb11ba4
Return relation alias via API. SQLDA stays untouched for the time being.
2005-01-23 15:53:36 +00:00
skidder
c40eb08a27
Remove CURRENT_DATABASE keyword
2004-11-22 20:50:34 +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
5a33aeef91
Misc: extra semicolons do not help. :-)
2004-11-07 10:38:13 +00:00
robocop
8cb395414e
Misc.
2004-10-26 07:21:47 +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
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
2928b139ae
1.- Style.
...
2.- The const_cast is no longer needed.
2004-10-07 08:28:47 +00:00
robocop
ed17cfafbf
Style:
...
if<space>(
for<space>(
switch<space>(
while<space>(
2004-10-04 08:15:00 +00:00
dimitr
cf89467735
Let's describe literal NULLs correctly in expressions.
2004-09-04 18:24:12 +00:00
alexpeshkoff
31039a254e
next step preparing to allocate auto objects memory from appropriate pool
2004-08-16 12:28:43 +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
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
skidder
43cb0d1ce4
Y-Valve handle translation layer
2004-05-02 23:06:37 +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
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
skidder
92576263ee
Fix minor flaw in explicit nulls placement design. This change doesn't cause any
...
user-visible changes in engine behavior. Fix is critical for future development
in this area and needs to be backported in B1_5_Release.
2003-12-21 00:07:03 +00:00
robocop
9fafc348bf
const correctness
...
vars in scope
minimal interface cleanup
small bug fixes
2003-11-28 06:48:34 +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
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
robocop
bc93cc3c0b
const correctness, vars in scope, etc.
2003-10-05 06:27:16 +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
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
dimitr
f7aa490111
The final part of my little PLAN enhancement.
2003-09-14 15:37:05 +00:00
arnobrinkman
2638aa9fd7
Remove generated comment
2003-09-04 15:05:06 +00:00
arnobrinkman
4a37161c8d
Changed internally derived-table support to better readable/understanding code
2003-09-04 15:02:22 +00:00
arnobrinkman
f691e5d79c
Change types that were used as booleans to the real bool type
2003-09-03 23:52:47 +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
506b858567
Added PLAN support for derived tables
2003-08-19 23:34:23 +00:00
arnobrinkman
a19beb8922
derived table support
2003-08-14 23:34:37 +00:00
fsg
8647f177b5
make gcc happy again
...
FSG
2003-08-14 07:11:24 +00:00
robocop
c9dac29670
There are less unnamed fields now.
...
Changed the code style, too.
2003-08-13 11:09:57 +00:00
dimitr
5eaf6394d1
Some savepoint-related changes:
...
1. release single savepoint
2. fixed exception handling
2003-06-26 10:44:16 +00:00
dimitr
112c7022b6
Fixed (hopefully) savepoints implementation:
...
1) RELEASE SAVEPOINT statement is added
2) SAVEPOINT statement now re-establishes existing savepoint with the same name
3) all savepoint stuff is changed to use single BLR verb
2003-06-10 13:40:19 +00:00
brodsom
42ef1314ec
DSQL warning fixes.
2003-04-08 00:31:20 +00:00
arnobrinkman
f83a6084ed
bugfix:
...
1) bug with sub-selects inside COALESCE function.
2) bug with parameter ordering.
2003-03-31 19:11:55 +00:00
alexpeshkoff
878b0b6091
Fixed EXECUTE STATEMENT to support INTO clause
2003-03-01 19:19:23 +00:00
arnobrinkman
61ca1ca76e
comment added
2003-02-26 23:41:00 +00:00
hippoman
3643e9d8d6
* changed function comment to new forrmat
2003-02-21 00:27:16 +00:00
hippoman
1cb0c17ace
* Formated comments to make Doxygen Happy..
2003-02-15 03:01:51 +00:00
dimitr
f833079b2f
CONST -> const
2003-02-13 09:33:26 +00:00