8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-30 19:23:03 +01:00
Commit Graph

74 Commits

Author SHA1 Message Date
alexpeshkoff
c4c9daf132 Avoid limits on size of status vector in engine. Ensure that status is always clean on entry to interface methods. 2015-03-20 18:02:30 +00:00
alexpeshkoff
7fed9ff78c cleanup 2015-03-05 16:18:46 +00:00
asfernandes
47f64b0da4 Better constant names: avoid FB, enclosing class (double prefix) or wrong prefixes.
Left some TODOs in FirebirdInterface.idl and utilities/ntrace/TracePluginImpl.cpp related to trace.

(redo with fix for Windows build, and left another TODO comment in FirebirdInterface.idl)
2015-02-18 15:01:17 +00:00
asfernandes
c861f0cd54 Revert my last change after it broke the Windows build. 2015-02-17 23:21:25 +00:00
asfernandes
3c967bbe71 Better constant names: avoid FB, enclosing class (double prefix) or wrong prefixes.
Left some TODOs in FirebirdInterface.idl and utilities/ntrace/TracePluginImpl.cpp related to trace.
2015-02-17 14:56:59 +00:00
asfernandes
e02bf841ad Move Helper class from UDR to the main interface header. Use proper (argh) ref. counting in the ExternalContext::get* methods. 2015-02-11 15:12:18 +00:00
asfernandes
b99311dd1e Make the API usable with different type of IStatus classes, throwing (what class?) or not throwing. Builtin are CheckStatusWrapper (no throw) and ThrowStatusWrapper (throws FbException). 2015-01-12 00:21:38 +00:00
asfernandes
49d1a73994 Get rid of upgradeInterface API method and some adjustments. To be continued. 2014-11-10 14:45:40 +00:00
alexpeshkoff
153de0f271 Language independent API 2014-09-29 11:03:47 +00:00
dimitr
36af3d8cb2 Cleanup and small refactoring to avoid redundancy. 2014-08-15 14:19:02 +00:00
skidder
7c743fc291 Fix build warnings 2014-07-17 18:48:46 +00:00
alexpeshkoff
6a2016235a Fixed CORE-4435: After calling release() for attachment to database (instead detach) in embedded mode attachment remains active forever (and some cleanup re. reference counters) 2014-06-10 07:13:34 +00:00
robocop
6a7d4ca3ff Misc. 2014-03-14 00:42:20 +00:00
robocop
2810026363 Misc and warnings. 2013-12-29 00:35:50 +00:00
asfernandes
0b51caa5f4 Fixed CORE-4145 - Memory leak when preparing Execute Block which uses domains. 2013-09-25 15:49:43 +00:00
asfernandes
768b79c361 Improvements and corrections to message builder and UDR. 2013-06-18 15:50:48 +00:00
asfernandes
bdbd54b81e Improve external triggers messages to work by field name (instead of field order). 2013-05-22 15:44:05 +00:00
asfernandes
f2b24d02ca Misc. 2013-04-21 02:09:45 +00:00
alexpeshkoff
b9a96911ca Avoid extra atomic operations when assigning pointer to the object with pre-incremented counter (like returned from the function) to reference-counted pointer holder 2013-04-17 11:16:06 +00:00
asfernandes
e0567463bf Revert external routines to request-based (*) code, but now using a totally different internal approach.
* This is not ideal IMO, but much more easier to currently support stack traces, and domain's defaults and validations.
2013-04-11 15:44:17 +00:00
asfernandes
850e529c81 Fixed CORE-4068 - create package fails on creating header as soon as there is at least 1 procedure name. 2013-03-27 01:34:44 +00:00
asfernandes
28f05f168b Refactor. 2013-03-27 01:34:10 +00:00
asfernandes
ee953572eb Work in progress standardizing the external engines API. 2013-03-25 15:34:15 +00:00
asfernandes
b9bc308a72 Work in progress fixing external triggers. 2013-03-23 21:12:27 +00:00
dimitr
15e4367810 Small refactoring. 2013-03-17 17:35:53 +00:00
alexpeshkoff
afa0770781 1. Fixed broken by me a few time ago server shutdown.
2. Implemented prototype of TLS-based debugging helper holding information about 'What does firebird do now?"
   Currently it's more or less ready for use with JAttachment::release().
