Adriano dos Santos Fernandes
c5f8e6ca46
Avoid calls to JRD_get_thread_data.
2017-11-26 18:58:25 -02:00
Adriano dos Santos Fernandes
63a03dfc8f
Remove pool reference and children lists in each node.
...
Children lists will be created and destroyed on demand.
2017-11-26 18:58:25 -02:00
Dmitry Yemanov
40c7b29245
Improvement CORE-4529: Allow to use index when GROUP BY on field which has DESCENDING index
2017-11-23 15:49:30 +03:00
Adriano dos Santos Fernandes
d731f5d571
Misc.
2017-03-27 23:10:48 -03:00
Dmitry Yemanov
5dd8daf181
Yet another attempt to address CORE-5456 / CORE-5457 properly. This time sub-routines should be fixed too.
2017-03-22 13:04:12 +03:00
Dmitry Yemanov
214921b3e6
Rework CORE-5456 / CORE-5457 by reverting back to the v2.5 logic. Previous attempts succeeded only partially.
2017-03-22 13:03:46 +03:00
Adriano dos Santos Fernandes
09c2dc164b
Usage of C++11 strongly typed enum.
2016-09-23 15:28:03 -03:00
Adriano dos Santos Fernandes
a9378178fd
Feature CORE-5346 - Window Function: named window.
2016-09-23 13:43:10 -03:00
Adriano dos Santos Fernandes
41d24deb26
Feature CORE-3647 - Window Function: frame (rows / range) clause. Readme to be done.
...
Also updated README.keywords of others features.
2016-09-02 15:20:01 -03:00
Dmitry Yemanov
1fef2e605a
Fixed CORE-4985: Non-privileged user can implicitly count records in a
...
restricted table.
2016-03-23 18:24:22 +03:00
Adriano dos Santos Fernandes
c2d7536030
Fixed CORE-5153 - Regression: Server crashes when aggregate functions are used together with NOT IN predicate.
2016-03-21 12:28:06 -03:00
alexpeshkoff
139331c7e3
Enhanced memory leaks search - changed FB_NEW to FB_NEW_POOL,
...
plain new to FB_NEW, making allocated with it blocks tagged with file/line.
Make related code slightly better readable.
2015-10-12 14:26:00 +00:00
dimitr
7f12f4ef9c
Fixed CORE-4107: wrong resultset (subquery + derived table + union).
2015-07-12 17:54:11 +00:00
asfernandes
f9bc6e1736
Add code to print the parser/executable tree to XML for debugging purposes.
2015-06-05 18:26:36 +00:00
dimitr
7d802db4f5
Avoid metadata lookups while retrieving the plan (especially important in ASTs).
2014-07-30 09:50:33 +00:00
asfernandes
86487fda92
Misc.
2014-07-20 02:19:06 +00:00
skidder
7c743fc291
Fix build warnings
2014-07-17 18:48:46 +00:00
robocop
cadd8accc4
Implemented STEP for generators/sequences and took the opportunity to make the blrOp param const. Please rebuild the databases.
2014-04-09 02:28:38 +00:00
dimitr
bd410d08aa
Fixed refactoring errors that caused some optimizer regressions. Also, simplified code a little.
2014-02-09 15:58:33 +00:00
dimitr
15113ae2dd
Resolved CORE-1482: Make optimizer to consider ORDER BY optimization when making decision about join order.
...
Also, improved (hopefully) cost calculation for navigational retrievals.
2014-01-05 19:40:07 +00:00
asfernandes
d684e4a2f5
Fixed assert reported by Vlad more some related problem.
2012-09-24 01:40:44 +00:00
asfernandes
07747144f7
Unify DSQL/JRD sub-nodes.
2012-05-03 16:43:29 +00:00
asfernandes
a2b389f1db
Getting rid of dsql_nod.
2012-04-25 01:42:47 +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
alexpeshkoff
11843afcd4
Fixed snapshot's build using gcc 4.4
2012-04-12 07:54:54 +00:00
asfernandes
2f3d4918da
Refactored nod_rows.
2012-04-07 04:21:46 +00:00
asfernandes
617ef670ed
Refactored nod_select_expr, nod_with and nod_list (union).
2012-04-07 03:03:28 +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
21cd78a0fd
Cleanup: unused functions, parameters & variables.
2012-01-24 03:37:43 +00:00
asfernandes
965bf3f159
Fixed the problem with windowed functions in recursive CTEs, reported by Frank Ingermann in fb-devel.
...
This fix is complementary to the one done in CORE-3683.
2011-12-04 18:36:26 +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
dimitr
82b595ae7e
Misc adjustments.
2011-03-10 08:13:02 +00:00
dimitr
cc71f0835f
Removed duplicated type declaration.
2011-02-20 15:34:08 +00:00
dimitr
4d2f09c8f0
Cleaned up the unused (since FB2) parameter.
2011-02-12 14:13:40 +00:00
dimitr
9bd051b3e7
Refactored expression equality to make it independent from the stream being optimized.
2011-02-12 14:01:36 +00:00
asfernandes
1388655673
Fixed CORE-3255 - The server could crash using views with GROUP BY.
2011-02-06 21:59:20 +00:00
asfernandes
f27d60369e
Refactor nod_relation_name and nod_rel_proc_name.
2011-01-30 00:25:46 +00:00
asfernandes
f0586b01eb
Refactor DSQL's nod_join and nod_union.
2011-01-22 20:40:04 +00:00
asfernandes
8f202589e3
Fixed CORE-3306 - Invariant sub-query is treated as variant thus causing multiple invokations of a nested stored procedure
2011-01-10 15:41:33 +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
asfernandes
9c42d4e5af
Finish the statements refactor in the engine. Get rid of jrd_nod.
2010-12-04 22:15:03 +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
447dffa7b1
Warnings
2010-11-08 14:43:11 +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
1c0a683249
More lost files
2010-10-13 05:50:53 +00:00
alexpeshkoff
2dc25a44bb
OSRI and new posix build
2010-10-12 08:02:57 +00:00
robocop
98a2c6822d
Warnings.
2010-09-24 09:53:51 +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
asfernandes
ada671c034
Refactor nod_index and nod_bit_* to InversionNode
2010-08-31 00:20:33 +00:00