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

1002 Commits

Author SHA1 Message Date
hvlad
1fff28ee80 Fixed VC8 build 2009-09-02 08:02:47 +00:00
robocop
43962281d4 Misc and isolate the win9x code even more. 2009-09-02 04:23:02 +00:00
alexpeshkoff
9629eafccd Use per-thread circular strings buffers instead common and per-attachment combination 2009-09-01 09:20:24 +00:00
skidder
aca5a83a46 Fixed CORE-2609: Update support for Windows 98/ME and NT4.0 2009-08-30 19:00:46 +00:00
robocop
09033f5e82 Warnings from Bill Oliver. 2009-08-27 09:51:55 +00:00
asfernandes
50102f6f4c Misc 2009-08-23 01:27:46 +00:00
dimitr
7ad1ec32a5 The same logic just expressed differently. 2009-08-21 11:59:57 +00:00
dimitr
f917a445e9 Misc. 2009-08-21 08:30:10 +00:00
dimitr
21971f03a0 Fixed CORE-2422: Server doesn't switch between multiple entries configured in TempDirectories when some of them is out of free space.
Moved the common code to File.h.
2009-08-21 08:28:08 +00:00
robocop
bf0f18d323 Style (irrelevant). 2009-08-18 12:43:21 +00:00
robocop
8ce0cf3e79 Style. 2009-08-16 05:25:30 +00:00
verbguy
9dd0930e8c change symbolic label to numeric label to fix repeated symbol error during optimized build 2009-08-13 01:11:42 +00:00
asfernandes
09b6e1b26b Misc 2009-08-09 22:21:31 +00:00
robocop
aaa1b979d2 Little improvement. 2009-08-07 12:13:56 +00:00
asfernandes
fea56bf058 Misc 2009-08-06 01:06:05 +00:00
robocop
569baefa3e Debug checks. 2009-08-05 06:27:57 +00:00
asfernandes
8c265e5a45 Misc 2009-08-01 18:41:46 +00:00
asfernandes
ae21e3de1d Fix typo 2009-08-01 18:29:46 +00:00
robocop
46a39ddd42 Totally misc. 2009-07-31 09:29:52 +00:00
alexpeshkoff
5b6738dcb4 Patch from Bill Oliver and some more consts 2009-07-31 09:17:30 +00:00
alexpeshkoff
e9d3b31cc2 HPUX port - support crazy C-runtime on Itanium 2009-07-30 13:27:38 +00:00
alexpeshkoff
3bdb9d5f06 Fixed use of size_t variables in printf() - thanks to Claudio 2009-07-30 12:16:36 +00:00
alexpeshkoff
d533492e3a comment 2009-07-28 12:03:58 +00:00
alexpeshkoff
ae4855b4b3 Implementation of atomic counter using libatomic_ops. Useful at least for s390/linux. 2009-07-28 11:16:31 +00:00
asfernandes
6377356940 Misc 2009-07-23 00:56:28 +00:00
paulbeach
00af06a82f And the long march to making Firebird build and run on MacOSX continues 2009-07-21 13:59:45 +00:00
alexpeshkoff
a202c46dc0 Use more standard macro 2009-07-21 11:51:27 +00:00
robocop
8cb338c96d Misc. 2009-07-21 09:46:11 +00:00
alexpeshkoff
4506ae61bc Solaris 9 patch from SAS 2009-07-21 08:58:28 +00:00
hvlad
509a8558ab Fixed bug in my prevoius commit. 2009-07-15 15:28:04 +00:00
asfernandes
adacf54d74 Misc 2009-07-14 01:18:17 +00:00
hvlad
0bb6d05d8f Disable "parent redirect" feature and allocate memory for child pool from parent pool instead. It will improve speed of "deallocate by pool" mechanism for child pools (primary DSQL and CMP pools).
Regression (slowdown) was reported by Gabor Boros in fb-devel.
2009-07-12 17:37:55 +00:00
asfernandes
181345f235 Increase the "probe stack" test to 128K, as there may be > 64K local variables (like DatabaseSnapshot::DumpRecord). 2009-07-10 15:14:07 +00:00
asfernandes
bdf1bf85e6 1) Move some StringBase methods to AbstractString, so AbstractString could be used to mean PathNames or strings
2) Change ISC_escape / ISC_unescape accordingly
3) Fix bug in ISC_systemToUtf8 and ISC_utf8ToSystem when str is empty
2009-07-06 15:29:14 +00:00
robocop
67c4d03965 Style. 2009-06-28 11:59:30 +00:00
asfernandes
928d2616fd Misc 2009-06-19 02:29:08 +00:00
asfernandes
cb40c9f8ba Apply Alex/Bill/Jerry/me patch re. portability in redefinition of operator new 2009-06-13 16:36:10 +00:00
robocop
d614aa9c65 Update logic for ininf() in POSIX and use macro isnan instead of _isnan in Windows. 2009-06-12 08:24:59 +00:00
hvlad
c63ae53d19 Patch by DS and VKh to speed up SQZ in some cases 2009-06-10 12:41:13 +00:00
alexpeshkoff
366f547d01 Cleanup - thanks to Claudio 2009-06-10 08:06:57 +00:00
alexpeshkoff
302e0d2cd9 Reworked class Semaphore:
1. Mach semaphores on Darwin.
2. No more local SysV semaphores.
3. Fixed bugs in conditional var based semaphore.
4. Moved big methods from .h to .cpp file.
2009-06-09 13:58:06 +00:00
alexpeshkoff
f21a2bf4be Make initialization distributed - each subsystem does what it needs when needs, removed gds.cpp:init() 2009-06-09 10:08:12 +00:00
asfernandes
486962d8c1 Put TempFile in Firebird namespace 2009-06-06 18:39:29 +00:00
alexpeshkoff
5ac9a5e003 HPUX port 2009-06-05 10:04:45 +00:00
alexpeshkoff
4f0eb26a9b Fixed Sun compiler warnings 2009-06-03 13:13:08 +00:00
hvlad
6511cace58 Ability to create temporary files in specified folder 2009-05-28 09:48:13 +00:00
robocop
52355d8256 Style. 2009-05-28 05:47:07 +00:00
asfernandes
6e55b48e24 Misc 2009-05-28 01:53:38 +00:00
alexpeshkoff
46527f2084 MT safe floating point exceptions control. Raise error in case of FP overflow according to SQL standard requirements. 2009-05-27 07:57:06 +00:00
alexpeshkoff
e2e6b8bd10 Solaris port, related cleanup 2009-05-25 15:47:20 +00:00
asfernandes
8c0777d090 Do not overload placement new operator. That is not valid accordingly to C++ standard. 2009-05-23 02:27:05 +00:00
asfernandes
fd7245cf05 Misc 2009-05-23 01:33:36 +00:00
alexpeshkoff
25de6e92e7 Fixed alignment errors in 32-bit SPARC-64 port 2009-05-20 13:13:03 +00:00
alexpeshkoff
a37d818726 AIX port - native compiler support 2009-05-07 14:49:40 +00:00
asfernandes
10328dff3b Misc 2009-05-06 02:02:37 +00:00
alexpeshkoff
cef41b3286 1. Solaric/Sparc SunProCC port.
2. Cleanup SOLARIS_MT threading model.
2009-05-05 08:06:37 +00:00
robocop
66b1227b22 Unused params, some formatting, cleanup. 2009-05-01 17:21:36 +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
asfernandes
1c20adb8fc Misc 2009-04-29 01:52:49 +00:00
robocop
888000e21e Unused function params. 2009-04-26 10:24:44 +00:00
asfernandes
877064a028 Fix warnings 2009-04-25 15:10:07 +00:00
robocop
0c0c00386e Misc. 2009-04-24 15:25:14 +00:00
alexpeshkoff
b0a3fcc95a Removed 2 unneeded and unused parameters from template BePlusTree.
One of them caused compilation errors with IBM's xlC compiler.
This is compiler bug, but as long as we can avoid it - why not?
2009-04-22 15:58:26 +00:00
robocop
c815d1f012 Misc. 2009-04-17 14:10:56 +00:00
robocop
6780b8c31e Comments. 2009-04-17 14:10:11 +00:00
alexpeshkoff
ab4ef3b7e5 Fixed solaris atomic operations 2009-04-16 08:59:21 +00:00
robocop
0bf3d11247 Misc. 2009-04-10 14:28:35 +00:00
alexpeshkoff
06b5a69eec Make class FileClose generally available 2009-04-09 16:44:45 +00:00
alexpeshkoff
437dea645b Fixed xlC warnings 2009-04-08 10:21:29 +00:00
alexpeshkoff
71bc64f6e1 Fixed solaris implementation - thanks to Claudio 2009-04-06 15:44:29 +00:00
asfernandes
f6f364da49 Trim trailling spaces 2009-04-04 16:39:31 +00:00
alexpeshkoff
26d31f5e2e Native Solaris AtomicCounter - required for non-intel build 2009-04-03 13:09:58 +00:00
alexpeshkoff
597f370678 Avoid too long lines, ensure constness 2009-04-03 12:14:07 +00:00
robocop
4480c7c405 Misc. 2009-04-01 10:49:54 +00:00
roman-simakov
257368d31c Counter and mutex were replaced by AtomicCounter. 2009-03-19 19:08:17 +00:00
asfernandes
a6d88154ee Misc 2009-03-18 02:43:15 +00:00
roman-simakov
1a4949891b Refactored NBackup subsystem.
1) Fixed CORE-1696 - "Deadlock in LM by using nbackup utility" with priority rating of lock requesting for LCK_backup_database and LCK_bdb.
2) A lot of stability fixes were made.
3) The key thing is using new GlobalRWLock for removing LCK_set_owner_handle function and speed up performance.
4) The code is still ready for using both in shared cache architecture and in claster architecture.
2009-03-17 07:39:55 +00:00
asfernandes
af33aefd19 Misc 2009-03-12 01:39:52 +00:00
alexpeshkoff
0d4fcd15d0 Fixed alignment - thanks to Adriano 2009-03-05 10:25:45 +00:00
robocop
c96ffd070f Misc. 2009-03-05 06:05:50 +00:00
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
dimitr
1ebc716eb2 Misc. 2008-05-25 07:19:31 +00:00
asfernandes
4343cbfeba Do the same kind of cleanup in jrd/pass1 as done for "proc_flag" in dsql/pass1 - recursive passing the same parameters that is changed in specific situations makes difficult to understand the logic. 2008-05-18 01:02:35 +00:00
robocop
5777ff76fa More VC6 cleanup. 2008-05-14 13:11:41 +00:00
robocop
1cdd4e4126 Clean the sources from VC6 hacks. 2008-05-14 05:17:53 +00:00
asfernandes
fa3e3c24d1 Misc 2008-05-13 18:51:35 +00:00
dimitr
6a593eca17 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:41:24 +00:00
asfernandes
b2abfa3d8b Compatibility with Valgrind 3.3 2008-04-27 18:53:33 +00:00
asfernandes
53a2090f65 Misc 2008-04-27 02:39:51 +00:00
alexpeshkoff
051eae391f Added useful JString methods to Firebird::string 2008-04-24 15:44:54 +00:00
asfernandes
cfb2b8ee91 Misc 2008-04-23 02:19:25 +00:00
robocop
05271261e1 Style. 2008-04-19 11:11:10 +00:00
robocop
61662f5b5b Constness and style. 2008-04-19 09:42:01 +00:00
robocop
5b0a5ded86 Style. 2008-04-18 10:03:04 +00:00
robocop
6f31045e33 Misc. 2008-04-16 09:25:36 +00:00
alexpeshkoff
c80b38952b Avoid violating const rules - thanks to Claudio 2008-04-15 14:00:58 +00:00
alexpeshkoff
9d67aa1220 New methods in RefPtr template 2008-04-15 08:53:54 +00:00
hvlad
fe3f8c184b New EXECUTE STATEMENT with support of external data source implementation 2008-04-09 20:18:47 +00:00
alexpeshkoff
1a1732aa14 Fixed use of nanoseconds in struct timespec 2008-04-09 13:34:25 +00:00
hvlad
ea5f555891 Corrections noted by Claudio 2008-04-06 21:58:08 +00:00
asfernandes
29fbfbb8ff Misc 2008-04-06 14:45:51 +00:00
hvlad
981d1c558f RefPtr : constness and new assignment operator 2008-04-05 22:39:19 +00:00
robocop
ee46acd6bc Misc. 2008-04-03 13:17:32 +00:00
asfernandes
f0299cfb29 Misc 2008-04-03 01:11:26 +00:00
alexpeshkoff
aafed20fe1 Fixed problems with shutting down actively running engine - related with CORE-1805. 2008-04-02 14:26:17 +00:00
asfernandes
b5f62a63b0 Misc 2008-03-30 20:43:36 +00:00
robocop
ace427e4e3 exist() shortcut. 2008-03-29 13:24:22 +00:00
robocop
180928af4c const. 2008-03-28 13:26:17 +00:00
robocop
b3de41ea87 Misc. 2008-03-28 13:25:47 +00:00
alexpeshkoff
4e5a83e767 1. Make remote port RefCounted object.
2. Removed deferred cleanup hack.
3. Fixed races when events are delivered - thanks to Vlad.
2008-03-27 10:15:05 +00:00
asfernandes
aa82019f87 Remove warnings and errors in the GCC/Linux build 2008-03-27 02:41:55 +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
alexpeshkoff
21ca11f328 1. Moved processing of exceptions in guards' dtors to better place.
2. Added class Reference (RefCounted guard) and use it in the tree.
2008-03-25 08:44:11 +00:00
alexpeshkoff
68d88584b8 Fixed gcc warning 2008-03-24 15:18:26 +00:00
alexpeshkoff
e600c2b27f Added template to be used when AutoPtr points to array 2008-03-24 15:00:53 +00:00
dimitr
a600c7789f Validation. 2008-03-24 10:36:11 +00:00
dimitr
fda35bd451 An attempt fo speed up compilation. 2008-03-24 09:31:14 +00:00
robocop
1662d17d89 Misc. 2008-03-22 09:00:43 +00:00
asfernandes
3aca6f92b1 Misc 2008-03-21 02:42:24 +00:00
dimitr
71da9925ec 1) Added proper handle validation for dbb.
2) Changed dbb_sync lifestyle handling.
3) Sync'ed access to the att_long_locks.
2008-03-20 16:41:17 +00:00
dimitr
a8963cb9db Make the reference counting a common feature. 2008-03-20 13:00:31 +00:00
dimitr
13f5cc92e1 Major cleanup of the old-style blk and allocator-based blk_type. 2008-03-19 16:09:00 +00:00
dimitr
36c89e955f Get rid of warnings. 2008-03-18 06:29:36 +00:00
alexpeshkoff
ed25245303 Applied shutdown changes, discussed in fb-devel a week ago. 2008-03-17 16:49:47 +00:00
asfernandes
262dbadc4f Misc 2008-03-15 17:55:27 +00:00
robocop
462e6f66a3 Use the template type. 2008-03-15 10:26:36 +00:00
hvlad
ebc4644ea1 Add check in WIN_NT's DEV_BUILD for correct mutex unlocking\deleting.
Implement new EnsureUnlock class for use instead of (or together with) LockGuard's if LockGuard is not usable.
2008-03-13 12:54:31 +00:00
robocop
55e17e46d7 - Made some constructor explicit and discovered that for adding one byte to a string, a temporary string was being created on the fly. Unacceptable in loops.
- Disabled constructor from hell for now. I wasn't the only one confused about the nature of the only argument: only looking at the signature one realizes it's a byte's value, not the initial length.
2008-03-13 10:38:39 +00:00
asfernandes
12c50384b5 Misc 2008-03-13 02:43:32 +00:00
alexpeshkoff
4139292369 added new method to posix threads mutex 2008-03-12 13:36:33 +00:00
hvlad
6c17170820 Made Mutex::tryEnter more efficient. Per Claudio request 2008-03-12 08:17:15 +00:00
hvlad
a4c75379e9 Correction, noted by Alex 2008-03-11 14:33:09 +00:00
hvlad
b033934400 Implement Mutex::tryEnter and new RefMutex class - mutex with reference counted lifetime 2008-03-11 14:08:23 +00:00
robocop
b4091ac9a6 Make them explicit. 2008-03-10 08:16:57 +00:00
asfernandes
74d8711856 Misc 2008-03-08 21:20:26 +00:00
robocop
812058f940 Totally misc. 2008-03-08 11:32:11 +00:00
robocop
1906fc5b02 Totally misc. 2008-03-08 07:34:44 +00:00
robocop
b36ed44a4b Cleanup. 2008-03-02 09:24:11 +00:00
paulbeach
5790eae079 Fix UNIX2003 symbol issue with kinterbasdb and SuperServer.
Make sure that sem is used properly depening on MacOSX 10.4 or 10.5
Correct the header file in config_root.cpp to pull in MacTypes.h properly
2008-02-29 15:23:17 +00:00
alexpeshkoff
2b91ffd1ce 1. Avoid suspicious operator!().
2. Make GlobalPtr<> usable in static local variables.
2008-02-28 13:59:03 +00:00
robocop
c94b6c9a58 Misc. 2008-02-21 13:19:45 +00:00
dimitr
e3e9d3c172 Cleanup. 2008-02-20 15:25:20 +00:00
dimitr
7ae3eb5977 1) Make enumeration and shutdown routines SuperClassic friendly.
2) Cleanup and minor refactoring of the Classic shutdown routines.
2008-02-19 16:23:53 +00:00
alexpeshkoff
cbed6dbcf2 Explicit init for mutexes - thanks to Claudio 2008-02-11 09:52:32 +00:00
paulbeach
978dabb8f2 64bit MacOS use __x86_64__ instead of DARWIN64 as per Adriano 2008-02-08 10:49:25 +00:00
paulbeach
aa44c442ce 64bit MacOS 2008-02-06 16:51:00 +00:00
asfernandes
691fb487d8 Misc 2008-02-06 00:43:54 +00:00
alexpeshkoff
ee6c433597 Mutexes cleanup:
1. Make all firebird mutexes recursive.
2. Enable exceptions to be thrown by mutexes and process them in code where needed.
3. Catch and ignore exceptions in various MutexGuard dtors.
2008-02-05 08:21:18 +00:00
alexpeshkoff
f9a14e19bf Use LockGuard instead of try/catch 2008-02-04 11:59:42 +00:00
alexpeshkoff
6622980725 One more common storage class 2008-02-02 17:43:59 +00:00
robocop
0d1985d1f0 Misc, explicit constructors, extra commas in enumerations, constness, etc. 2008-02-02 16:57:15 +00:00
asfernandes
6e88cb9598 Misc 2008-02-01 17:33:14 +00:00
alexpeshkoff
83ec91fb5b Ignore exceptions in destructors in release build 2008-01-31 12:01:03 +00:00
alexpeshkoff
e231c73051 First add an element, next increase count - makes class safer in MT world 2008-01-31 11:03:55 +00:00
alexpeshkoff
9f4c2e9a61 having this methods const dangerous - thanks to Claudio 2008-01-31 10:53:18 +00:00
asfernandes
ce0ae486c5 Misc 2008-01-29 18:07:37 +00:00
alexpeshkoff
35520bc1f1 fixed posix SS - use recursive mutex to protect security DB access 2008-01-29 15:03:34 +00:00
dimitr
d57616e749 Just a little useful feature. 2008-01-29 12:16:41 +00:00
dimitr
d61abb2710 Misc. 2008-01-29 11:57:35 +00:00
dimitr
2b89d48d8f Misc. 2008-01-29 10:20:41 +00:00
asfernandes
de8771570f Misc 2008-01-29 01:36:41 +00:00
mkubecek
2c98e5b193 added missing namespace 2008-01-27 02:33:14 +00:00
alexpeshkoff
fa4354b0f3 Remove conditional compilation - it was raising hell in windows build 2008-01-24 15:01:02 +00:00
alexpeshkoff
0943027a19 do not initialize context pool in init() - TLS may be not ready for it 2008-01-24 11:09:37 +00:00
dimitr
e1d53429ae Fixed the win32 build. 2008-01-23 19:27:36 +00:00
asfernandes
aea2bcb354 Misc 2008-01-23 19:03:16 +00:00
alexpeshkoff
704c3ddc11 added new file to support GlobalPtr 2008-01-23 15:55:21 +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
887206e65b The merge is being fixed. 2008-01-16 13:38:46 +00:00
dimitr
8ef0e6aba7 The merge continued. 2008-01-16 06:24:06 +00:00
robocop
3c411cdade No need to use the class name in a member function declaration inside the class. 2008-01-05 08:19:44 +00:00
asfernandes
0ee85c7525 Misc 2007-12-28 00:14:00 +00:00
paulbeach
8f06756d06 Minor Mods MacOS 2007-12-27 13:47:38 +00:00
paulbeach
4a2f1647fe Apply MacOS changes to HEAD 2007-12-27 10:55:58 +00:00
robocop
11afbba54d I don't see the point in using the class name to qualify a method declaration inside the class definition. 2007-12-22 09:37:27 +00:00
asfernandes
c27c33d750 Misc 2007-12-22 00:53:39 +00:00
paulbeach
f0e34ffc83 Apply MacOS changes to HEAD 2007-12-19 14:35:52 +00:00
dimitr
48ec3bd270 1) Make the class members more readable.
2) Add two methods: release() and reset() (accordingly to the ISO/IEC 14882 standard re. auto_ptr).
3) Utilize release() in DatabaseSnapshot.
2007-12-17 13:49:29 +00:00
alexpeshkoff
62dde2b68f misc 2007-12-07 12:50:43 +00:00
paulbeach
d1a0e95271 MacOS 10.5 (Leopard) updates 2007-12-07 12:19:37 +00:00
alexpeshkoff
57ff88afec Dropped method, compliant with STL's copy(), but never used due to presence of much better copyTo() 2007-12-03 13:29:33 +00:00
alexpeshkoff
b2ce2a8697 Fixed wrong return - thanks to Adriano 2007-11-19 10:30:59 +00:00
asfernandes
702ea9585e Misc 2007-11-17 17:22:41 +00:00
robocop
1445f9b685 Style. I expect the code is logically equivalent to the original. 2007-11-17 10:16:04 +00:00
asfernandes
54b36766c0 Misc 2007-11-17 00:38:16 +00:00
alexpeshkoff
79d4b002f9 Fixed posix build 2007-11-15 11:31:56 +00:00
paulbeach
c823619e92 HPUX Port 2007-11-12 15:18:49 +00:00
paulbeach
7602a29b94 HPUX Port 2007-11-12 14:26:44 +00:00
skidder
e6bd5d5466 Reduce warnings on Win64 2007-10-28 08:46:14 +00:00
alexpeshkoff
5bf6bd05d9 Fixed CORE-1543: Security bug in trusted authentication 2007-10-26 13:17:33 +00:00
alexpeshkoff
7545d52870 Corrections - thanks to Claudio and Adriano 2007-10-19 08:13:33 +00:00
alexpeshkoff
df41c37643 Fixed minor 64-bit issue 2007-10-18 12:47:22 +00:00
asfernandes
3ed4d0373a Misc 2007-10-06 16:07:31 +00:00
alexpeshkoff
752567679a Added templates to ensure alignment in INTL 2007-10-05 14:35:01 +00:00
alexpeshkoff
e570a56187 misc 2007-09-26 17:48:20 +00:00
dimitr
af1a7bd430 Fixed the wrong assertion. 2007-09-17 05:56:16 +00:00
asfernandes
7eb068c3ee Misc 2007-09-10 00:45:40 +00:00
robocop
7bbf9c2742 Switch to inline for now. 2007-09-05 09:41:54 +00:00
asfernandes
6fd370e90c Do not include file more than once 2007-09-05 02:26:47 +00:00