dimitr
81466c3768
1) Fixed XCP_MESSAGE_LENGTH to represent the real max length. We have the column defined as VARCHAR(1023), so there's no need to subtract the overhead.
...
2) Slightly refactored the message buffer management.
3) Fixed the buffer overrun in the release build.
2013-07-10 11:44:39 +00:00
asfernandes
d0c79a4508
Cleanup.
2013-03-31 18:23:54 +00:00
alexpeshkoff
5c0cec6d9f
Fixed CORE-3360: update ... returning ... raises -551 (no perm to update) for a column present only in the returning clause
2013-03-11 15:43:33 +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
fc12495d0e
Modified IStatement interface in our API:
...
1. Never allocate empty statement - always use att->prepare() to create statement interface
2. Separated IStatement into 2 parts - statement itself and resultset.
3. Added stmt->openCursor() (and att->openCursor() for unprepared statements) to create IResultSet.
4. Always use IMessageMetadata (former IParametersMetadata) to pass message fromat info from client,
therefore avoiding need in BLR generation in client applications.
2013-02-17 12:08:53 +00:00
hvlad
513ce5e1ce
Additional patch for improvement CORE-3362 : Cursors should ignore changes made by the same statement.
...
- SubQueryNode (sub-select's) and RseBoolNode (exists(), in\any\all) now knows if it is a part of some outer select (ForNode) or it is a standalone statement.
- VIO\get_undo_data was reworked to better fit undo-log implementation, corresponding changes in VIO_chase_record_version also done
- AV in VIO\get_undo_data was fixed
2012-09-24 14:26:33 +00:00
asfernandes
580172419b
Misc.
2012-04-23 00:48:28 +00:00
robocop
70d5ebdfdf
- Got rid of the fixed array that kept the stream count in the first element and 255 streams after it.
...
- Changed streams from UCHAR to ULONG as Dmitry wanted
- Got rid of some redundant flags to indicate BLR level
- Misc changes (for example, converted to test for DBB_read_only in Database to a function)
- BLR v6 is left commented (waiting for a better solution to appear, if any exists)
- This change is not going to raise the engine limits until a solution is found to express more than 255 streams in BLR.
2012-04-12 09:02:13 +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
65ec2b5151
Fixed the padding of external procedure messages. Also removed obsolete checks in the touched code.
2011-08-28 18:31:44 +00:00
asfernandes
cd7c8dee95
Use the BLR message definition of external procedures and functions.
2011-07-10 01:23:53 +00:00
hvlad
60dc5dd571
Additional patch for CORE-3362 : Cursors should ignore changes made by the same statement
...
Better (i hope) fix for implicit cursors stability in PSQL
2011-03-08 09:05:28 +00:00
hvlad
69df3d720f
Additional patch for CORE-3362 : Cursors should ignore changes made by the same statement
...
Statements with more that one cursors should not create savepoint for the first cursor
2011-03-02 09:43:13 +00:00
asfernandes
2096bd7239
Refactor DSQL exceptions: nod_on_error, nod_sqlcode, nod_gdscode, nod_exception and nod_default.
2011-02-25 02:52:51 +00:00
alexpeshkoff
f89ac854ef
Getting ready to use 32 (not 31) page and transaction numbers
2011-01-21 17:55:04 +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
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
4dea3a42a1
Remove dependency of jrd_nod in ExprNode
2010-11-14 22:31:42 +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
0d19fe7688
Refactor blr_index (nod_scalar)
2010-11-08 23:17:01 +00:00
asfernandes
5ee982afb9
Refactor blr_derived_expr
2010-11-07 22:12:14 +00:00
asfernandes
a13dd3e6fe
Refactor nod_domain_validation
2010-11-07 20:26:11 +00:00
asfernandes
1d702dae81
Refactor blr_via, blr_from, blr_maximum, blr_minimum, blr_count, blr_average and blr_total
2010-11-07 02:18:58 +00:00
asfernandes
2b6106938e
Refactor variables
2010-11-02 17:05:01 +00:00
asfernandes
e65fd8fea8
1) Refactor CAST.
...
2) Fixed CORE-3204 - Constraint violation error of CAST is not raised inside views
2010-11-01 23:57:31 +00:00
asfernandes
34fcf769dd
Misc
2010-10-27 00:52:32 +00:00
asfernandes
3317eeeebc
Refactor literal values.
2010-10-24 00:26:00 +00:00
asfernandes
2e0da292df
Refactor EXTRACT
2010-10-16 18:53:25 +00:00
asfernandes
2dcef5c7ce
Refactor *_LENGTH functions
2010-10-16 18:17:00 +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
ac3c00d503
1) Refactored LOWER, UPPER and TRIM.
...
2) Fixed CORE-3174 - Expression index with TRIM may lead to incorrect indexed lookup
2010-10-09 18:39:45 +00:00
asfernandes
4d00fec2d6
Refactor parameters and GEN_ID.
2010-10-09 01:57:37 +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
asfernandes
c1b5abfdf2
1) Refactor all types of boolean nodes.
...
2) Remove the scratch from the nodes.
2010-09-17 03:15:32 +00:00
asfernandes
b7b63becf3
Refactor a number of expression nodes: nod_add, nod_divide, nod_multiply, nod_negate, nod_user_name, nod_subtract, nod_current_date, nod_current_time, nod_current_timestamp, nod_add2, nod_subtract2, nod_multiply2, nod_divide2, nod_current_role, nod_internal_info
2010-09-04 21:36:41 +00:00
asfernandes
ada671c034
Refactor nod_index and nod_bit_* to InversionNode
2010-08-31 00:20:33 +00:00
asfernandes
8f857a6deb
Refactor plan nodes to PlanNode
2010-08-29 20:20:19 +00:00
asfernandes
76ff0957fd
Cleanup
2010-08-29 18:25:55 +00:00
asfernandes
96f2829728
Refactor nod_map and nod_sort to type-safe MapNode and SortNode
2010-08-29 18:20:44 +00:00
asfernandes
588c545d17
Rework WindowSourceNode to use type-safe partitions
2010-08-25 15:52:46 +00:00
asfernandes
53d7b386fa
Move dozen of parameters of virtual/overriden function to OptimizerBlk
2010-08-25 03:10:12 +00:00
asfernandes
48d83b8fef
Refactor nod_rse, nod_relation, nod_procedure, nod_union, nod_aggregate and nod_window.
2010-08-24 03:25:01 +00:00
asfernandes
18a6a6b4f9
More consts
2010-08-13 15:22:00 +00:00
robocop
5159171578
Misc.
2010-08-12 10:32:50 +00:00
asfernandes
7b8a8065c4
More consts
2010-08-12 00:59:48 +00:00
asfernandes
8657f4b599
Better internal handling of dependencies
2010-08-11 02:59:33 +00:00
asfernandes
de5098b85d
Misc
2010-08-10 00:37:26 +00:00