hvlad
dca44e309d
Make it compiles on Windows after Alex's changes. MSVC10 build will follow later.
2011-01-24 12:51:32 +00:00
asfernandes
0b08d20b3f
Misc
2011-01-23 00:32:42 +00:00
asfernandes
23ae9f62e8
Refactor DSQL's BREAK, LEAVE and CONTINUE.
2011-01-22 21:32:29 +00:00
asfernandes
f0586b01eb
Refactor DSQL's nod_join and nod_union.
2011-01-22 20:40:04 +00:00
asfernandes
ffb28dfc3d
Misc
2011-01-22 17:15:52 +00:00
alexpeshkoff
fc41c54a62
warnings
2011-01-21 17:16:13 +00:00
hvlad
8e4755b20f
Front ported fix for bug CORE-3282 : EXECUTE STATEMENT parses the SQL text using wrong charset
2011-01-21 10:03:17 +00:00
dimitr
075bb76c5b
Fixed CORE-3311: Error "data type unknown" while preparing UPDATE/DELETE statements with the parameterized ROWS clause.
...
Cleanup.
2011-01-20 04:41:10 +00:00
dimitr
51b33d7a9c
Totally misc.
2011-01-19 07:54:19 +00:00
alexpeshkoff
d6fcde387b
New plugin manager. Use it for all types of plugins.
2011-01-14 17:31:40 +00:00
asfernandes
123aa675ab
Refactor nod_aggregate, nod_relation, nod_rse, nod_derived_table, nod_query_spec and nod_limit
2011-01-09 21:58:56 +00:00
dimitr
46b8ec1e14
Fixed CORE-3302: Distinct aggregates return wrong (duplicated) data.
2011-01-07 11:32:45 +00:00
asfernandes
bc79fc1223
Make UNKNOWN a boolean value/test, and not something exactly like NULL
2010-12-27 00:34:31 +00:00
asfernandes
0b1fa97b4a
Refactored the DSQL support of cursor statements, execute procedure and execute statement
2010-12-23 18:42:06 +00:00
asfernandes
4a9f98bed7
Refactor DSQL's nod_field
2010-12-19 21:42:32 +00:00
asfernandes
667caf5257
Fix comparation problem with boolean and NULL
2010-12-19 18:57:17 +00:00
asfernandes
c9ec26c0c3
Feature CORE-726 - Boolean data type
2010-12-18 02:17:06 +00:00
asfernandes
f9f3553b5e
Fixed the crash about NEXT VALUE FOR reported in fb-devel
2010-12-16 21:11:01 +00:00
asfernandes
c268c1f25c
Fixed CORE-2204 - Constraints on SP output parameters are checked even when the SP returns zero rows
2010-12-05 16:49:24 +00:00
asfernandes
5e95a16141
Use the impure space of string variable in a consistently (first or subsequent request execution) and optimized (no double allocation) way
2010-12-05 14:44:28 +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
62054b859e
Improvement CORE-3234 - Support for text BLOBs >= 32K as first argument for TRIM()
2010-11-30 15:11:42 +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
a7266ec9d1
Correction
2010-11-23 14:30:39 +00:00
asfernandes
c5ce09d676
Misc
2010-11-22 23:47:16 +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
hvlad
65b8817aa8
Fixed compiler errors
2010-11-19 15:47:25 +00:00
hvlad
d3d459c93b
Fixed bug CORE-3219 : trace manager crash server with DSQL_unprepare
2010-11-19 14:37:56 +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
dimitr
8e7ef4214d
Let's clearly distinguish between deterministic and invariant functions, they're not the same thing actually. Runtime optimization usage is to be re-considered, if necessary.
...
Warning: this includes an ODS change, please boot-build.
2010-11-13 15:04:43 +00:00
dimitr
7eded400e8
Let's clearly distinguish between deterministic and invariant functions, they're not the same thing actually. Runtime optimization usage is to be re-considered, if necessary.
...
Warning: this includes an ODS change, please boot-build.
2010-11-13 15:03:44 +00:00
dimitr
b6752fe29b
Fixed inability to alter the [[NOT] DETERMINISTIC] clause.
2010-11-13 08:54:36 +00:00
asfernandes
9086a900bb
1) Frontport fix for CORE-3222 - View with "WITH CHECK OPTION" doesn't like TRIM function in WHERE
...
2) Other related fix and cleanup
2010-11-11 00:05:49 +00:00
asfernandes
09c2b87a0c
Warnings
2010-11-09 15:03:33 +00:00
asfernandes
0d19fe7688
Refactor blr_index (nod_scalar)
2010-11-08 23:17:01 +00:00
dimitr
3795bcdd64
Fixed CORE-3029: Bugcheck "Too many savepoints (287)" at rollback after exception at EXECUTE BLOCK with exception handler.
2010-11-08 16:37:07 +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
695406060d
Cleanup: removed thisNode parameter from make and setParameterType methods
2010-11-07 03:03:41 +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
045c090a38
Misc
2010-11-06 18:56:46 +00:00
asfernandes
195e8e879c
Cleanup: nod_average2 and nod_total2 was very broken
2010-11-05 14:31:08 +00:00
asfernandes
f3277d0775
Fixed CORE-3211 - String truncation occurs when selecting from a view containing NOT IN inside
2010-11-04 01:03:40 +00:00
asfernandes
2b6106938e
Refactor variables
2010-11-02 17:05:01 +00:00
dimitr
ec8e31604e
Fixed SET TRANSACTION statement.
2010-11-02 09:35:48 +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
58604d5d68
Back the generic usage of nod_desc by a call to MAKE_desc
2010-11-01 13:45:52 +00:00
asfernandes
4abbf0bf16
Correction
2010-11-01 11:55:21 +00:00
alexpeshkoff
131c6f3f4d
Fixed segfault in dsql_prepare
2010-11-01 10:46:31 +00:00
asfernandes
51f4b27991
Simplify the internal "null replacement" logic
2010-11-01 00:42:12 +00:00
dimitr
d15dc50d1e
Fixed CORE-3205: isc_dsql_exec_immed2() doesn't return error codes isc_stream_eof and isc_sing_select_err.
...
Also, restore the legacy behavior for EXECUTE PROCEDURE and RETURNING queries. This is expected to fix CORE-3203.
2010-10-31 11:26:52 +00:00
asfernandes
dde217e91f
Make node creation more directly
2010-10-30 18:57:53 +00:00
asfernandes
fef5242b4f
Misc
2010-10-30 16:51:19 +00:00
asfernandes
c46f5cf800
Misc
2010-10-29 00:28:35 +00:00
asfernandes
097426ffc1
Fixed CORE-3140 - Preserve comments for parameters after altering procedures
2010-10-29 00:23:18 +00:00
asfernandes
b5cfdbf513
Misc
2010-10-27 00:32:58 +00:00
asfernandes
5b895c2931
Misc
2010-10-24 21:35:45 +00:00
asfernandes
3317eeeebc
Refactor literal values.
2010-10-24 00:26:00 +00:00
asfernandes
16ff0c51ce
Refactor NULL expression
2010-10-22 15:00:22 +00:00
asfernandes
5c7e5ce634
Misc
2010-10-22 01:24:31 +00:00
asfernandes
43aeec0a64
Fixed CORE-3180 - ALTER VIEW with not matched columns in declaration and selection crashs the server
2010-10-17 14:22:53 +00:00
asfernandes
c24aac9046
Misc
2010-10-16 18:56:11 +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
asfernandes
aa78df6f91
Refactor SUBSTRING
2010-10-16 17:42:04 +00:00
asfernandes
38ba5852ae
Cleanup: remove blr_prot_mask and blr_lock_state support
2010-10-16 15:34:52 +00:00
alexpeshkoff
e05c1a825f
Moved some more .h-files to common from jrd as Vlad suggested
2010-10-13 10:39:52 +00:00
asfernandes
91384eb587
Misc
2010-10-12 17:40:27 +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
dimitr
4d66b4e1ac
Fixed problems with recursive PSQL functions. Minor refactoring.
2010-10-08 09:39:34 +00:00
asfernandes
05a37a0de2
Fixed CORE-3164 - Parameterized requests involving blob fields fails when connected using charset UTF8
2010-10-06 15:25:50 +00:00
asfernandes
2227426f2e
Sub-task CORE-3147 - Fix SUBSTRING(SIMILAR) in regard to initial and final shortest matching specified in the standard
2010-10-03 00:50:17 +00:00
dimitr
0a34f7c97a
Fixed one of the problems with PSQL functions reported by Vlad privately.
2010-09-27 12:29:49 +00:00
asfernandes
b49391c8d0
Misc
2010-09-25 23:08:18 +00:00
asfernandes
746c032c90
Misc things seen by Claudio
2010-09-25 20:26:05 +00:00
hvlad
1ea9da3073
Fixed SIMILAR TO syntax
2010-09-24 14:55:45 +00:00
robocop
98a2c6822d
Warnings.
2010-09-24 09:53:51 +00:00
robocop
2bcc48445f
Misc.
2010-09-24 08:33:22 +00:00
robocop
bca99bc9f0
Misc.
2010-09-23 09:48:42 +00:00
robocop
b64fefb4d9
Misc.
2010-09-23 09:47:15 +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
3d184eef7f
Simplificate repetitive code
2010-09-18 18:19:21 +00:00
asfernandes
ac5f03d17d
Correction
2010-09-18 18:18:35 +00:00
asfernandes
477091ebcc
Misc
2010-09-18 15:56:54 +00:00
asfernandes
57d222bb0a
Fix problem with view WITH CHECK OPTION present since the introduction of ExprNode
2010-09-17 14:42:11 +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
6d71560588
Misc
2010-09-07 16:17:05 +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
96f2829728
Refactor nod_map and nod_sort to type-safe MapNode and SortNode
2010-08-29 18:20:44 +00:00
asfernandes
52a4c39f41
1) Separate DsqlCompilerScratch in its own files.
...
2) Move BlockNode functionality to it.
3) Move some related CTE functions to it.
2010-08-27 02:18:00 +00:00
dimitr
20a01d5d3a
Fixed incomplete processing of UDF arguments, causing server crashes.
2010-08-24 11:58:44 +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
7b8a8065c4
More consts
2010-08-12 00:59:48 +00:00
asfernandes
38a4fb7be2
Misc
2010-08-11 15:33:06 +00:00
asfernandes
8657f4b599
Better internal handling of dependencies
2010-08-11 02:59:33 +00:00
asfernandes
4cb0195ee6
Misc
2010-08-10 15:20:20 +00:00
asfernandes
de5098b85d
Misc
2010-08-10 00:37:26 +00:00
asfernandes
4c9eb2c3ce
Correct double indirection (jrd_nod**) so const cascades to every dereference
2010-08-09 16:06:23 +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
robocop
4677d74e9b
Misc.
2010-08-09 11:50:12 +00:00
asfernandes
a539537002
Correction for CORE-3090
2010-08-07 02:43:29 +00:00
asfernandes
7f3dc62888
Frontport fix for CORE-3090 - Incorrect LEFT JOIN result using table and derived constant subquery
2010-08-07 02:10:08 +00:00
asfernandes
173b23109c
1) Better organization between request and statement. 2) Consts.
2010-08-05 15:55:49 +00:00
asfernandes
124e614654
Simplification
2010-08-05 00:47:06 +00:00
asfernandes
c27a73a1c2
Misc: "explicit" with more than one parameter is unnecessary
2010-08-04 02:22:09 +00:00
asfernandes
942ca7d501
Correction for ALTER PACKAGE source code storage
2010-08-04 01:48:12 +00:00
asfernandes
86c406f2c7
Use RecreateNode in package commands
2010-08-04 01:41:25 +00:00
asfernandes
9e05b7f43b
Corrections
2010-08-03 01:09:39 +00:00
asfernandes
88047fb610
Fix GCC build
2010-08-02 23:13:06 +00:00
asfernandes
2def39c746
Suggestions of Claudio
2010-08-02 15:58:29 +00:00
asfernandes
9c3eccef94
Create template for RECREATE commands
2010-08-02 15:47:36 +00:00
asfernandes
ad57aa29a1
Refactor CREATE/ALTER/CREATE OR ALTER/RECREATE VIEW and cleanup related to previously refactors
2010-08-02 02:22:26 +00:00
asfernandes
9a946aea74
Fix problem noticed by Claudio
2010-07-30 14:13:54 +00:00
asfernandes
3197757f00
Rename misleading TriStateType class name to Nullable
2010-07-29 00:20:53 +00:00
asfernandes
36f092fe0e
Improvement CORE-3085 - Add clause ALTER DOMAIN <name> [NOT] NULL
2010-07-28 16:14:20 +00:00
asfernandes
0b7c21172a
Refactor CREATE/ALTER/DROP/RECREATE TABLE and DROP VIEW commands
2010-07-26 02:37:57 +00:00
dimitr
706ba623a7
Get rid of the annoying warnings.
2010-07-13 11:03:55 +00:00
asfernandes
4db389758f
Refactor CREATE/ALTER/CREATE OR ALTER/RECREATE/DROP EXCEPTION commands
2010-07-11 18:21:42 +00:00
robocop
ee99b63cc6
Misc.
2010-07-06 09:10:27 +00:00
asfernandes
20b0bbaf82
Refactor CREATE/ALTER/DROP DOMAIN
2010-07-06 00:49:33 +00:00
dimitr
fc70141a07
Fixed CORE-3064: Using the procedure alias inside an explicit plan crashes the server.
2010-07-02 10:43:33 +00:00
robocop
4edd547b17
Misc.
2010-06-30 08:55:16 +00:00
asfernandes
fc00a3d58d
Cleanup
2010-06-26 02:50:07 +00:00
asfernandes
7851a943c3
Misc
2010-06-26 02:30:01 +00:00
asfernandes
f2c938d9fa
Refactor CREATE/DROP COLLATION
2010-06-26 01:52:06 +00:00
asfernandes
49f4b30879
Misc
2010-06-22 00:56:53 +00:00
asfernandes
75af3ccf65
Misc/cleanup
2010-06-22 00:53:35 +00:00
asfernandes
56c738c09d
Misc
2010-06-20 23:11:17 +00:00
asfernandes
dd5940a616
Improvement CORE-3057 - Allow the usage of blobs in COMPUTED BY expressions
2010-06-20 14:49:34 +00:00
asfernandes
6249162c4e
Fixed CORE-3047 - Wrong logic is used to resolve EXECUTE BLOCK parameters collations
2010-06-20 03:11:05 +00:00
asfernandes
d7883e750d
Fixed CORE-3047 - Wrong logic is used to resolve EXECUTE BLOCK parameters collations
2010-06-20 03:09:25 +00:00
asfernandes
fbd5ef3f96
Cleanup
2010-06-18 16:48:33 +00:00
asfernandes
4b8301fb52
Change suggested by Claudio
2010-06-17 16:06:54 +00:00
asfernandes
12079f5ece
Created class BlrWriter and reorganization (move BLR generation from statement to scratch)
2010-06-17 01:18:40 +00:00
alexpeshkoff
a9446e6740
Fixed segfault during DEV_BUILD
2010-06-16 12:44:43 +00:00
asfernandes
a9adf6d626
1) Refactor PSQL support in DSQL. This started as subprocedure implementation, but I'm now separating things.
...
2) Fix thrown of isc_bad_default_value
2010-06-15 16:07:58 +00:00
asfernandes
ab834d2ec1
Fixed CORE-3038 - The insert failed because a column definition includes validation
2010-06-12 16:28:11 +00:00
asfernandes
22e99e49ce
Improvement CORE-3020 - Add clause RETURNING ... INTO ... to MERGE statement
2010-06-10 02:03:03 +00:00
asfernandes
3cef55490c
Subtask CORE-2996 - Fix error code incompatibility introduced in fix for CORE-2552
2010-05-07 15:24:53 +00:00
skidder
6c83079b27
As per Dmitry's comment, remove DSQL debugging facility from PROD_BUILD. Remove its documentation from firebird.conf. We don't want users to learn too much about the engine internals
2010-05-02 08:48:22 +00:00
asfernandes
ccd83436a1
Misc
2010-05-01 17:34:46 +00:00
skidder
f540236674
Re-introduce access to DSQL debugging facility accidentally made inaccessible by Dmitry Y. during Firebird 2.5 development cycle. Also document it firebird.conf and enable it in PROD_BUILD. It is rather hard to debug DSQL compiler issues without intermediate trace output.
2010-05-01 13:47:39 +00:00
robocop
9eaa31856a
Cleanup.
2010-04-29 05:15:57 +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