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

498 Commits

Author SHA1 Message Date
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
asfernandes
d03b6ede7f Misc 2008-12-18 01:24:58 +00:00
asfernandes
84dfa0e092 Fixed CORE-316 - Can't open database with MBCS/Extended characters in name.
Documentation soon.
2008-12-15 14:59:34 +00:00
robocop
511c7eb7d8 Promote thread_data* as function argument. 2008-12-14 10:19:27 +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
dimitr
40d041d628 Fixed the issue reported by Philippe. To be backported after more testing. 2008-12-12 16:04:57 +00:00
dimitr
25dc79dce2 Fixed CORE-2209: Very slow procesing of the monitoring requests under high load and blocking other activity during that time.
The new code is expected to work 100-200 times faster. To be field-tested.
Implemented CORE-2233: Allow non-SYSDBA users to monitor not only their current attachment but other their attachments as well.
Sorry for mixing two fixes inside a single commit, but they're somewhat related.
2008-12-11 11:58:50 +00:00
asfernandes
8fbf0e8e8c Remove trailing spaces (.cpp files) 2008-12-05 01:20:14 +00:00
hvlad
36e1866a1d Few fixes to correctly close brocken external connection.
Ability to stop execution of external query when :
- engine is shutted down
- database is shutted down
- local statement is cancelled
- local connection is cancelled
2008-11-27 23:06:48 +00:00
hvlad
62ca23fa58 Fixed bug CORE-2183 : Error in ExtDS when server shutdown started with opened Execute Statement 2008-11-17 12:30:28 +00:00
asfernandes
d8855e2e47 Misc 2008-11-14 14:15:37 +00:00
alexpeshkoff
e9162ee2f2 Fixed CORE-2179: Deadlock when trying to shutdown server with opened ExecuteStatement 2008-11-12 14:32:18 +00:00
dimitr
8e72ece026 Uncouple Mutex and RefMutex. This resolves the circular dependency: "AtomicCounter->Mutex->RefCounted->AtomicCounter" and thus enables all non-x86 POSIX builds. 2008-10-19 11:41:43 +00:00
roman-simakov
8edd7733d4 Fixed authentication bug with sysdba login written in lowercase letters. 2008-10-14 10:05:10 +00:00
hvlad
a3d266ba83 Fixed bug CORE-2018 : Only one client can access a readonly database 2008-10-14 09:10:36 +00:00
alexpeshkoff
e79f55708d 1. Cleanup - use Firebird::Semaphore instead of local events, removed code
related with local events from isc_sync.cpp.

2. Cleanup - removed unused parameter 'number of events' from ISC_event_wait()
and two unused parameters from ISC_event_init().

3. Added SYSV-semaphore based implementation of IPC to isc_sync.cpp.
This should fix CORE-2102: Firebird 2.5 does not build on MacOS (Darwin).

4. Fixed use of posic CS without (x)inetd (i.e. fb_inet_server -s).

