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

721 Commits

Author SHA1 Message Date
robocop
4d8dd1c953 Make it compile on Windows. 2009-03-05 06:05:19 +00:00
asfernandes
9d086d289c Misc 2009-03-05 00:52:25 +00:00
robocop
f2f8c3d704 Do not use reinterpret_cast to convert from void* to a typed pointer. 2009-03-04 12:14:51 +00:00
alexpeshkoff
2a8603af7d Formally this fixes gcc warning - no virtual dtor in class with virtual functions.
But this required serious reworking of InstanceControl and GlobalPtr<> classes.
GlobalPtr<> should not be directly derived from class with virtual functions -
virtual table for it's instances may become invalid in the moment,
when cleanup is needed. Therefore indirect link via InstanceList and
InstanceLink is established instead. This required also a little changes in
a way how InstanceControl is used. GlobalPtr<> usage is not changed.
2009-03-04 10:26:16 +00:00
dimitr
9f1cc5473a Prefer explicit #includes to tricky forward declarations for template classes. 2009-03-03 15:19:50 +00:00
alexpeshkoff
0d99a0d6c4 Implemented CORE-2322: added gsec and services support to control SYSDBA-like access of windows domain administrators to security database 2009-02-13 13:05:50 +00:00
robocop
66057e976c More changes for the improvement requested as CORE-2140 (it was never designed to work with printf escape sequences). 2009-02-12 12:58:12 +00:00
asfernandes
7ba3e7d0e5 Misc 2009-02-11 01:32:09 +00:00
alexpeshkoff
bd0d9bfe99 Add new class PointerArray and use it in RuntimeStatistics.
Now RuntimeStatistics has 3 #ifdef choices: SortedArray, PointersArray or Tree.
2009-02-09 14:11:16 +00:00
robocop
38f1fafbb9 Constness. 2009-02-08 12:57:49 +00:00
robocop
477faf805a Misc. 2009-02-08 12:53:48 +00:00
robocop
096d8e78e6 Trying to be more consistent in the detection of headers (HAVE_* macros). 2009-02-08 11:38:00 +00:00
asfernandes
75c0d0f353 Misc 2009-02-05 01:08:13 +00:00
hvlad
4c65e428bb Const 2009-02-03 18:14:41 +00:00
robocop
7bc5e3cc83 Style. 2009-02-03 11:02:00 +00:00
alexpeshkoff
6835b7f6ba fixed gcc compile 2009-02-02 11:51:25 +00:00
hvlad
115602ff06 Trace services support 2009-02-01 22:10:12 +00:00
hvlad
bd260b0023 ConstAccessor for BePlusTree 2009-02-01 22:03:59 +00:00
hvlad
6decebcc99 Reference-counted string 2009-02-01 22:03:10 +00:00
hvlad
ea19deac75 Correction 2009-02-01 21:55:26 +00:00
dimitr
3de6ba9d83 Mirror the POSIX way of making the TLS globals thread-safe.
Otherwise we may crash or lock-up during the process exit.
2009-01-29 18:07:07 +00:00
asfernandes
f532f6975e Misc 2009-01-21 15:42:45 +00:00
alexpeshkoff
322322b103 Fixed order of TLS keys destruction in POSIX build. 2009-01-19 16:16:19 +00:00
robocop
94b0541550 Style. 2009-01-15 11:04:40 +00:00
alexpeshkoff
97aca3d2b3 AIX port 2009-01-15 07:41:11 +00:00
asfernandes
989d851fa3 Misc 2009-01-15 03:46:48 +00:00
alexpeshkoff
2625a5a713 AIX port 2009-01-14 14:27:11 +00:00
alexpeshkoff
15e7df3ac7 AIX port 2009-01-14 13:58:41 +00:00
asfernandes
eed6013f7c Misc 2009-01-11 00:40:46 +00:00
alexpeshkoff
c4fa4b094f Removed generic (mutex-based) atomic counter. It violates fb 2.5 global variables
construction rules, therefore does not work at all - and even if fixed is highly
not-efficient if attempted in production build. Actually it never worked reliably
(causing random faults in places like MemoryPool), therefore it looks like it's
better not to have such buggy implementation at all.