2013-03-15 16:37:32 +00:00
asfernandes
48fd751c6e Fixing FB_MESSAGE macro and external functions and procedures.
Isolate external routines them from request-based ones.
2013-03-04 01:42:58 +00:00
alexpeshkoff
fc12495d0e Modified IStatement interface in our API:
1. Never allocate empty statement - always use att->prepare() to create statement interface
2. Separated IStatement into 2 parts - statement itself and resultset.
3. Added stmt->openCursor() (and att->openCursor() for unprepared statements) to create IResultSet.
4. Always use IMessageMetadata (former IParametersMetadata) to pass message fromat info from client,
   therefore avoiding need in BLR generation in client applications.
2013-02-17 12:08:53 +00:00
asfernandes
491fdd82b2 Unifying the external engines API with the new ones. 2013-02-15 02:48:54 +00:00
asfernandes
ac14501c6a Parse BLR messages using BlrReader (and without duplicate code) to avoid segfaults with truncated or invalid data. 2013-02-08 01:48:49 +00:00
asfernandes
dc8e42e9bb Migrate external triggers to the new message-based style. 2013-01-29 01:21:32 +00:00
alexpeshkoff
c7454a49a5 Work in progress (committed due to SF upgrade). Checked only on SS.
1. Frontported fix for CORE-3935 and CORE-3993.
2. Added debugging support for mutexes and rwlocks in Vulcan style.
Unfortunately after last 'svn up' build asserts in JrdStatement:71.
2012-12-14 17:59:02 +00:00
asfernandes
c627005a89 Feature CORE-3626 - Subfunctions in PSQL and EXECUTE BLOCK.
Tests at http://firebird.cvs.sourceforge.net/viewvc/firebird/fbtcs/GTCS/tests/FB_SQL_SUBFUNC_1.output.

Also did:
- Refactor to share more code/data between procedures and functions.
- Fixed some PSQL functions problems.
2011-10-16 20:36:07 +00:00
asfernandes
edcde31b79 Remove the old getVersion method from external engines. 2011-07-13 02:10:28 +00:00
asfernandes
cd7c8dee95 Use the BLR message definition of external procedures and functions. 2011-07-10 01:23:53 +00:00
asfernandes
47489fa71b Misc. 2011-06-26 18:48:00 +00:00
robocop
5ad96271e6 Misc. 2011-06-24 06:34:16 +00:00
alexpeshkoff
40348295e1 Used upgradeInterface() in a number of places.
Fixed memory leak when unloading module, related with upgraded interfaces.
Fixed timer on posix to be high resolution.
Better diagnostic in services.
2011-06-10 12:53:51 +00:00
asfernandes
4fa3ca3494 Fix for external database/DDL trigger. 2011-06-04 02:18:06 +00:00
alexpeshkoff
4c02901734 Fixed segfault in execute statement, reported by Dmitry privately 2011-06-03 15:29:01 +00:00
asfernandes
7ad98cd292 Work in progress on the external engines API changes. 2011-06-01 01:44:54 +00:00
asfernandes
983686d71c Added IRoutineMetadata to external engines.
Not well tested:
1) EE is broken after shared page cache.
2) Semantics of addRef/release still keeps changing in developers minds.
2011-05-15 15:37:11 +00:00
asfernandes
2fd18f68c9 Lets try to avoid global functions using name with mixed new (functionName) and old SUBSYS_name name style. 2011-05-11 17:42:44 +00:00
hvlad
479a7f600d Renamed currentProvider to EngineProvider to better reflect its nature and corrected its declaration (with Alex permission ;). Removed unneeded cast. 2011-05-11 14:45:56 +00:00
asfernandes
d0c2265105 Misc. 2011-05-10 01:12:14 +00:00
hvlad
fef1f49c94 Shared page cache implementation 2011-05-09 10:15:19 +00:00
asfernandes
69dc52ba48 Integrate IAttachment and ITransaction in the external engines API. 2011-05-07 19:52:44 +00:00
alexpeshkoff
4c3f87d6bd Continued renaming interfaces. Added comments 2011-04-08 15:18:50 +00:00
alexpeshkoff
5c88e478f6 Use better names for a number of objects according to Vlad's suggestion 2011-04-07 17:16:00 +00:00
asfernandes
146448b877 Misc 2011-03-06 01:06:36 +00:00