8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-29 06:43:03 +01:00
Commit Graph

381 Commits

Author SHA1 Message Date
robocop
446097fe8e Be explicit, change "qualifier" to "package" in QualifiedName (needed anyway if/when schemas are added). 2010-01-27 04:32:27 +00:00
dimitr
5a22ba5662 Undo. Sorry for being so careless. This BLR is used by GPRE. 2010-01-15 08:08:41 +00:00
dimitr
4a69fa3754 Cleanup. 2010-01-15 08:03:33 +00:00
asfernandes
63f481da40 1) Refactor the EXCEPTION statement
2) Cleanup DSQL nod_abort
2010-01-05 17:32:42 +00:00
asfernandes
a5ab8a2b33 Make referencing and execution (try) of unimplemented packaged routines work correctly 2009-12-31 11:24:28 +00:00
robocop
a62efcde16 Misc. 2009-12-30 04:24:31 +00:00
asfernandes
82ccb81d3b Unify even more procedure and function handling. While at it, fix a wrong access to req_procedure when validating function. 2009-12-30 01:40:39 +00:00
asfernandes
d8c99a9be2 1) Make procedures and functions member of the same hierarchy (Routine class)
2) Some completion for external functions
2009-12-27 22:05:22 +00:00
asfernandes
d3ac9ac6cc More refactoring: name changes, accessors, consts, removed not good references (statement referencing scratch and metadata indirectly) 2009-12-23 00:57:08 +00:00
dimitr
debe65bcfb Support for PSQL functions (other JRD changes). Still work in progress. 2009-12-21 17:43:01 +00:00
dimitr
45b5fc2811 Cleanup. 2009-12-16 18:35:55 +00:00
asfernandes
b137cdfd80 Misc 2009-12-14 23:55:56 +00:00
dimitr
7600abf189 Fixed the build. 2009-12-10 05:20:20 +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
7a78601ef2 1) Use metadata character set in DSQL cache
2) Make exceptions in metadata charset and convert them to the client charset - this should fix CORE-2431
3) Support for "internal" (engine) DSQL statements and use in COMMENT ON
2009-12-05 14:21:52 +00:00
robocop
579a456329 Style. 2009-11-25 08:38:52 +00:00
robocop
9af5ae7f8d Style. 2009-11-23 05:24:29 +00:00
uid32383
eca4ecba76 Comments. 2009-11-22 03:56:20 +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
asfernandes
4a3d198ade Misc 2009-10-31 01:46:06 +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
dc5edd5aed Misc 2009-10-23 00:42:40 +00:00
asfernandes
b2f994c719 Use correct memory pools 2009-10-21 23:48:07 +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
robocop
de4be11750 Misc. 2009-07-13 10:00:43 +00:00
asfernandes
5dda9c1677 Misc 2009-06-27 03:03:56 +00:00
robocop
5dadf14ad0 Small cleanup. 2009-06-26 10:19:49 +00:00
robocop
0868cdd04e Apply the same trick as in evl.cpp for scrollable cursors' conditional code. 2009-06-25 15:58:09 +00:00
robocop
51d3c9b756 Let's use more typical #ifdef to test macros instead o #if. 2009-05-29 11:27:41 +00:00
hvlad
9a749a272f Implement improvement CORE-2452 : Add Role Name in input parameters for EXECUTE STATEMENT 2009-05-14 10:21:47 +00:00
alexpeshkoff
cef41b3286 1. Solaric/Sparc SunProCC port.
2. Cleanup SOLARIS_MT threading model.
2009-05-05 08:06:37 +00:00
asfernandes
9178fc4100 Misc 2009-05-01 02:46:18 +00:00
alexpeshkoff
8c983fec26 Fixed alignment issues with on-stack vary strings 2009-04-29 14:00:32 +00:00
robocop
2d7cb94844 Unused params
Some BLR checks
2009-04-28 13:08:04 +00:00
alexpeshkoff
58bdb6c241 Cleanup - unsupported port HP10 2009-04-10 15:36:58 +00:00
asfernandes
f6f364da49 Trim trailling spaces 2009-04-04 16:39:31 +00:00
robocop
a730fbf074 Get rid of more typedefs. 2009-04-03 10:07:55 +00:00
dimitr
ca94ba9d07 Restored the legacy logic that was zapping the output NULL descriptors to mimic some pseudo-empty values.
Just for symmetry, unconditionally applied the same logic to inputs (it was there for blobs only).
Finally, do the same in the original place, EXE_assignment(). A more complex original code that tried to care about character sets is removed.
2009-03-03 14:57:53 +00:00
dimitr
5792f04f98 Front ported CORE-2326: AV when committing a new view while trigger on rdb$relations is in place.
Actually, this fix is not required for v2.5 due to the DFW logic changes there, but it doesn't hurt either.
2009-02-23 14:07:28 +00:00
dimitr
22bd1345c5 Let's count user DSQL statements only. 2009-02-05 20:41:47 +00:00
hvlad
3e8de2ec7c Performance : move costly method out of the loop 2009-02-05 15:03:22 +00:00
asfernandes
612c108e3e Misc 2009-02-02 03:35:52 +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
989d851fa3 Misc 2009-01-15 03:46:48 +00:00
robocop
582cdf185b Style. 2009-01-14 09:19:00 +00:00
robocop
77bd687168 Style. 2009-01-14 08:22:32 +00:00
robocop
5ccf313d65 Collapse two cases being exactly the same. 2008-12-21 10:57:23 +00:00
robocop
95292d1731 Style. 2008-12-20 08:12:19 +00:00
robocop
0a94d6fee8 Style. 2008-12-18 10:57:12 +00:00
asfernandes
8fbf0e8e8c Remove trailing spaces (.cpp files) 2008-12-05 01:20:14 +00:00
asfernandes
3dcddd6ed5 Misc 2008-11-30 02:23:01 +00:00
dimitr
c4c496b79c Fixed CORE-2017: I/O statistics for stored procedures is not accounted in monitoring tables.
This patch adds lazy statistics increments to the whole request call stack.
2008-11-06 16:04:20 +00:00
alexpeshkoff
d8ea120ded AIX port - use FB_ prefix for alignment constants 2008-11-05 11:26:23 +00:00
asfernandes
0793554269 Fixed CORE-2117 - Incorrect ROW_COUNT value with indexed retrieval and subquery 2008-10-11 15:46:43 +00:00
dimitr
a2eee6c085 Fixed CORE-2101: Bugcheck 249 when attempting to fetch outside the end-of-stream mark for the open PSQL cursor. 2008-10-08 11:59:56 +00:00
alexpeshkoff
a06ae8dd0c 1. Fixed illegal use of local variable in MET_trigger_msg() - thanks to Claudio.
2. Fixed minor bug - use of MetaName in PAR_symbol_to_gdscode() was illegal
cause maximum length of error name can be up to 32 symbols,
which does not fit into MetaName limit (31). And we already have 4 such names!
2008-09-03 11:23:00 +00:00
asfernandes
9150e6f4f2 This should fix regressions related to fixes of:
CORE-501 - Optimization problem with COALESCE
CORE-1343 - Bug with a simple case and a subquery
CORE-2041 - update or insert with gen_id() with wrong generator value

