8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-30 19:23:03 +01:00
Commit Graph

38 Commits

Author SHA1 Message Date
dimitr
c8d6349c77 Replace a verb-cleanup bugcheck with regular error + transaction invalidation. 2015-02-03 16:31:05 +00:00
alexpeshkoff
ba62ee9947 Make it build on windows, work in progress - boot build is working 2014-09-29 17:24:30 +00:00
asfernandes
93924e08f5 Cleanup. 2013-04-11 16:04:25 +00:00
hvlad
fef1f49c94 Shared page cache implementation 2011-05-09 10:15:19 +00:00
asfernandes
9c42d4e5af Finish the statements refactor in the engine. Get rid of jrd_nod. 2010-12-04 22:15:03 +00:00
asfernandes
bcbc1ed46e Move some previously static functions to StmtNodes.cpp 2010-11-29 14:54:07 +00:00
asfernandes
8af7ec0211 Refactored the support for blr_handler, blr_loop, blr_exec_sql, blr_exec_into, blr_exec_stmt,
blr_start_savepoint, blr_end_savepoint, blr_store, blr_store2, blr_erase, blr_modify,
blr_modify2, blr_exec_proc, blr_exec_proc2, blr_exec_pid, blr_dcl_cursor, blr_cursor_stmt,
blr_set_generator, blr_receive, blr_stall, blr_select, blr_block, blr_error_handler,
blr_label, blr_leave, blr_continue and the source info node.
2010-11-29 02:17:04 +00:00
asfernandes
a3064848d6 Make ExprNodes and RecordSourceNodes reference others directly instead of via jrd_nod.
Store ValueExprNodes instead of jrd_nod in the metadata cache.
Make RecordSourceNode child of ExprNode as they share most operations.
Get rid of the JRD visitors in favor of direct calls.
Convert assignments statement lists created inside expressions to separate source and targets ValuesExprNodes.
2010-11-21 03:47:29 +00:00
asfernandes
3eb252ec5f Refactored DSQL nodes: nod_derived_field, nod_map, nod_dbkey and nod_rec_version.
Refactored JRD nodes: blr_field (JRD side only), blr_dbkey, blr_record_version and blr_stmt_expr.
2010-11-14 17:25:48 +00:00
asfernandes
dadc0f560c Const correction for EVL, EXE and they subsystems. Adjustments to CMP and OPT. 2010-08-09 15:48:51 +00:00
asfernandes
0c47a04538 1) Use RAII with the non-cached requests.
2) Change GPRE generated code to something that fits the future SMP-aware engine, replacing calls of "request = CMP_compile2(...)" by "request.compile(...)". Boot build required.
2010-04-19 22:49:18 +00:00
asfernandes
4763533669 Refactor jrd_req into JrdStatement (shared part) and jrd_req (execution of a statement).
Fixed some bugs found in the way.
2010-04-18 22:19:11 +00:00
asfernandes
39498cb65b Use AutoCacheRequest in all cacheable system requests. Fixes some request leakages. 2010-04-18 15:04:52 +00:00
asfernandes
378caea05e Use AutoCacheRequest for DYN requests 2010-04-18 01:10:05 +00:00
asfernandes
0762519962 Misc 2010-04-09 00:53:31 +00:00
dimitr
871ffb24d3 Extending the message size limit from 64K to 4G. First stage. 2010-04-08 11:14:57 +00:00
dimitr
e6909de7f7 Wipe out the SCROLLABLE_CURSORS code + minor cleanup.
Also, surfaced scrollability for PSQL cursors (without internal support yet).
2009-10-31 06:25:01 +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
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
dimitr
99caa91b85 DSQL integration into the engine. 2008-02-28 13:48:16 +00:00
asfernandes
81f1f817e2 Fixed CORE-1331 - Charset transliterations don't work with EXECUTE STATEMENT 2007-06-23 18:48:27 +00:00
asfernandes
032a4b170c Don't leak memory after conversion to blob for store the value in a variable or parameter 2007-03-24 03:00:22 +00:00
asfernandes
570b6cd4b4 1) CORE-645 and CORE-745: Database triggers
2) CORE-711: Make syntax for "CREATE TRIGGER" compliant with SQL2003
2006-11-05 18:30:36 +00:00
robocop
2b99e764e3 The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
Sixth step: remove the places protected by the macro PC_ENGINE. More to come. (I guess all of you who have pending functional changes to post will love this commit. <g>)
2006-02-02 07:32:07 +00:00
robocop
628b088d2c Treat string literals and string constants with more respect. 2004-11-10 04:26:45 +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
robocop
2ab1f94dd2 Cleanup
Some minor corrections
Second step to rename
2004-03-11 05:04:26 +00:00
robocop
5c3c8abd9a Big cleanup.
God have pity on platform maintainers.
I only can compile/test Win32; sorry, folks.
2004-02-20 06:43:27 +00:00
skidder
e0ecc4583c Finish fixing class/struct inconsistencies. Firebird now builds using MSVC2003 2003-11-30 19:13:42 +00:00
dimitr
63809c18b8 1) Make view fields unconditionally updatable
2) Make views updatable only directly or via the triggers
3) Cleanup
2003-11-09 09:51:02 +00:00
robocop
db77ffa605 const correctness, variables in scope, cleanup, etc. 2003-11-07 08:06:35 +00:00
brodsom
89e8f89f86 Extern "C" cleaning 2003-11-06 03:03:36 +00:00
aafemt
7b89091d39 'struct' cleanup 2003-11-04 11:35:51 +00:00
brodsom
2aeb693d06 extern cleaning
removing underscores in macros
DLL_EXPORT cleaning
2003-10-03 01:53: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
tamlin
9a776a604e First steps towards a C++ conversion. 2001-05-23 13:26:42 +00:00