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

370 Commits

Author SHA1 Message Date
dimitr
d09fba5ebd Fixed (hopefully) CORE-2798: Incomplete plan output (lack of view names) when selecting from views containing procedures inside. 2009-12-10 14:47:52 +00:00
dimitr
7b14c3c3e2 Simplified the code, thanks to Adriano. 2009-12-10 05:11:43 +00:00
asfernandes
925bcc9cf6 Misc / warnings 2009-12-10 00:02:01 +00:00
dimitr
11495a55fb Refactored the whole RSB stuff into classes. They're inside the /recsrc sub-directory now.
Fixed the layering for WITH LOCK and (partially) ANY/ALL predicates.
Cleaned up the outdated code that never worked (mapping DISTINCT to an index, some VMS remainings).
Wiped out a lot of the pre-ODS11 optimizer logic. Some minor adjustments there.
Re-implemented the full outer join from scratch. This resolves CORE-2678 (full outer join cannot use available indices).
Resolved CORE-2796: DB_KEY is always zero for external tables.
Implemented the core part of the scrollable PSQL cursors. Implementation is still incomplete, but ready for testing.
Some other changes I don't recall at the moment ;-)

WARNING! The engine may be unstable. Please email me about any issues found.
2009-12-09 18:45:44 +00:00
asfernandes
9ec1c36a55 Cleanup 2009-11-28 19:39:23 +00:00
robocop
c1d4a1cc8e Comments. 2009-11-20 09:19:50 +00:00
robocop
c3298fd6be Style. 2009-11-20 07:03:20 +00:00
robocop
1386adcf90 Style. 2009-11-16 08:06:31 +00:00
asfernandes
f2cd6b7ec2 Misc 2009-11-12 01:38:48 +00:00
asfernandes
87e274b76a Misc 2009-11-06 01:21:14 +00:00
alexpeshkoff
513a44ba40 Fixed CORE-2578: select rdb$db_key from a view with a more than 1 table joined, results in conversion error 2009-11-05 16:23:07 +00:00
dimitr
5ae7b7f340 Cleanup. 2009-10-31 11:08:11 +00:00
dimitr
e6909de7f7 Wipe out the SCROLLABLE_CURSORS code + minor cleanup.
Also, surfaced scrollability for PSQL cursors (without internal support yet).
2009-10-31 06:25:01 +00:00
robocop
07dc116ed2 Misc. 2009-10-30 10:50:59 +00:00
asfernandes
b31aaf0129 Some statements nodes refactor - creation of IfNode, ExitNode, SuspendNode, PostEventNode and SavePointNode. 2009-10-24 17:45:33 +00:00
asfernandes
ed0e0daeb3 - External Engines implementation.
- Plugins API.

- Feature CORE-2700 - UDR (User Defined Routines) Engine - C++ API supporting functions, triggers and stored procedures.
- Feature CORE-2470 - Support for alternate format of strings literals.
- Feature CORE-2310 - DDL triggers.
- Feature CORE-2312 - PSQL Packages.
- Feature CORE-1209 - CONTINUE statement.
- Feature CORE-1180 - DDL syntax to change (not) nullable state of columns.
- Feature CORE-2090 - Support OVER () clause with current aggregate functions.

- Fixed CORE-2699 - Common table expression context could be used with parameters.

- Introduce ODS 12.0.