And should fix this one (snapshot build bug):
CORE-2051 - don't work subquery in COALESCE
2008-09-01 13:18:02 +00:00
asfernandes
1899067660 Misc 2008-08-30 03:14:08 +00:00
asfernandes
7f55ecabda Fix Windows build 2008-08-28 15:54:21 +00:00
alexpeshkoff
13a15d4bfe 1. Final fix for CORE-1964 - finished vararg cleanup in jrd.
2. Generic cleanup of error reporting functions all around engine.
2008-08-27 12:20:47 +00:00
asfernandes
ddb042bbff Fixed CORE-2031 - Null in the first record in a condition on rdb$db_key 2008-08-05 15:16:58 +00:00
asfernandes
ce4bf91533 Misc 2008-07-01 01:12:02 +00:00
alexpeshkoff
a2e416210b Fixed CORE-1964: Use of 0 instead of isc_arg_end to terminate list of ERR_post's (and cousines) arguments is invalid.
Also cleaned up use of gds__log() in a few places.
2008-06-26 09:47:59 +00:00
hvlad
5d9c430674 Implemented improvement CORE-1928 : Allow EXECUTE STATEMENT to inherit access privileges of caller stored procedure or trigger.
Allow to specify EXECUTE STATEMENToptional clauses in any (not fixed) order.
Use INTERNAL_PROVIDER for access to the current database by another user too.
2008-06-08 20:42:27 +00:00
asfernandes
d52dc96278 1) Move the new Node classes to appropriate files
2) Creation of StmtNode
3) Conversion of IN AUTONOMOUS TRANSACTION to InAutonomousTransactionNode (inherited from StmtNode) - it makes this feature almost self-contained

