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

404 Commits

Author SHA1 Message Date
dimitr
e5d1202048 Somewhat hackery fix for CORE-4201: Computed field returns null value inside BI trigger.
A better solution requires major changes and will be investigated in trunk later.
2013-09-20 08:28:41 +00:00
hvlad
8ee66e0bb0 Fixed bug CORE-4216 : Memory leak with TRIGGER ON TRANSACTION COMMIT 2013-09-16 09:17:56 +00:00
dimitr
cb1975f13c Attempted to fix a possible crash due to the wrong request pointer remaining in tdbb after sub-request execution. While being there, cleaned up some redundant code. 2013-06-19 06:26:57 +00:00
asfernandes
fc16bb34e4 Fixed crash when calling unimplemented packaged procedures. 2013-05-13 01:48:57 +00:00
asfernandes
5e53549702 Misc. 2013-04-11 16:09:46 +00:00
asfernandes
93924e08f5 Cleanup. 2013-04-11 16:04:25 +00:00
asfernandes
e0567463bf Revert external routines to request-based (*) code, but now using a totally different internal approach.
* This is not ideal IMO, but much more easier to currently support stack traces, and domain's defaults and validations.
2013-04-11 15:44:17 +00:00
alexpeshkoff
a2dd7e211f Ugly fix for CORE-4066, but looks like here g++ is too strong in type correctness. 2013-03-18 10:50:37 +00:00
dimitr
15e4367810 Small refactoring. 2013-03-17 17:35:53 +00:00
asfernandes
d8a9ec4392 Cleanup. 2013-03-10 20:38:44 +00:00
asfernandes
48fd751c6e Fixing FB_MESSAGE macro and external functions and procedures.
Isolate external routines them from request-based ones.
2013-03-04 01:42:58 +00:00
alexpeshkoff
97b4b8c2c2 Postfix for CORE-3908: Engine leaks memory and crashes when lot of autonomous transactions have been started and finished 2013-02-28 16:23:56 +00:00
dimitr
75afc9a89c Misc. 2013-01-25 12:34:54 +00:00
dimitr
e29b50f980 Front ported my yesterday's commits to trunk. 2012-12-23 07:10:56 +00:00
dimitr
cbe0f3cc54 Front ported to trunk. 2012-12-21 10:11:00 +00:00
dimitr
1a4c0c5808 1) Encapsulated the remaining external looper calls inside a SEH block. It allows to catch async exceptions coming while result set is being fetched. No performance penalty has been noticed.
2) Slightly refactored the looper call chain to avoid code duplication.
3) Fixed CORE-4010: Fetch cannot be subsequently interrupted via DELETE FROM MON$STATEMENTS.
2012-12-13 18:31:42 +00:00
dimitr
3971e49b30 Another bunch of changes for CORE-4004: Sometimes long-running operations cannot be interrupted by asynchronous shutdown / cancellation requests. The looper nodes should never ignore req_unwind and transform it to something else.
Review and testing would be appreciated, especially in regard to EXE_assignment.
2012-12-06 12:09:11 +00:00
alexpeshkoff
4ca6e669fe 1. Fixed CORE-3786: Firebird 2.5.1 Hangs on MacOSX 10.7 (Lion) on DB create after reboot.
2. Cleanup: avoid functional style in stuff exception.
2012-11-01 11:40:18 +00:00
hvlad
3ec82bdabf Fixed bug CORE-3895 : High memory usage when PSQL code SELECT's from stored procedure which modified some data 2012-07-23 09:48:23 +00:00
dimitr
0ea7ae11f3 Fixed CORE-3092: ROW_COUNT is not cleared before the singleton INSERT statement, 2012-03-15 10:40:45 +00:00
alexpeshkoff
4e795f4047 Include platform definitions file common.h in firebird.h. Use OS-specific ThreadId instead artificial FB_THREAD_ID, avoiding unneeded casts in the code. This should fix BSD and MAC ports. 2012-03-01 08:55:43 +00:00
robocop
eed418a89e Make blb resemble more a class: private data members, convert some functions into methods, add methods with code that was in other files, etc. 2012-02-15 03:34:21 +00:00
robocop
186c817caa Playing with fire: converting some static functions into member functions. I tried to check every change I did. 2012-02-07 03:17:52 +00:00
robocop
e2914070b9 Misc. 2012-01-19 04:54:39 +00:00
dimitr
887b3c13da For a number of reasons, it seems being a good thing to unwind the trigger requests ASAP. 2011-12-01 09:54:36 +00:00
asfernandes
56400c594a Rename methods to match error constants as per Claudio request. 2011-11-10 14:35:40 +00:00
asfernandes
c627005a89 Feature CORE-3626 - Subfunctions in PSQL and EXECUTE BLOCK.
Tests at http://firebird.cvs.sourceforge.net/viewvc/firebird/fbtcs/GTCS/tests/FB_SQL_SUBFUNC_1.output.

