8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-24 18:43:02 +01:00
Commit Graph

56 Commits

Author SHA1 Message Date
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