Added AIX implememntation - using AIX atomic functions.
2009-01-09 14:44:53 +00:00
alexpeshkoff
3af8b76e69 Finished x86 solaris port 2009-01-08 17:08:04 +00:00
asfernandes
91a4550d23 Misc 2009-01-06 17:46:08 +00:00
robocop
8f1bfc71b4 Initial code to fix CORE-2140: escape sequences \n and \t aren't interpreted by the MsgPrint facility. To be tested by Vlad. 2009-01-06 09:47:24 +00:00
robocop
21bb7f3d20 Style. 2009-01-03 09:14:29 +00:00
robocop
6406e45337 Shut up compiler warnings (unreferenced vars, uninitialized vars, compile-time conditional code, etc.) 2009-01-02 06:36:12 +00:00
asfernandes
a177d28d60 Misc 2008-12-31 20:22:10 +00:00
alexpeshkoff
755f52124b Solaris port 2008-12-30 17:58:30 +00:00
alexpeshkoff
4c07423ba1 Better fix for signed/unsigned problem - thanks to Claudio 2008-12-30 14:43:46 +00:00
robocop
e9be920cc0 Shut up some compiler warnings (some warnings should be enabled again in autoconfig_msvc.h IMHO because hiding our possible mistakes won't help us). 2008-12-30 10:52:52 +00:00
dimitr
c5e7a6a21d If the copying is really intended to be forbidden, let it be so. 2008-12-29 13:19:05 +00:00
alexpeshkoff
bd680bcb47 Solaris port 2008-12-28 15:26:05 +00:00
alexpeshkoff
ca0dfb5c32 It was bad idea to compare size_t (unsigned) to be less 0 2008-12-28 15:25:34 +00:00
asfernandes
5a85277726 Misc 2008-12-25 14:25:01 +00:00
robocop
b6e6e537d8 Style. 2008-12-24 07:46:11 +00:00
hvlad
f612bac260 Fixed unregistered bug : incorrect result of AbstractString::equalsNoCase().
Hopefully this function was not used anywhere.
2008-12-23 13:32:29 +00:00
robocop
45062eef99 Simplification. 2008-12-21 10:49:48 +00:00
asfernandes
e72c46dd34 Fix GCC build 2008-12-20 15:16:05 +00:00
robocop
95292d1731 Style. 2008-12-20 08:12:19 +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
asfernandes
d03b6ede7f Misc 2008-12-18 01:24:58 +00:00
alexpeshkoff
1aead3cb62 fixed posix/intel build 2008-12-15 18:03:43 +00:00
robocop
8b20c40bf3 Misc. 2008-12-13 09:41:36 +00:00
robocop
761f0348ea Style. 2008-12-13 09:26:00 +00:00
robocop
f140cbb7d2 Before I put the "explicit" modifier on AtomicCounter's constructor, the compiler was generating a temporary AtomicCounter on the fly and later assigning it to the target AtomicCounter instance to satisfy an assignment of an integer to an AtomicCounter. I'm not sure we want to allow (and worse, foster) the copying of AtomicCounter instances or temporaries created by the compiler, hence I implemented a new method and fixed the code, but I don't know how to write the best code for one group of platforms in fb_atomic.h, hence I wrote the method with a syntax problem to be caught by someone who knows better. 2008-12-13 09:19:22 +00:00
alexpeshkoff
017a5b6759 HPUX port 2008-12-11 10:59:26 +00:00
robocop
88a722c08a The original idea is to allow ANY character to serve as segment separator (it may make sense in binary streams) when fetching data from blobs. Restore Alex' code that respected the original design. 2008-12-09 07:23:58 +00:00
asfernandes
1a9a023df5 Misc 2008-12-08 14:23:54 +00:00
asfernandes
a7d63bb8a7 Misc 2008-12-08 00:26:06 +00:00
alexpeshkoff
eda7114225 Fixed CORE-2223: Multiple bugs in gbak when working with ACLs 2008-12-05 15:06:21 +00:00
asfernandes
8fbf0e8e8c Remove trailing spaces (.cpp files) 2008-12-05 01:20:14 +00:00
asfernandes
ff5f8745fb Remove trailing spaces (.h files) 2008-12-05 00:56:15 +00:00
asfernandes
7e7e38feb0 Misc 2008-12-05 00:17:04 +00:00
paulbeach
c824c78d83 Small mods for HPUX to support 2.0.5 2008-12-01 14:52:56 +00:00
alexpeshkoff
2200a681f8 fixed some gcc warning 2008-11-28 18:49:07 +00:00
alexpeshkoff
b4f7717eb3 Implemented CORE-1758: nBackup support in Services API. 2008-11-20 17:29:38 +00:00
alexpeshkoff
d8ea120ded AIX port - use FB_ prefix for alignment constants 2008-11-05 11:26:23 +00:00
alexpeshkoff
1125b45ebe SAS changes - AIX port started 2008-10-30 09:33:55 +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
dimitr
230071848e Fixed the Windows build. 2008-10-13 19:21:43 +00:00
hvlad
a3c30a6aef Missed method (in WIN_NT implementation) 2008-10-11 10:10:01 +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
alexpeshkoff
9b69175326 Improvement CORE-1107: Services API extension for new (single, full) shutdown modes 2008-09-16 14:19:09 +00:00
alexpeshkoff
6c4f362913 AST != signal-safety since 2.5 2008-09-15 14:44:33 +00:00
asfernandes
7a5b0121d8 Misc 2008-09-14 23:17:58 +00:00
asfernandes
25d751ea32 New methods for array classes 2008-09-14 22:45:00 +00:00
dimitr
2e60c908ef Fixed the annoying warning in 64-bit builds. 2008-09-12 14:12:47 +00:00
asfernandes
cc5b689eda Misc 2008-08-29 02:18:50 +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
dimitr
a8d62d83db Correction by Dmitry Kovalenko. 2008-08-25 07:02:17 +00:00
dimitr
8a9c465bdb Misc. 2008-07-27 22:33:03 +00:00
robocop
7182bbaa8b Style. 2008-07-16 11:15:00 +00:00
asfernandes
7f4f7b06d6 Misc 2008-07-16 01:39:12 +00:00
robocop
33117c6a62 const. 2008-07-15 11:37:49 +00:00
robocop
1d715031a6 - Make a protected function with repetitive code.
- Little optimization when an array is overwritten (operator= or assign).
- Misc changes.
2008-07-13 09:52:38 +00:00
alexpeshkoff
aeba7e6444 Fixed CORE-1957 & CORE-216: too many grants lose privileges. ACLs cleanup. 2008-07-11 13:50:59 +00:00
asfernandes
607f55503d Misc 2008-07-11 02:37:23 +00:00
asfernandes
55ee33ffb5 Misc 2008-07-08 15:39:03 +00:00
alexpeshkoff
4d2e830cd5 Fixed CORE-1983: Out of memory condition in OS causes AV 2008-07-08 08:57:31 +00:00
asfernandes
0d31f7c8b4 Fx Linux build 2008-06-29 15:52:46 +00:00
robocop
f9fe3a771b Misc: use sizeof instead. 2008-06-26 12:02:21 +00:00
robocop
b257c4a30a Misc. 2008-06-26 11:03:53 +00:00
asfernandes
23e4059ce5 Changed attribute name NUMERIC to NUMERIC-SORT - sugested by Claudio 2008-06-25 01:46:50 +00:00
alexpeshkoff
99f17b4d00 1. Frontported fix for CORE-1944: Monitoring tables contain wrong data
2. Added new methods to Clumplet classes - date, time and floating point support.

3. Avoid endianess #ifdef's in Clumplet classes.
2008-06-24 13:07:12 +00:00
asfernandes
552f58dd48 Misc 2008-06-06 02:25:35 +00:00
robocop
b8ea332022 Misc. 2008-06-05 11:02:42 +00:00
alexpeshkoff
7f4b15737f Some service for us - make errors in destructors visible to debugger 2008-06-03 11:43:42 +00:00
robocop
a1906d634f Style. 2008-06-03 06:19:50 +00:00
robocop
07c087094d Mostly remove useless parentheses. 2008-06-03 06:14:59 +00:00
asfernandes
dbaf050e86 Set the tdbb->request to NULL when committing an autonomous transaction, as a normal COMMIT does. This fixes assertion related to system blobs created by DDL commands in EXECUTE STATEMENT. Test case:
execute block
as
begin
  in autonomous transaction do
     execute statement 'create table x (n integer)';
end!
2008-06-01 19:14:41 +00:00
robocop
88859fdc51 Make operations a bit faster by enabling the vector to add an array of values in a single pass (the same idea as insert's overloaded version). 2008-05-25 12:16:20 +00:00