Also did:
- Refactor to share more code/data between procedures and functions.
- Fixed some PSQL functions problems.
2011-10-16 20:36:07 +00:00
asfernandes
5ae632cf0b Feature CORE-1288 - Sub Procedures.
They're very simple for now. No access to parent variables nor to call neighbour procedures.

Tests at http://firebird.cvs.sourceforge.net/viewvc/firebird/fbtcs/GTCS/tests/FB_SQL_SUBPROC_1.output.
2011-10-02 22:11:41 +00:00
asfernandes
cd7c8dee95 Use the BLR message definition of external procedures and functions. 2011-07-10 01:23:53 +00:00
asfernandes
7ad98cd292 Work in progress on the external engines API changes. 2011-06-01 01:44:54 +00:00
asfernandes
d0c2265105 Misc. 2011-05-10 01:12:14 +00:00
hvlad
fef1f49c94 Shared page cache implementation 2011-05-09 10:15:19 +00:00
robocop
43606cad9b Misc, style, etc. 2011-04-02 04:27:07 +00:00
hvlad
72c30a8823 Avoid AV when system requests are released at database shutdown 2011-04-01 15:28:07 +00:00
asfernandes
876cfc1c78 Fixed DDL trigger crash reported in fb-devel. 2011-02-11 14:26:14 +00:00
asfernandes
305b989cf8 Fixed hang found with CORE-3340 test-case. 2011-02-09 21:26:18 +00:00
dimitr
5eec5f532f Fixed CORE-3340 (Error in autonomous transaction with empty exception handler: can insert duplicate values into PK/UK column). 2011-02-09 10:59:24 +00:00
asfernandes
83d74dc2b4 Rework on line/column info support to make it faster 2010-12-05 00:55:54 +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
2b6106938e Refactor variables 2010-11-02 17:05:01 +00:00
alexpeshkoff
e05c1a825f Moved some more .h-files to common from jrd as Vlad suggested 2010-10-13 10:39:52 +00:00
alexpeshkoff
83d6a2f88c Restored a lot of changes, rolled back by me unintentionally 2010-10-12 11:36:51 +00:00
alexpeshkoff
2dc25a44bb OSRI and new posix build 2010-10-12 08:02:57 +00:00
asfernandes
4d00fec2d6 Refactor parameters and GEN_ID. 2010-10-09 01:57:37 +00:00
robocop
25b691353e Misc. 2010-09-23 09:53:50 +00:00
asfernandes
9b8171d5c1 1) Refactor nod_value_if.
2) Created ExprNode::expressionEqual method to replace a new big and ugly switch.
3) Make boolean referencers use BoolExprNode instead of jrd_nod, except nod_validate for now. This includes BinaryBoolNode and NotBoolNode working without jrd_nod references.
4) Rework in the impure allocation code (replace "csb_impure += ..." by CMP_impure calls).
2010-09-20 16:07:50 +00:00