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
robocop
d9a35f4a47
Misc: cardinality is double.
2009-10-16 07:05:51 +00:00
asfernandes
870e35d120
Argh. Fix for the second time problem with line endings
2009-10-15 16:13:40 +00:00
asfernandes
da2f4c2b6d
Added some debug code to cmp
2009-10-15 16:06:22 +00:00
dimitr
d60030074d
Just a consistency with other variables.
2009-10-05 16:06:44 +00:00
asfernandes
398975b940
Misc
2009-08-20 01:32:24 +00:00
robocop
1816523040
Comments.
2009-08-16 06:23:19 +00:00
asfernandes
4759973045
Fixed CORE-2576 - Server may crash parsing wrong or truncated BLR
...
Full rebuild required - CMP_compile2 prototype changed
2009-08-02 04:10:07 +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
9e0c4f06f2
Misc
2009-04-04 16:28:33 +00:00
robocop
a730fbf074
Get rid of more typedefs.
2009-04-03 10:07:55 +00:00
robocop
95292d1731
Style.
2008-12-20 08:12:19 +00:00
asfernandes
ff5f8745fb
Remove trailing spaces (.h files)
2008-12-05 00:56:15 +00:00
asfernandes
cf7ae27db5
Fixed CORE-1432 - Collation not propagated between record formats
2008-11-30 18:55:52 +00:00
asfernandes
3ed6c880b9
Misc
2008-09-10 15:46:58 +00:00
asfernandes
b550749a47
Fixed CORE-1246 - Incorrect column values with outer joins and derived tables
2008-09-07 19:44:48 +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
alexpeshkoff
13a15d4bfe
1. Final fix for CORE-1964 - finished vararg cleanup in jrd.
...
2. Generic cleanup of error reporting functions all around engine.
2008-08-27 12:20:47 +00:00
asfernandes
84da641b55
Fixed CORE-2034 - Problems related to CORE-1254 (Problem with DISTINCT and insensitive collations) re. UNICODE insensitive collations with DISTINCT or GROUP BY.
2008-08-08 01:44:42 +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
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
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
asfernandes
4343cbfeba
Do the same kind of cleanup in jrd/pass1 as done for "proc_flag" in dsql/pass1 - recursive passing the same parameters that is changed in specific situations makes difficult to understand the logic.
2008-05-18 01:02:35 +00:00
robocop
e44a99f339
Style and minor cleanup.
2008-05-10 03:44:57 +00:00
hvlad
5f8774827c
Better and simpler fix for bug CORE-1884.
2008-05-06 12:15:09 +00:00
hvlad
c3e8b5c75b
Fixed bug CORE-1884 : Random AVs using stored procedures with expressions as default values of input parameters
2008-05-06 07:06:06 +00:00
asfernandes
53a2090f65
Misc
2008-04-27 02:39:51 +00:00
robocop
b70fc21329
Collapse some lines of repetitive code.
2008-04-24 10:56:57 +00:00
hvlad
fe3f8c184b
New EXECUTE STATEMENT with support of external data source implementation
2008-04-09 20:18:47 +00:00
dimitr
f5659c0b70
1) Major cleanup of the old-style blk and allocator-based blk_type.
...
2) Added synchronization for the JRD locks.
2008-03-19 16:19:56 +00:00
robocop
b4091ac9a6
Make them explicit.
2008-03-10 08:16:57 +00:00
robocop
e39885c7fb
Misc.
2008-03-02 08:45:41 +00:00
dimitr
99caa91b85
DSQL integration into the engine.
2008-02-28 13:48:16 +00:00
asfernandes
46c115411a
Fixed CORE-1254 - Problem with DISTINCT and insensitive collations
2008-02-09 15:19:21 +00:00
dimitr
e3128c2479
The merge continued.
2008-01-16 08:54:50 +00:00
alexpeshkoff
bd51630b00
Optimized code for domain-based variables (and procedure arguments)
2007-12-08 13:41:26 +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
dimitr
914ddbb957
Fixed CORE-1549.
2007-10-29 17:56:28 +00:00
robocop
fa1538a1ae
Minor changes in MetaName usage.
2007-08-26 09:05:29 +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
asfernandes
0f4663dc1a
Fixed CORE-1318 - Error "Identifier ... is too long using multiple (nested) derived tables.
...
Front-ported fix done by Alex in 2.0.
2007-06-13 01:53:00 +00:00
asfernandes
c97d57013e
Fixed CORE-1253 - LIST(DISTINCT) concatenate VARCHAR values as CHAR
2007-05-11 02:07:36 +00:00
asfernandes
cfe0ad95cf
Fixed CORE-1227 - LIST() function seems not work if used twice or more in a query
2007-05-05 19:28:46 +00:00
asfernandes
f7b7f2b96f
Some changes as per Claudio comments
2007-04-16 15:31:28 +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
asfernandes
05e6ebd58c
Check constraints when reading variables/parameters only if it's the first read and it's wasn't assigned yet
2007-02-06 14:25:10 +00:00
robocop
8a06c80028
Simplification and indentation.
2007-01-21 07:46:41 +00:00
asfernandes
f30ee6b63e
Use debug informations in EXECUTE BLOCK
2007-01-20 14:18:18 +00:00
alexpeshkoff
e79660bca6
fixed gcc warning
2007-01-20 14:07:18 +00:00
asfernandes
aca179f398
Full domain support and NOT NULL in PSQL
2007-01-17 01:19:01 +00:00
dimitr
8ea7c4f915
A bit different fix for CORE-1004 in HEAD. Experimental.
2006-12-12 16:12:15 +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
1d422a8330
1) Refactor intl_classes.h and intl.cpp
...
2) Make conversions from CharSet1->UTF16->CharSet2 job of CsConvert class
2006-10-10 19:40:33 +00:00
asfernandes
55ec30965d
REPLACE statement
2006-09-03 01:09:23 +00:00
asfernandes
e538061c38
Implementation of CREATE/DROP COLLATION and ISQL show/extraction of collations
2006-08-07 16:39:21 +00:00
hvlad
b20aa92714
Common table expressions implementation
2006-08-01 20:37:58 +00:00
hvlad
8e14bc4f1e
Move relation stuff from jrd.h\vio.cpp into new Relation.h\Relation.cpp
...
by request of Claudio and Dmitry
2006-05-30 13:29:24 +00:00
asfernandes
3b54c24652
Let LOWER/UPPER (blob) work - returning a blob
2006-04-16 18:45:40 +00:00
dimitr
d2f823b821
Fixed yet another bug in cursors. Will this ever end? :-)
2006-03-29 17:47:50 +00:00
dimitr
6c1e162151
Fixed a minor regression in the permission checking logic.
...
Let's first check the relation privileges and only then the column ones.
2006-03-28 09:36:22 +00:00
alexpeshkoff
95911b4842
fixed memory leak - SF#1422471
2006-03-10 17:46:18 +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
robocop
1f84bac700
Mark unused data members, discover more code associated to conditional compilation, clean some places, replace custom loops by memcpy and memset when possible, etc.
2006-02-23 05:08:26 +00:00
robocop
3389149564
The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
...
Tenth step: some code was tagged PC_ENGINE but was for SCROLLABLE_CURSORS instead, hence restore it. Also, clean unused data members, obsolete BLR verbs and the like.
2006-02-07 08:08:49 +00:00
robocop
eb9bec4b32
More scrollable cursors related code.
2006-02-03 08:37:14 +00:00
robocop
29a6749c22
Misc.
2006-02-02 07:40:42 +00:00
robocop
f00fc0ff56
1.- Make "vec" type safe and get rid of several code contortions. Fix some small bugs meanwhile.
...
2.- Put inside PC_ENGINE several data members that belong to that feature.
3.- Put inside PC_ENGINE the code that does cleanup on those unused data members.
2005-12-02 07:35:34 +00:00
dimitr
868a5bb21f
Better (and more honest) diagnostics.
2005-10-21 09:43:26 +00:00
dimitr
e5a151aff8
1) Fixed csb_validation which was defined in a wrong flags group.
...
2) Renumbering and cleanup.
2005-09-08 10:08:18 +00:00
dimitr
15874a6ed9
Added optional seconds precision to CURRENT_TIME and CURRENT_TIMESTAMP
...
as agreed with Ann and others times ago.
2005-08-24 09:16:19 +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
asfernandes
59213efe7e
Merge INTL branch into HEAD
2005-05-27 22:45:31 +00:00
alexpeshkoff
5729790ed6
1. Applied class MetaName
...
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
dimitr
4ec439dd14
1) Deliver trigger type to the compiler level
...
2) Disallow NEW context assignments for POST-triggers
2005-03-28 21:52:55 +00:00
dimitr
4cf01bd4a2
Cleanup.
2005-02-01 20:05:02 +00:00
robocop
73c5351bb7
1.- Misc.
...
2.- Use constants instead of harcoded positions in node's arguments.
2005-01-21 08:36:06 +00:00
robocop
4012106884
Misc.
2004-12-25 09:44:03 +00:00
skidder
c40eb08a27
Remove CURRENT_DATABASE keyword
2004-11-22 20:50:34 +00:00
hvlad
1f30165bf0
1. Use isc_stack_trace instead of isc_random
...
2. Correct exception handling when dynamic string is used. See comments in exe.cpp
2004-11-18 13:58:46 +00:00
dimitr
b741e2c136
Fixed bugs SF #459059 and #543106 .
2004-11-17 19:33:11 +00:00
hvlad
3592c54752
Enlarge exception messages from 80 to 1023 bytes
2004-11-17 12:19:18 +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
skidder
02a0915156
Teach engine to work with larger record numbers - 64-bit internally, 40-bit externally
2004-09-28 06:28:38 +00:00
robocop
949830d0c6
1.- const correctness
...
2.- style
3.- Try to fix the mess caused by different data types used to represent bifields of SCL_ constants defined in scl.h,
first round. No circular dependencies found through MSVC. Still pending dyn* and grant.epp files.
2004-06-29 04:37:59 +00:00
skidder
7e8a640bdc
Disable debugging code unintentionally enabled in previous commit
2004-06-26 22:17:33 +00:00
skidder
9c03314ebc
Be slightly more explicit in our memory allocation desires. Also fix savepoints breakage
2004-06-26 22:12:50 +00:00
skidder
2915fcf547
Somewhat simplify invariant tracking stuff. It is more pessimistic now, but should work more reliably when invariants are modified (see QMDB tests for details)
2004-06-25 22:12:20 +00:00
brodsom
64c1dee04e
-Use C++ struct declaration style.
2004-05-24 17:31:47 +00:00
robocop
802f244ec1
Misc changes
2004-05-09 05:48:33 +00:00
brodsom
10e0822cbb
Replace define for constants
2004-04-29 00:50:02 +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
skidder
abdbec6f84
Switch to Firebird container templates for request resource tracking. This significantly reduces CPU time any memory consumption for databases with complex metadata
2004-04-18 02:50:38 +00:00
alexpeshkoff
0acfd46d50
better memory allocation for csb_idx_allocation
2004-04-04 08:25:40 +00:00
alexpeshkoff
98aebc619a
changed csb_index_allocation to Array from str
2004-04-01 16:32:54 +00:00
alexpeshkoff
4650f4975f
string cleanup
2004-03-31 18:03:51 +00:00
robocop
faa41f7b3b
Cleanup
2004-03-30 04:10:52 +00:00
robocop
1824343930
Cleanup.
...
Fixed a linking error with MSVC6, too.
2004-03-28 09:10:30 +00:00
alexpeshkoff
7007d6f2a4
1. introduced Jrd and Ods namespaces
...
2. cleanup of blk* request conversions
3. fixed memory allocation in Execute Statement
2004-03-20 14:57:40 +00:00