- Work in progress in type-safe parser.
- Refactor some DDL commands (procedures and triggers) from DYN to DdlNodes.
- Refactor virtual tables to use a class hierarchy instead of namespaces. This is basic thing, not based on the changes done in Vulcan. Window functions is based on this work.
- Refactor COMMENT ON and DROP FUNCTION from DYN to DdlNodes. COMMENT ON do not use GDML anymore, it uses DSQL with PreparedStatement class.
- Refactor EXECUTE BLOCK to StmtNodes.
- Refactor the IUDF to SysFunctions. That eliminates RDB$GET_CONTEXT and RDB$SET_CONTEXT from RDB$FUNCTIONS.
2009-10-21 00:42:38 +00:00
asfernandes
870e35d120 Argh. Fix for the second time problem with line endings 2009-10-15 16:13:40 +00:00
asfernandes
da2f4c2b6d Added some debug code to cmp 2009-10-15 16:06:22 +00:00
dimitr
c175687923 Misc. 2009-10-02 19:16:36 +00:00
dimitr
8e36474f76 More explicit (and shorter) life-time for sort blocks. Now they belong to either requests (user sorts) or transactions (index sorts).
This also resolves CORE-2477: mon$memory_usage: Sorting memory should be reported as owned by the statement.
2009-09-04 06:11:55 +00:00
asfernandes
82b6f6a794 Fixed CORE-2612 - Connection lost immediatelly after compiling procedure with RPAD system function 2009-08-31 15:28:07 +00:00
robocop
e90fc8d63f Change the interface again. Please full rebuild (although the many recent changes to common.h almost qualify as full rebuild). 2009-08-05 12:30:32 +00:00
asfernandes
4759973045 Fixed CORE-2576 - Server may crash parsing wrong or truncated BLR
Full rebuild required - CMP_compile2 prototype changed
2009-08-02 04:10:07 +00:00
asfernandes
5063bafc36 Misc 2009-07-15 03:13:16 +00:00
dimitr
468b31fddd 1) Let the collation existence locks respect the database shutdown. In particular, let's distinguish between "releasing" and "destroying" the lock.
2) Explicitly invalidate and release the cached system requests.
2009-07-13 19:45:08 +00:00
alexpeshkoff
fe4aec8a12 Fixed CORE-2550: Bus error when working with DB_KEY on bigendian machines. Introduced dtype_dbkey inside engine. 2009-07-09 14:04:42 +00:00
asfernandes
8a94ecf6bc Misc 2009-06-29 02:06:00 +00:00
robocop
f10e1b72eb Style. 2009-06-27 06:23:36 +00:00
asfernandes
158a05c78d Misc 2009-05-10 15:23:31 +00:00
robocop
66b1227b22 Unused params, some formatting, cleanup. 2009-05-01 17:21:36 +00:00
robocop
2d7cb94844 Unused params
Some BLR checks
2009-04-28 13:08:04 +00:00
robocop
a730fbf074 Get rid of more typedefs. 2009-04-03 10:07:55 +00:00
robocop
fab6a3a6cf Get rid of superflous parentheses. 2009-02-28 11:57:40 +00:00
asfernandes
517f426392 Misc 2009-02-15 18:05:38 +00:00
asfernandes
b4c98c27a5 Fixed the ALL Regression reported by Bill (CORE-1137) 2009-02-14 18:18:41 +00:00
asfernandes
afed84f36c Fixed CORE-2317 - select * from (select cast(.... returns null 2009-02-12 14:56:59 +00:00
dimitr
22bd1345c5 Let's count user DSQL statements only. 2009-02-05 20:41:47 +00:00
hvlad
115602ff06 Trace services support 2009-02-01 22:10:12 +00:00
robocop
3689f15321 Style. 2009-01-20 08:33:59 +00:00
asfernandes
2e3ced29fc Fixed CORE-2258 - Internal error when select upper(<blob>) from union 2008-12-25 15:05:06 +00:00
dimitr
05299f653e Fixed CORE-1607: Correlated subquery is optimized badly if it depends on the union stream. 2008-12-21 06:29:47 +00:00
asfernandes
5311dd5a5e Misc 2008-12-20 19:57:43 +00:00
dimitr
2b87e94242 Use explicit iterators instead of the implicit (built-in) ones due to the thread-safety requirements.
This change affects GenericMap only, as it's used globally in a few places and we have a proven crash there.
I have a more complete solution (total cleanup of default accessors from BePlusTree and SparseBitmap) in my local tree (thanks to Dmitry Kovalenko), but it's incomplete (requires more changes inside the engine) and IMHO risky (~20 core modules are affected), so I'd like to defer finalization of this cleanup till v3.0.
All objects of these types seem being protected by dbb_sync, so they shouldn't cause us any problems currently.
2008-12-19 14:57:01 +00:00
robocop
ff99dc3d46 Style. 2008-12-18 10:47:25 +00:00
robocop
e4650d5027 Promote thread_data* as function argument. Only exception where both tdbb and dbb were left together as arguments is nbak.cpp's call to CCH_rollover_to_shadow to avoid any side effect in the changed code, but anyway, that function calls SDW_rollover_to_shadow that takes the dbb from the tdbb and not explicitly. 2008-12-14 09:28:25 +00:00
robocop
eb6ea18df4 Misc. 2008-12-01 09:21:31 +00:00
asfernandes
cf7ae27db5 Fixed CORE-1432 - Collation not propagated between record formats 2008-11-30 18:55:52 +00:00
asfernandes
97693bcd00 Fixed CORE-1842 - DEFAULT values are unnecessary evaluated. 2008-11-29 19:30:56 +00:00
asfernandes
4c9513dbd8 Misc 2008-11-23 21:54:56 +00:00
asfernandes
3e1f88a0e7 Fixed CORE-1137 - Server hangs with 100% CPU usage on NOT IN predicate 2008-11-23 16:29:10 +00:00