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

764 Commits

Author SHA1 Message Date
robocop
0b5ee78cb7 Make more members of blb private. 2012-02-15 07:13:41 +00:00
robocop
eed418a89e Make blb resemble more a class: private data members, convert some functions into methods, add methods with code that was in other files, etc. 2012-02-15 03:34:21 +00:00
robocop
186c817caa Playing with fire: converting some static functions into member functions. I tried to check every change I did. 2012-02-07 03:17:52 +00:00
asfernandes
27bb1f8bc1 1) Removed READ/WRITE BLOB sql commands. 2) Refactored request operations to fix server crashes. 2012-02-03 19:01:36 +00:00
robocop
21cd78a0fd Cleanup: unused functions, parameters & variables. 2012-01-24 03:37:43 +00:00
alexpeshkoff
7fb8ebd3a9 Fixed CORE-1898: Increase the password length from 8 characters, CORE-3372: Simplify process of non-default security database creation 2011-12-23 12:43:58 +00:00
dimitr
e7c9ebba12 Re-implemented the disabled code in the remote server. Cleaned up the legacy logic that doesn't look actual these days.
Some code refactoring.
2011-12-22 15:32:06 +00:00
dimitr
9bac54c2ca A little bit of safety doesn't hurt. 2011-11-09 13:31:27 +00:00
dimitr
444d5302e1 Refactored the tdbb initialization, especially in AST and BG threads.
Replaced dbb_use_count with a list of active requests (to be utilized later).
Misc cleanup.
2011-10-18 18:02:57 +00:00
dimitr
4263301039 Refactored the database shutdown. Work in progress. 2011-10-10 13:51:10 +00:00
alexpeshkoff
70ddf7a875 Make services work correctly with multiple security databases 2011-10-04 12:51:57 +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
hvlad
dc4abc05e4 Protect system attachments list with dedicated sync object. It prevents deadlocks with common sync object on process shutdown. 2011-10-02 10:19:06 +00:00
dimitr
b528faa162 Corrections. 2011-09-22 15:14:36 +00:00
dimitr
6c9840c261 Misc. 2011-09-20 15:31:47 +00:00
asfernandes
e1c4f46df2 Misc. 2011-08-13 17:07:01 +00:00
alexpeshkoff
b76a2d8c47 Getting ready for support of multiple security databases in services 2011-08-09 12:11:17 +00:00
asfernandes
4675f8d2d2 Fix build. 2011-08-05 02:10:05 +00:00
asfernandes
577e9e4b7e Misc. 2011-07-02 22:10:07 +00:00
hvlad
7cb28a7af6 Fixed some AV's reported privately 2011-06-29 20:18:37 +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
18ef64b242 Fixed UnloadDetector in a case when it gets linked in non-plugin module 2011-06-14 11:34:26 +00:00
hvlad
81cec16f83 Fixed leak of SysAttachment instance. Noted by Claudio. 2011-06-13 11:09:19 +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
alexpeshkoff
4c02901734 Fixed segfault in execute statement, reported by Dmitry privately 2011-06-03 15:29:01 +00:00
asfernandes
e2bd4d0e55 Fixed CORE-3511 - Unquoted role names with non-ASCII characters passed in DPB are upper-cased wrongly. 2011-06-03 14:19:54 +00:00
asfernandes
2c9dd7e1ff Misc. 2011-05-28 02:05:45 +00:00
alexpeshkoff
2f85b664d7 Avoid deadlocks in timers. Fixes use of timers to delay plugin modules unload. 2011-05-27 11:31:29 +00:00
hvlad
99c9c8e2db Enabled background threads (garbage collector and cache writer).
Introduced special kind of system attachments used in this threads and show its activity in monitoring.
2011-05-27 07:57:16 +00:00
asfernandes
19cbed237b Misc. 2011-05-21 18:56:02 +00:00
alexpeshkoff
4641d2de68 Better interfaces hierarchy: all of them are derived from IVersioned 2011-05-19 16:24:46 +00:00
alexpeshkoff
85b3b5cf95 Interface for 2PC (distributed transactions coordinator) 2011-05-19 11:38:38 +00:00
asfernandes
7b72429210 Misc. 2011-05-13 01:15:18 +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
hvlad
177b43306c Adjust order of releasing metadata objects when attachment is released.
It also avoids assert in MET_verify_cache() pointed privately by Alex.
2011-05-11 09:39:57 +00:00
asfernandes
1c5770da81 Warning / error. 2011-05-11 02:43:39 +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
asfernandes
0b2ffeae81 Misc. 2011-04-30 02:28:31 +00:00
alexpeshkoff
c076b1d8c1 Added delay before unloading plugin module after last reference to that module outside plugin manager is gone 2011-04-29 16:24:27 +00:00
alexpeshkoff
d6f972c737 Check att_in_use before cancelling operation of attachment 2011-04-27 06:31:11 +00:00
asfernandes
a38da2a1bf Correction for statement repreparation. 2011-04-26 15:23:33 +00:00
asfernandes
9754526943 Misc; reinterpret to static casts; correction in YRequest version. 2011-04-26 01:00:33 +00:00
alexpeshkoff
256cb1e853 1. Use reference counted stable in global pool objects instead PublicHandle's validation.
2. Avoid massive segfaults when closing heavily loaded server.                                                                                 
3. Restored logic in YValve required for correct shutdown.                                                                                    
4. Do not change externally visible request body when preparing it.
2011-04-25 17:47:56 +00:00
asfernandes
d7127242c7 Improvement CORE-3446 - Allow conversion from/to BLOBs and others types in the API functions (XSQLVAR or blr messages). 2011-04-19 15:24:26 +00:00
asfernandes
b781d62d4a Make the new BLOB API use void* buffers, so applications can read/write char* strings or any other type without casts. 2011-04-15 18:54:02 +00:00
dimitr
77916f05f7 Fixed possible deadlock between the shutting down engine and the running service. Reported by RedSoft. 2011-04-15 16:37:31 +00:00
asfernandes
c63493ffba Added metadata support to IStatement. 2011-04-14 01:03:43 +00:00
alexpeshkoff
437d841cfa Rolled back my commit using IBlrMessage interface. Replaced with single plain structure FbMessage. 2011-04-13 12:41:40 +00:00
alexpeshkoff
e58f56c12f Fixed memory leak - thanks to Adriano 2011-04-11 11:22:03 +00:00
asfernandes
04bb4ba305 Remove unused parameter and rename a constant. 2011-04-09 20:00:00 +00:00
alexpeshkoff
9a4689d3e9 Use interface IBlrMessage instead passing C++ class pointer to API interface's functions 2011-04-08 16:43:05 +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
03ce334e2b Misc 2011-04-04 13:37:47 +00:00
asfernandes
20bfe736bb New YValve implementation. 2011-04-02 19:38:50 +00:00
robocop
37db77d1ea Misc, style, etc. 2011-04-02 04:47:22 +00:00
alexpeshkoff
9ef53b65e0 Remove reference counting where not appropriate 2011-03-31 13:44:22 +00:00
hvlad
d49336c110 Fixed bug CORE-3419 : Recurse leads to hangs/crash server
The rollback() and a friends should be reconsidered when (if) multy-db transactions will be possible to start at engine (i.e. not at y-valve) level.
2011-03-31 09:41:38 +00:00
asfernandes
166c41c5b1 Move transactRequest, createBlob, openBlob, getSlice, putSlice and ddl from ITransaction to IAttachment.
It's better to have one standard than two, and "ddl" was broken from API POV.
So make the IAttachment always the caller, explicit or implicit (via IStatement or IRequest), and pass the ITransaction as parameter.
2011-03-21 21:56:47 +00:00
asfernandes
c863db6e6d Removed commented out Sqlda support and rename methods removing the word 'messsage'. 2011-03-20 19:15:55 +00:00
asfernandes
34fd6866bc Remove unused message types. 2011-03-20 19:15:13 +00:00
asfernandes
2ce201f4ae Use MessageBuffer in executeMessage and fetchMessage. 2011-03-20 19:14:03 +00:00
alexpeshkoff
f6914b8db0 Added timer-related interfaces. Added helper method to wait for plugin to be released on shutdown. Misc stability changes in PluginManager. 2011-03-16 11:04:04 +00:00
asfernandes
146448b877 Misc 2011-03-06 01:06:36 +00:00
alexpeshkoff
7c8bacb692 Detect forced unload of plugin by OS when process is exited 2011-03-04 15:49:37 +00:00
alexpeshkoff
0a7c3fc69d Fixed CORE-3369: first step to make it possible to specify non-default security database for specific database 2011-03-02 13:42:56 +00:00
dimitr
86ea2ddb00 Front ported:
Refactored the shared counter to support multiple number spaces.
Changed att_id and tra_id to be generated sequentially (without caching), as agreed with Vlad privately.
Fixed CORE-2305: Make mon$statement_id value constant among monitoring snapshots.
2011-02-15 07:16:57 +00:00
asfernandes
7800060e22 Misc 2011-02-04 23:58:10 +00:00
hvlad
12ada43e38 Front ported improvement CORE-3323 : Ability to cancel waiting in lock manager
LM part will be changed to not rely on engine internals.
2011-02-02 11:20:52 +00:00
asfernandes
ccaaca7c72 Misc 2011-01-29 17:24:29 +00:00
dimitr
e0f5a68da0 More work on enlarging the message buffers. To be continued. 2011-01-28 18:50:27 +00:00
dimitr
fcf42108da Refactoring. Mostly short->long replacements for various buffer sizes. 2011-01-28 17:12:22 +00:00
asfernandes
248ddfa04a Misc 2011-01-28 00:58:32 +00:00
alexpeshkoff
742b308173 Avoid to early shutdown of engine 2011-01-26 18:06:01 +00:00
alexpeshkoff
eb11598570 Implement Thread::kill for posex threads. Do not support separate Thread::closeHandle - move it inside kill and waitForCompletion 2011-01-24 16:36:29 +00:00
hvlad
1e6135ec40 Fixed main reason of AV at engine DLL unload time. More fixes will follow soon. 2011-01-24 13:20:25 +00:00
hvlad
dca44e309d Make it compiles on Windows after Alex's changes. MSVC10 build will follow later. 2011-01-24 12:51:32 +00:00
alexpeshkoff
ddaddccb97 Fixed bug, found by Adriano - destructor of statically allocated factory should better never be called 2011-01-17 12:17:24 +00:00
asfernandes
233093cee4 Misc 2011-01-16 02:16:15 +00:00
alexpeshkoff
d6fcde387b New plugin manager. Use it for all types of plugins. 2011-01-14 17:31:40 +00:00
asfernandes
9c42d4e5af Finish the statements refactor in the engine. Get rid of jrd_nod. 2010-12-04 22:15:03 +00:00
alexpeshkoff
49a677b1fd cleanup 2010-11-19 17:32:21 +00:00
dimitr
8573d02653 Correction. 2010-11-08 09:23:40 +00:00
dimitr
cc1c1e8b20 Fixed CORE-3218: Statement cancellation request might be silently ignored by the currently running SQL code. 2010-11-08 09:16:50 +00:00
alexpeshkoff
0ab6c4abf7 Avoid throwing C++ exceptions from authentication plugins 2010-10-28 08:02:42 +00:00
alexpeshkoff
3afd884f5b Temporal quickfix for working engine shutdown 2010-10-14 11:13:29 +00:00
alexpeshkoff
e05c1a825f Moved some more .h-files to common from jrd as Vlad suggested 2010-10-13 10:39:52 +00:00
asfernandes
91384eb587 Misc 2010-10-12 17:40:27 +00:00
alexpeshkoff
83d6a2f88c Restored a lot of changes, rolled back by me unintentionally 2010-10-12 11:36:51 +00:00
alexpeshkoff
2dc25a44bb OSRI and new posix build 2010-10-12 08:02:57 +00:00
hvlad
6a37e8c261 Fixed bug CORE-3170 : Engine could enter infinite loop if EVENT's are posted but no subscribers exists 2010-10-08 11:57:57 +00:00
asfernandes
173b23109c 1) Better organization between request and statement. 2) Consts. 2010-08-05 15:55:49 +00:00
hvlad
ee2be8aca8 Improvement CORE-3008 : Add attachment's CHARACTER SET name into corresponding trace records 2010-05-19 16:25:50 +00:00
alexpeshkoff
ea1b1843d8 Cleaned up macro BOOT_BUILD, boot ObjModuleType in posix build and a lot of related steps in posix build 2010-05-18 13:32:30 +00:00
asfernandes
d6e4b53865 Misc 2010-05-08 02:25:58 +00:00
hvlad
7acd5e6dee Fixed bug CORE-2993 : Fatal lock manager error "Invalid lock id (NNN)" while working with monitoring tables on a highly loaded system 2010-05-06 17:51:06 +00:00