5. Fixed (to be reviewed by Dmitry) recovery after some process death in lock manager.
2008-10-10 15:58:05 +00:00
hvlad
97bf925499 Use fb_utils::init_status instead of status[0] = 0 2008-09-10 11:41:36 +00:00
alexpeshkoff
5be80cc7f5 Restored missing line - thanks to Claudio 2008-09-01 08:56:17 +00:00
asfernandes
96194d08ba Misc 2008-08-31 01:10:41 +00:00
asfernandes
8497cd4307 Misc 2008-08-28 15:39:51 +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
8f9b451ce9 Rework of ib_util changes. Dynamically load it in the engine and inform callback functions to alloc and free memory. Allocate memory from the default pool. 2008-07-12 21:23:42 +00:00
robocop
a302401357 Misc. 2008-07-09 12:34:43 +00:00
dimitr
609f466ad3 1) Fixed the layering, as dbb_lock shouldn't belong to PIO.
2) Passed tdbb to some engine routines that were dealing with TLS.
3) Got rid of fil_length and some minor cleanup.
2008-07-09 08:40:31 +00:00
robocop
534abf1560 const 2008-07-08 06:44:53 +00:00
alexpeshkoff
81579840ab Renamed function 2008-07-07 13:33:28 +00:00
alexpeshkoff
7fe33f3e5d Fixed CORE-1972: Non-SYSDBA user can change FW mode of database 2008-07-07 10:42:17 +00:00
asfernandes
45786da3bc Misc 2008-07-06 16:42:52 +00:00
robocop
80ba24a605 Fixing the Win32 build after Alex' changes. 2008-07-06 11:03:09 +00:00
alexpeshkoff
5ac5869661 CORE-1964 - stop vararg mess when reporting errors. Use special class for it. More (ERR_post cleanup) to come. 2008-07-03 12:02:54 +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
81c1e2e604 Correct error in my previous commit. 2008-06-24 12:02:29 +00:00
hvlad
ac03047011 1. Make work with databases_mutex more consistent (lock\unlock it at the same scope of code).
2. Restore accidentally broken pause when attempt to brute-force login\pwd is detected
2008-06-24 11:56:17 +00:00
asfernandes
af1d955da6 Improvement CORE-1937 - Detect (instead of crash) FREE_IT UDFs that return pointer not allocated by ib_util_malloc 2008-06-14 22:16:40 +00:00
dimitr
9a9d48c45d Restored the missing (wrongly cleaned up) parts of the thread priority logic (still useful for the current SS). 2008-06-09 08:10:11 +00:00
dimitr
ec1d5a91b4 1) Encapsulated the lock manager and integrated it into the engine.
2) Replaced "early" (before LM) checkouts with "late" (inside LM) ones.
3) Removed the mutex protection that's no longer necessary.
Note: the new LM contains some future code (currently commented out) which will be enabled and tested after the Alpha release.
2008-06-07 09:08:16 +00:00
dimitr
bff84e9e7a Cleanup. 2008-06-06 15:55:36 +00:00
alexpeshkoff
b85be10e63 Fixed static variables in verify_database_name() - thanks to Claudio 2008-05-21 08:40:58 +00:00
alexpeshkoff
17061d4280 Make fb_cancel_operation() behave better when enable/disable command is used 2008-05-12 13:36:22 +00:00
hvlad
422338e5e3 Lock att_mutex in Attachment's constructor 2008-05-08 07:45:19 +00:00
dimitr
2c7acdef79 Cleanup of the disabled/unused code. 2008-05-07 10:39:24 +00:00
dimitr
7edcee435b 1) Turn on FW on all platforms by default.
2) Cleanup/misc.
2008-05-07 05:18:09 +00:00
dimitr
0a9e8c8382 Implemented CORE-1751. The changes include:
1) Make memory counters aggregated.
2) Add attachment pool and allocate appropriate resources out of this pool.
3) Always release attachments explicitly (via destructor).
4) Always delete user requests prior to attachment deletion.
5) Introduce memory usage counters per every monitoring object.
6) Misc refactoring.
Some pieces are still incomplete (although everything basically works), but I'd like to get feedback and testing sooner rather than later.
2008-05-06 08:46:39 +00:00
asfernandes
b30236303d Misc 2008-05-05 02:22:53 +00:00
hvlad
a8d9303dc7 Restore att_mutex blocking logic as prior commit broked EXECUTE STATEMENT. Add extra mt protection in cancel_attachments. 2008-05-04 21:24:33 +00:00
alexpeshkoff
7ff8e4d2be Fixed CORE-1879: Server uses wrong authentication method 2008-05-04 13:38:02 +00:00
hvlad
9280a572a0 Avoid long blocking of att_mutex and make sure it is always released when attachment deleted.
Move active requests cancellation at engine shutdown from Y-valve into engine and let them stop execution before deletion of attachments.
Make sweep run in separate thread despite of engine architecture.
2008-05-04 12:49:29 +00:00
asfernandes
59673b03e8 Misc 2008-05-03 01:58:36 +00:00
robocop
ec66e1713a Fix indentation. 2008-05-01 11:01:10 +00:00
alexpeshkoff
0ba2ab7ea7 Make fb_cancel_operation() public API call. Related cleanup. 2008-04-29 09:55:41 +00:00