Please do a boot build or at least run blr_table.
2008-05-19 13:47:48 +00:00
dimitr
e3375a845b Misc. 2008-05-05 04:39:09 +00:00
robocop
83d3ddd6cb Replace custom code by helper class ThreadStatusGuard. 2008-04-26 10:29:52 +00:00
hvlad
969a81f138 Lets cleanup status vector correctly. 2008-04-23 09:31:40 +00:00
hvlad
2c370b3dc8 Use new EXEC STMT implemetation for all three BLR verb's. 2008-04-17 11:06:48 +00:00
hvlad
d5aa346176 Make provider's registration not dependent from existance of EDS::Manager instance. Noted by Adriano. 2008-04-12 21:20:26 +00:00
robocop
a808a2bda2 const and style. 2008-04-12 11:56:32 +00:00
asfernandes
6e59d736df 1) Fix Linux build
2) Misc
2008-04-11 01:38:50 +00:00
hvlad
703bbdf4c1 Added missed check on req_null. Thanks to Adriano. 2008-04-10 06:48:22 +00:00
asfernandes
0e8febd6e3 Misc 2008-04-10 02:35:30 +00:00
hvlad
fe3f8c184b New EXECUTE STATEMENT with support of external data source implementation 2008-04-09 20:18:47 +00:00
asfernandes
21da64cca7 Link blobs of autonomous transaction with the outer transaction - to fix invalid BLOB ID errors. 2008-04-05 19:28:52 +00:00
robocop
cc72b37c9a Introduce more specific errors for date-time operations. 2008-03-28 13:21:59 +00:00
dimitr
b87b5032ef Changes in the TimeStamp class by Dmitry Kovalenko. 2008-03-26 10:21:04 +00:00
asfernandes
5496df8839 Misc 2008-03-26 02:13:34 +00:00
asfernandes
c25b340543 Fixed CORE-1797 - OLD/NEW.RDB$DB_KEY returns incorrect result in triggers 2008-03-25 19:41:13 +00:00
asfernandes
21a13650eb More problematic cases of CORE-1798 - thanks to Dmitry 2008-03-21 19:05:24 +00:00
asfernandes
827afb7aa4 Fixed CORE-1798 - RDB$DB_KEY evaluates to NULL in INSERT ... RETURNING 2008-03-21 17:05:21 +00:00
asfernandes
262dbadc4f Misc 2008-03-15 17:55:27 +00:00
asfernandes
c7ec88bee4 1) Created classes PreparedStatement and ResultSet
2) Changed EXECUTE STATEMENT to use these classes
3) Fixed CORE-1784 - Error with EXECUTE PROCEDURE inside EXECUTE STATEMENT
2008-03-13 16:37:20 +00:00
dimitr
ebad313cfd 1) Fixed CORE-1788.
2) Protected from other similar deadlocks.
3) Refactoring.
2008-03-13 14:20:32 +00:00
robocop
2b33eae4d1 Minimize casts. 2008-03-10 08:31:35 +00:00
robocop
3e9476e464 Misc. 2008-03-04 06:02:32 +00:00
dimitr
99caa91b85 DSQL integration into the engine. 2008-02-28 13:48:16 +00:00
robocop
e9e1ead67a Mostly style, constness, native memcpy and explicit constructors. 2008-02-02 17:04:06 +00:00
asfernandes
ed51d0728b DSQL sync. changes 2008-02-01 20:18:11 +00:00
dimitr
a38b327886 Cleanup. Get rid of the JrdMemoryPool. 2008-01-29 10:11:52 +00:00
dimitr
8f742ba52c Major synchronization changes. Description of the commit will be posted to fb-devel. 2008-01-26 12:57:52 +00:00
alexpeshkoff
39896cb955 Fixed CORE-1671: atexit() calls in client libraries cause segfaults
and CORE-1079: Every attach of fbclient/fbembed library leaks 64KB of memory

To do it:
- created new template GlobalPtr, controlling access to destructors of global objects.
- applied it to global objects.

Also some related cleanup.
2008-01-23 15:52:40 +00:00
dimitr
48e81dd58a The merge is being fixed. 2008-01-16 12:22:11 +00:00
dimitr
1fa56f4cd7 The merge is being fixed. 2008-01-16 12:10:43 +00:00
dimitr
e3128c2479 The merge continued. 2008-01-16 08:54:50 +00:00