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

1611 Commits

Author SHA1 Message Date
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
dimitr
a173b38a2a Simplification. 2008-12-11 09:11:43 +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
asfernandes
bb35b7313e CORE-1667 - Reading password from file/stdin:
- Fixed crash when non existent file is passed
- Implement password hiding for Windows
2008-12-02 00:04:42 +00:00
alexpeshkoff
2340d1f9d3 CORE-1667 - turn echo off 2008-12-01 15:40:27 +00:00
paulbeach
c824c78d83 Small mods for HPUX to support 2.0.5 2008-12-01 14:52:56 +00:00
robocop
eb6ea18df4 Misc. 2008-12-01 09:21:31 +00:00
robocop
356191b67d Make it compilable on Windows again. 2008-12-01 09:20:46 +00:00
hvlad
5aa33681eb Misc 2008-12-01 07:28:13 +00:00
asfernandes
a5ff7ca091 Misc 2008-12-01 01:26:27 +00:00
alexpeshkoff
9431183e42 Implemented CORE-1667: Reading password from file/stdin 2008-11-30 17:11:56 +00:00
alexpeshkoff
2200a681f8 fixed some gcc warning 2008-11-28 18:49:07 +00:00
hvlad
c88151c080 Split class system_call_failed into two exception classes : system_error and system_call_failed. system_error is an wrapper for OS errors and system_call_failed inherits from system_error and calls abort() when exception raised. system_error intended for the cases where failure of OS call is expected and can be handled. 2008-11-27 20:16:46 +00:00
asfernandes
4c9513dbd8 Misc 2008-11-23 21:54:56 +00:00
alexpeshkoff
016b4f6c39 An attempt to save some space on stack in VC builds.
It was detected by Dmitry, that VC has rather non-standard rules when allocating
stack variables. I can provide omitted here details, but the result was about 13K on stack
per each PASS1_node() invocation (gcc consumed only 1.25K for it). With allocation of
status array from the pool problem became much less dangerous, but stack consumption is still
rather big in VC. This version of classes makes on-stack memory, used by each instance
of the class, as small as possible - sizeof(void*). Therefore please don't blame me
for 'strange' internals of Arg classes.
2008-11-23 14:34:39 +00:00
alexpeshkoff
b4f7717eb3 Implemented CORE-1758: nBackup support in Services API. 2008-11-20 17:29:38 +00:00
alexpeshkoff
1030c9f189 Make it possible to build firebird on NFS drive 2008-11-11 16:59:23 +00:00
alexpeshkoff
d8ea120ded AIX port - use FB_ prefix for alignment constants 2008-11-05 11:26:23 +00:00
dimitr
65bcdc368d Fixed the build. 2008-10-31 12:01:57 +00:00
alexpeshkoff
b63bf80ede Avoid too deep stacks 2008-10-31 11:14:37 +00:00
alexpeshkoff
1125b45ebe SAS changes - AIX port started 2008-10-30 09:33:55 +00:00
asfernandes
cbed660d28 Misc 2008-10-28 00:16:20 +00:00
hvlad
38fa6082be Remove unused method 2008-10-27 09:03:46 +00:00
hvlad
f6398cad07 Fixed bug CORE-2151 : Temp directory with space in the middle wrongly truncated from the rightmost space 2008-10-25 09:54:19 +00:00
robocop
d50c65a3d9 Close some of my favorite B.O.'s since FB1. To be reviewed by Vlad. 2008-10-21 06:17:03 +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
alexpeshkoff
4e0d36e598 Make ctor compatible with vector prepared by init_status() 2008-09-11 13:06:31 +00:00
alexpeshkoff
a3c947ea76 Renamed Service's methods according to Claudio's request to reflect data movement direction 2008-09-11 11:51:25 +00:00
asfernandes
0f387a9bee Misc 2008-09-06 18:42:55 +00:00
alexpeshkoff
de1cc4f41a Fixed broken by me this week use of status vector in services - thanks to D.Kovalenko 2008-09-05 11:41:00 +00:00
alexpeshkoff
8d353aceb9 Do not reallocate string into circular buffer if it is already in it 2008-09-05 11:33:52 +00:00
alexpeshkoff
8201105457 Do not try to ignore system errors in DEV_BUILD 2008-09-04 10:00:35 +00:00
asfernandes
cc5b689eda Misc 2008-08-29 02:18:50 +00:00
robocop
5bc24e78f2 Misc. 2008-08-28 07:14:20 +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
1739c548b1 Fixed CORE-903: Update Field update / result Updated. 2008-08-25 07:58:45 +00:00
dimitr
a8d62d83db Correction by Dmitry Kovalenko. 2008-08-25 07:02:17 +00:00
alexpeshkoff
1785fb6ee3 fixing CORE-1964: Use of 0 instead of isc_arg_end to terminate list of ERR_post's (and cousines) arguments is invalid
finished cleanup of vararg in error diagnostics in DSQL
2008-08-15 11:21:47 +00:00
alexpeshkoff
06118555f9 Fixed bug when appending vectors, thanks to Claudio 2008-07-28 10:07:09 +00:00
dimitr
8a9c465bdb Misc. 2008-07-27 22:33:03 +00:00
asfernandes
244ac97e80 Misc 2008-07-21 02:20:41 +00:00
robocop
bb672a9470 Fix CORE-2001. 2008-07-18 08:58:30 +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
robocop
284e77d57f Minor cleanup after Alex' changes. 2008-07-12 08:06:26 +00:00
robocop
1492df2080 Minor cleanup after Alex' changes. 2008-07-12 08:06:19 +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
alexpeshkoff
7c8427bc35 Separated CVT functions to common and jrd parts.
This made possible to avoid ugly CVT_move export.

Cleanup of errors handling in CVT functions.
2008-07-10 15:57:33 +00:00
alexpeshkoff
88d41e4983 Added new methods 2008-07-10 15:46:41 +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
alexpeshkoff
aac2809c66 Improved human readability - thanks to Claudio 2008-07-07 14:03:55 +00:00
asfernandes
45786da3bc Misc 2008-07-06 16:42:52 +00:00
robocop
894662c1e8 Misc. 2008-07-06 10:59:03 +00:00
robocop
915783bf8e Misc:
Updating legacy message
Adding a message
Fixing some typos
2008-07-06 10:56:34 +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
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
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
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
16457ea17a Warnings 2008-05-25 01:48:05 +00:00
asfernandes
9fc4a1881f Misc 2008-05-22 21:45:22 +00:00
robocop
a520a47a68 Fix CORE-1905 for aliases.conf (firebird.conf uses other rules, like demanding paths without quotes). My test string in aliases.conf was:
default = "F:\fb2dev\fbbuild\firebird2\temp\Win32\Debug\firebird\bin\#\f.fdb" #cats
2008-05-21 13:53:17 +00:00
robocop
83f77468a0 Misc. 2008-05-21 13:00:37 +00:00
asfernandes
c9202a3767 Misc 2008-05-18 02:02:50 +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
asfernandes
4f8b10d7dd Correction 2008-05-17 16:13:23 +00:00
alexpeshkoff
990c259373 Fixed CORE-1843: gbak with service manager don't allow path with space 2008-05-16 14:08:45 +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
3aad1f4cf3 Reduce number of warnings for 64-bit targets. 2008-05-12 05:25:55 +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
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
alexpeshkoff
7ff8e4d2be Fixed CORE-1879: Server uses wrong authentication method 2008-05-04 13:38:02 +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
dimitr
e18a16e3cb Removed OldParameterOrdering. 2008-03-25 16:42:10 +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
asfernandes
f49017d2ff Misc 2008-03-01 15:08: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
00c63c1f8d 1. Make signals handling in yValve MT safe.
2. Introduce new private API calls, fb__shutdown() and fb__shutdown_callback().
3. Introduce fb_smp_server - binary to run superclassic on posix.
4. Various cleanups.
2008-02-28 18:42:30 +00:00
alexpeshkoff
2b91ffd1ce 1. Avoid suspicious operator!().
2. Make GlobalPtr<> usable in static local variables.
2008-02-28 13:59:03 +00:00
asfernandes
312a391d78 Misc 2008-02-26 02:23:28 +00:00
dimitr
c1f75dcdf8 Ported SQLSTATE from Vulcan.
Part II: handling of isc_arg_sql_state.
2008-02-24 15:02:04 +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
19b903f0c5 fixed posix build 2008-02-14 11:52:59 +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
391a3e5f85 use GlobalStorage in UtilSvc 2008-02-02 18:16:04 +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
a4aac986f8 Make syslog interface as light as possible 2008-01-31 12:05:08 +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
a815c74a26 move remaining thd.x files to common 2008-01-23 15:54:36 +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
alexpeshkoff
470505bdae make it compile 2008-01-16 10:08:53 +00:00
dimitr
172c4ba85c The merge continued. 2008-01-16 06:33:06 +00:00
dimitr
80a3875c5f Cleanup. 2008-01-16 06:32:16 +00:00
dimitr
8ef0e6aba7 The merge continued. 2008-01-16 06:24:06 +00:00
dimitr
12c4322ab9 The merge continued. 2008-01-16 06:11:50 +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
hvlad
c2800e66e8 Implement CORE-1625 : Implement new setting to relax strict SQL standard's alias checking rules 2007-11-29 17:53:38 +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
dimitr
a47a191154 Cleanup after Alex's commit. 2007-11-15 13:50:49 +00:00
alexpeshkoff
b87d1f2418 Make it buildable with old SDK 2007-11-15 13:28:08 +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
asfernandes
2550e82d24 Misc 2007-11-02 15:13:47 +00:00
robocop
076d6778b9 Misc. 2007-10-29 08:30:49 +00:00
robocop
7feced9cd9 Make compilation possible in VC6.
Simplify code.
2007-10-29 03:20:33 +00:00
asfernandes
76f3f85b80 Misc 2007-10-29 00:19:27 +00:00
skidder
f6b33d471d Allow local protocol to work with servers running both under restricted accounts (e.g. Vista regular user) and unrestricted accounts (e.g. LocalService) 2007-10-28 14:35:16 +00:00
skidder
4f1b37669c Allow local protocol to work with servers running both under restricted accounts (e.g. Vista regular user) and unrestricted accounts (e.g. LocalService) 2007-10-28 14:23:20 +00:00
skidder
e554bb22e9 Correction 2007-10-28 09:03:43 +00:00
skidder
6cd78729bc Correction as per Adriano suggestion. Firebird client library links to Advapi32.dll only by mistake now. If somebody fixes that it could break privilege checking code 2007-10-28 08:53:37 +00:00
skidder
e6bd5d5466 Reduce warnings on Win64 2007-10-28 08:46:14 +00:00
skidder
44b0e24005 Restore the ability broken around FB 2.0.2 to run server under Vista and (hopefully) 2000/XP restricted accounts as application. This change may break the build against old Platform SDK, please replace SE_CREATE_GLOBAL_NAME constant with the hardcoded string in this case. 2007-10-27 20:48:41 +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
robocop
78e090ec4a Still trying to adjust isql to fix CORE-1261 completely: now it needs to understand that
RDB$PRIMARY<n> are implicit index names and shouldn't be part of a script.
2007-10-04 09:20:04 +00:00
robocop
1ea2f4b014 Misc. 2007-10-02 10:41:19 +00:00
asfernandes
f7e8bd1ff0 Misc 2007-10-02 01:53:12 +00:00
alexpeshkoff
fc89b23b7f added public method to make strings in vector permanent to StringsBuffer 2007-09-26 17:50:31 +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
a8355d8e8f Misc 2007-09-16 16:15:19 +00:00
robocop
e256254154 Fix CORE-1465 2007-09-16 09:02:53 +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
robocop
d59376ef7c Fix CORE-1440. 2007-09-04 08:22:48 +00:00
alexpeshkoff
63bd11815a Removed buggy implementation of semaphore on solaris in favour of standard one 2007-08-20 13:24:59 +00:00
alexpeshkoff
92f3857b56 Never include autoconfig.h directly 2007-08-20 13:22:49 +00:00
asfernandes
b5a23c12d1 Improvements:
1) CORE-1387 - Add MILLISECONDS handling to EXTRACT, DATEADD and DATEDIFF functions
2) CORE-663 - EXTRACT(WEEK FROM DATE)
2007-07-31 01:22:59 +00:00
robocop
4211bbddd8 Misc. 2007-07-29 02:30:35 +00:00
alexpeshkoff
8eb5b9d7a1 Backported fix for spare space in MemoryPool 2007-07-27 13:40:39 +00:00
asfernandes
6beb5e28bd Misc 2007-07-26 01:23:18 +00:00
hvlad
6cd3900a9f Implement CORE-1381 : Allow Firebird to not use filesystem cache for database files
Implementation in unix.cpp is experimental and commented out (calls of posix_fadvice) until testing
Cleanup in winnt.cpp : removed fil_force_write_desc
2007-07-25 18:44:54 +00:00
alexpeshkoff
18c4c77b18 Function to put pair to map, using default value, returning pointer to it 2007-07-24 13:44:20 +00:00
asfernandes
81f1f817e2 Fixed CORE-1331 - Charset transliterations don't work with EXECUTE STATEMENT 2007-06-23 18:48:27 +00:00
aafemt
ba26b3db9e Warning 2007-06-18 12:52:07 +00:00
alexpeshkoff
81442d2856 added missing method 2007-06-14 12:25:54 +00:00
paulbeach
1644f2cb64 MacOS Port into HEAD 2007-06-11 14:21:33 +00:00
robocop
3bfe45e966 Fix wrong indentation. 2007-06-08 08:40:23 +00:00
asfernandes
ae3c20aa55 Misc 2007-06-07 03:35:04 +00:00
alexpeshkoff
4889acba81 front-ported changes required for Solaris and Darwin 2007-06-06 09:03:33 +00:00
alexpeshkoff
77af3792c4 Null implementation for ST case 2007-06-05 07:11:39 +00:00
hvlad
217feb7a99 Fixed crash in DEV_BUILD when zero length blob is read by gbak. Reported privately by Adriano 2007-06-02 19:51:44 +00:00
hvlad
0fd72e6753 fb_assert added to not allow illegal use of StatusHolder 2007-05-28 20:24:17 +00:00
robocop
5f3d9bbd54 Misc. 2007-05-18 06:15:26 +00:00
hvlad
fca89c31f2 Add class for holding status vector and error strings 2007-05-17 13:01:20 +00:00
alexpeshkoff
ccf3fdd53b Fixed posix build 2007-05-17 12:30:04 +00:00
alexpeshkoff
14401b0c6e Misc 2007-05-17 12:25:54 +00:00
dimitr
1aa2ecfcb3 Changed the logic a bit to please Claudio. 2007-05-16 08:38:24 +00:00
dimitr
bc7c4d0054 Added remote process name to the monitoring data. Applications are allowed to override this value via DPB. 2007-05-16 07:54:33 +00:00
robocop
e058195959 Formatting and VC6 hack. 2007-05-16 06:52:23 +00:00
asfernandes
a4592b183c Correction 2007-05-13 13:44:10 +00:00
asfernandes
bf895341ef Fixed CORE-1256 - Table columns hide destination variables of RETURNING INTO, and others problems recent introduced 2007-05-13 01:37:54 +00:00
alexpeshkoff
2164354c90 misc 2007-05-08 08:50:17 +00:00
asfernandes
b5fab19683 Misc 2007-05-08 02:31:11 +00:00
hvlad
8a133871c0 Optimize SparseBitmap::set a bit 2007-05-04 12:37:47 +00:00
asfernandes
9d0d8bf2db Misc 2007-05-04 01:18:25 +00:00
alexpeshkoff
6f8fb87780 Front-ported fix for CORE-1240 - any task, using libfbclient, hangs on exit on Darwin/PPC 2007-05-03 13:52:16 +00:00
robocop
52f1b15e0c Misc. 2007-05-02 06:57:18 +00:00
asfernandes
c5cf6ea6b8 Implementation of CORE-1235: NATURAL JOIN and JOIN...USING 2007-04-29 19:04:26 +00:00
alexpeshkoff
c3d1f74d45 Removed tags, which never appear in any clumplet 2007-04-27 15:06:30 +00:00
alexpeshkoff
e26228270f 1. avoid code duplication defining arg_string
2. fix posix build
2007-04-27 09:20:17 +00:00
skidder
91fa2c7080 Fix MSVC8/Win32 build. IMO, these things where not nice:
- Target-dependent global typedefs
- Target-dependent stuff in COMMON .cpp files
2007-04-26 19:30:15 +00:00
alexpeshkoff
90b9b09261 fixed diagnostics 2007-04-26 16:15:24 +00:00
alexpeshkoff
064a298fd4 misc comment 2007-04-26 08:51:04 +00:00
hvlad
29ab1ca027 Implement CORE-1229 : Teach Firebird to allocate disk space by more than one page at a time 2007-04-25 21:08:57 +00:00
alexpeshkoff
8274d3213d Fixed CORE-867 - all utilities now hide password from "ps" as soon as possible 2007-04-25 14:10:47 +00:00
alexpeshkoff
4f56b0b690 fixed writing of SpbStart clumplet 2007-04-25 14:02:08 +00:00
skidder
04b9ec818b NBAK synchronization rework. This should fix CORE-1151 and other Nbackup stability issues 2007-04-24 14:05:46 +00:00
asfernandes
f676883248 Misc 2007-04-21 03:27:36 +00:00
asfernandes
f5e1a35cfd Avoid code duplication - thanks to Alex 2007-04-19 15:27:13 +00:00
alexpeshkoff
8b5dd60a66 fixed posix build after latest changes 2007-04-19 09:19:11 +00:00
alexpeshkoff
556908f3ad Added one more clumplet style 2007-04-19 09:16:38 +00:00
dimitr
eed31fda8b Fix for the issue reported by Michal Kubecek in fb-devel. 2007-04-18 17:01:30 +00:00
robocop
46df6dd844 Misc. 2007-04-18 11:02:41 +00:00
asfernandes
a798e403ee Misc 2007-04-17 02:24:33 +00:00
asfernandes
9582ea243c 1) Upgrade INTL interface to undestand misc. configuration informations
2) Make our ICU collations work with different ICU versions (tested with ICU 3.6)
2007-04-15 15:57:12 +00:00
alexpeshkoff
ccb4aa2474 Check for negative values to avoid problems comparing unsigned later in the code 2007-04-13 10:53:55 +00:00
dchri
42ffcc8a5d Renamed struct small to mbk_small 2007-04-11 15:55:30 +00:00
alexpeshkoff
f0d465bf34 Fixed gcc warnings, general (un)signed usage cleanup 2007-04-11 09:28:50 +00:00
robocop
22decb76f7 Misc. 2007-04-10 10:04:00 +00:00
robocop
345b422633 Inject UserBlob into QLI (not in all places). 2007-04-06 10:10:10 +00:00
alexpeshkoff
edfa819bf7 restored functionality of -e family of switches, broken somewhere in 1.5 2007-04-05 12:47:20 +00:00
alexpeshkoff
ed7baa5dc2 Misc 2007-04-05 12:35:39 +00:00
alexpeshkoff
c4c0764569 frontported from 2.0: fixed races on Darwin/386 during init 2007-04-04 12:21:09 +00:00
robocop
f4cfe6a829 Avoid some checks in the production build. 2007-04-04 08:51:27 +00:00
robocop
4391bbdcd4 Tweaks to UserBlob to support backup/restore. 2007-04-04 08:46:31 +00:00
robocop
16d2196a23 Drop useless functionality. 2007-04-03 08:19:39 +00:00
robocop
ef88fed09a Convenience. 2007-04-03 08:19:19 +00:00
asfernandes
f4aba4e145 Misc 2007-04-03 02:31:30 +00:00
robocop
40c36704ed Honor UCHAR. 2007-03-29 09:03:49 +00:00
robocop
870f3ecedd Commit the full dump() member function as requested by Alex. 2007-03-29 08:22:40 +00:00
robocop
857344fff5 Ann wasted considerable time getting rid of the nasty do-while (that may fool the eye) in several places. Let's not resurrect it unless really necessary (complex code, for example). 2007-03-29 07:08:37 +00:00
asfernandes
92059f157c Misc 2007-03-29 01:49:05 +00:00
alexpeshkoff
f15582bb93 Use 64-bit integer types, known to work cross-platform in all other places 2007-03-28 16:03:10 +00:00
asfernandes
1d51d4130e Misc 2007-03-28 15:52:25 +00:00
alexpeshkoff
0b17525b67 fixed posix build 2007-03-28 11:54:39 +00:00
robocop
33959bebf3 Handle blob in user side with a class and optimize blob handling for bulk insertion in isql. 2007-03-28 07:14:18 +00:00
robocop
e71a03261c This is the full SafeArg implementation for getting rid of the fixed parameter types in the messages db. Alas, the legacy messages (before FB2.1) can't be changed in number of arguments neither the types of arguments sent by callers of the MsgPrint family or the fb_msg_format functions can be changed because old clients know these legacy messages and would crash. 2007-03-28 04:20:36 +00:00
robocop
dafeed0787 Change the license to IDPL after getting permission from Blas. 2007-03-07 03:26:55 +00:00
alexpeshkoff
f9ddd45e64 fixed bug in my previous commit 2007-03-01 13:07:08 +00:00
alexpeshkoff
6130ee974c 1. Fixed different behavior of hasMore() in stack and it's iterator.
2. Use size_t as hasMore() parameter avoiding asserts and casts
2007-03-01 12:31:43 +00:00
asfernandes
cd56397a51 Misc 2007-02-25 21:25:33 +00:00
robocop
63a80b0db6 Misc. 2007-02-23 05:55:37 +00:00
robocop
a12b0ac1db Make a simpler resource management for Windows registry handles and local memory allocation. 2007-02-22 09:52:02 +00:00
asfernandes
ce9986d3e6 Misc 2007-02-21 00:02:00 +00:00
hvlad
54fd5ce4b1 Moved ISC_prefix_object_name into fb_utils::prefix_kernel_object_name to avoid a need to add isc.cpp to all projects which can read config file 2007-02-20 15:39:01 +00:00
hvlad
c0989bce8b Fixed CORE-1031 : fb_lock_print.exe fails on windows 2003 R2 / XP SP 2
and CORE-1133 : XNET (IPC) communication protocol does not work across sessions
2007-02-19 13:05:27 +00:00
robocop
8065ccc177 Fixing previous hack for VC6. 2007-02-15 10:21:52 +00:00
hvlad
221a091bea Bugfix after sparse bitmap optimization 2007-02-12 09:31:55 +00:00
aafemt
59cae9da28 Warnings 2007-02-08 10:17:06 +00:00
dimitr
fd3172ad8d Fixed allocator assertion for some platflorms with ALIGNMENT == 8. 2007-02-05 13:33:30 +00:00
dimitr
9ee8ef88cf Resolved CORE-937. 2007-01-25 12:56:16 +00:00
robocop
5f2c7f851f Sorry for the hack, but I need to compile. 2006-12-31 09:18:37 +00:00
hvlad
5c2cfcc38b Taken into account several useful notes made by Nickolay 2006-12-29 09:45:01 +00:00
hvlad
2b771cc6eb Implement improvement CORE-1070 : Optimize sparse bitmap operations (set, test and clear) with mostly consecutive values 2006-12-27 21:30:04 +00:00
asfernandes
59d4b412ea Misc 2006-12-20 14:31:29 +00:00
robocop
8caee6eeeb Remove unneeded template argument list (although I'm not sure why some compilers don't like it). 2006-12-20 08:21:33 +00:00
alexpeshkoff
e18f8046bd Use symbolic names for authentication methods in firebird.conf 2006-12-17 14:02:23 +00:00
asfernandes
f64e690090 Misc 2006-12-11 23:11:38 +00:00
alexpeshkoff
01f2969e7f Added 'Authentication' parameter to firebird.conf 2006-12-10 12:31:15 +00:00
alexpeshkoff
4980e64420 Fix CORE-988
class Semaphore now can work with broken versions of glibc (sem_timedwait())
2006-11-12 13:58:13 +00:00
asfernandes
88a9a84a01 Misc 2006-10-31 14:23:31 +00:00
alexpeshkoff
8f311b198b fixed my last commit - thanks to Adriano 2006-10-31 13:54:31 +00:00
alexpeshkoff
0f363bee95 remove() methods now return pointer to next after deleted element 2006-10-31 11:24:02 +00:00
dimitr
4d4f2ade7a Misc (64-bit related) 2006-10-29 14:16:29 +00:00
robocop
5feaeb3a27 Misc: since this file had a mixture of two coding styles, I chose one. 2006-10-07 09:29:52 +00:00
asfernandes
9c9019598a Misc 2006-09-27 00:32:47 +00:00
dimitr
228ff32d1e A few extentions to the clumplet classes. 2006-09-26 15:09:46 +00:00
dimitr
b0d36e202c Fixed the issue reported in fb-devel. 2006-09-22 04:24:45 +00:00
asfernandes
4599805c7f Detect ambiguities in implicit MATCHING of views in REPLACE 2006-09-07 03:30:31 +00:00
asfernandes
55ec30965d REPLACE statement 2006-09-03 01:09:23 +00:00
asfernandes
4d0252d980 Misc 2006-09-01 01:27:55 +00:00
robocop
56d19d8f53 Centralize detection of those pesky implicit domains.
There may be more cases that can use the new function.
2006-08-31 08:01:24 +00:00
asfernandes
2670981b70 Create common UCharBuffer based on Claudio and Alex suggestions 2006-07-31 15:43:20 +00:00
asfernandes
c13b4cc61a Work on collation attributes:
1) Define a common format for it
2) Merge attributes of the base collation in the attributes of the derived one
2006-07-30 20:31:25 +00:00
asfernandes
a306af2af3 Misc 2006-07-30 02:03:13 +00:00
dimitr
81c85b64db Misc. 2006-07-29 07:18:16 +00:00
alexpeshkoff
a24d42d2be Always initialize required members of status_exception 2006-07-27 14:17:02 +00:00
alexpeshkoff
e08b7d4a48 Changed program's structure to avoid errors in some compilers 2006-07-26 10:00:26 +00:00
asfernandes
37284696a7 Misc 2006-07-22 03:54:43 +00:00
dimitr
884b46303c 1) Replace API encode/decode routines with TimeStamp methods
2) Encapsulate range checks inside TimeStamp class
3) Fixed CORE-347
2006-07-21 08:23:53 +00:00
robocop
cd0ff027d8 Consistence. 2006-06-30 07:41:39 +00:00
asfernandes
adf5bd0f63 Misc 2006-06-30 00:50:49 +00:00
aafemt
8ba3a7acf8 Warnings 2006-06-29 09:06:32 +00:00
robocop
925477292a May be a better description. 2006-06-29 04:19:11 +00:00
alexpeshkoff
8282be0354 Front-ported fix for CORE-1 to HEAD. Do not accept badly formed clumplets any more. 2006-06-27 11:07:06 +00:00
asfernandes
6704275f76 Make compilable in MSVC6 2006-06-06 15:42:50 +00:00
alexpeshkoff
ee92258e74 cleanup 2006-06-06 11:22:33 +00:00
alexpeshkoff
13695f4993 redefinition of new/delete in non-STL case 2006-06-06 11:21:33 +00:00
alexpeshkoff
ded5cc2c49 cleanup 2006-06-06 10:34:32 +00:00
dimitr
f4c78b0459 Support for 64bit I/O. 2006-06-05 14:22:56 +00:00
asfernandes
9b2b49e95b Misc 2006-06-01 15:48:07 +00:00
kkuznetsov
bfa533238f Fix compile error 2006-06-01 14:06:53 +00:00
mkubecek
eb55caa701 fixed a typo 2006-06-01 07:22:59 +00:00
dimitr
fa7728156d Fixed issues reported by Michal. 2006-06-01 04:22:51 +00:00
dimitr
be1414ee62 Fixed issues reported by Michal. 2006-06-01 04:17:45 +00:00
dimitr
7cc12e8489 1) Reworked memory management in SORT. Now we're pools aware there.
2) Reworked error handling in SORT and its callers.
3) Replaced DLS+SortMem with the generic TempSpace class.
4) Replaced GDS temp file management with the TempFile class.
5) Various cleanup.
2006-05-31 08:53:00 +00:00
alexpeshkoff
61427e2a73 Limit packet size which we can process correctly 2006-05-29 16:30:28 +00:00
alexpeshkoff
7db6b515f1 fixed bug, reported by Adriano privately 2006-05-23 13:03:34 +00:00
alexpeshkoff
2aafa91873 avoid reinterpret_cast in exception's handler 2006-05-22 11:45:19 +00:00
alexpeshkoff
b6112f499b make it compilable with fresh gcc 2006-05-22 09:33:16 +00:00
robocop
9886d09647 Misc. 2006-05-20 04:22:07 +00:00
robocop
e77a46b011 Misc. 2006-05-20 03:55:54 +00:00
asfernandes
e4275e8fab Do not #include <typeinfo> 2006-05-20 01:10:40 +00:00
asfernandes
a3b411a4c1 Misc 2006-05-20 00:59:22 +00:00
alexpeshkoff
b056a118b5 1. Avoid use of STL
2. Reworked exceptions to make status_exception always hold correct status vector
3. Avoid use of RTTI
2006-05-19 15:17:02 +00:00
asfernandes
724cff6230 Misc 2006-05-19 01:35:05 +00:00
alexpeshkoff
13c59755fb restored normal processing way after fixing ObjectsArray 2006-05-18 14:16:46 +00:00
alexpeshkoff
d49440889c added missing operator= to ObjectsArray 2006-05-18 14:15:38 +00:00
dimitr
f0f8b55700 Temporary commit with the fixed (hopefully) TempDirList class. 2006-05-18 08:37:07 +00:00
robocop
8e94cdad0b Revert to old cumbersome notation so MSVC6 can call the inherited function. 2006-05-18 06:23:52 +00:00
dimitr
562e39f7f1 Fixed the code to please Claudio :-) 2006-05-16 11:55:05 +00:00
dimitr
9d0b3fef26 Fixed the bug I introduced yesterday. 2006-05-14 04:39:23 +00:00
dimitr
913b2645a6 Let our naming conventions be consistent. 2006-05-13 04:57:25 +00:00
dimitr
aa7a83fa99 Don't use spinlocks until FB3. 2006-05-03 10:50:13 +00:00
dimitr
f5799df0ef Correction. 2006-05-03 07:06:23 +00:00
dimitr
b4304d3998 Let's separate Mutex and Spinlock. 2006-05-03 05:44:26 +00:00
robocop
af96ab3495 Misc change. Hope the class auhtor doesn't take offense.
:-)
2006-04-29 00:31:19 +00:00
robocop
0332084b6a Misc: misplaced comment. 2006-04-26 05:26:23 +00:00
alexpeshkoff
469589f573 Use Firebird::Array instead of STL's vector 2006-04-25 17:49:24 +00:00
dimitr
36c2e44e54 Committed patch by Christian Barheine. 2006-04-25 13:00:50 +00:00
asfernandes
a597dc2263 Correction for posix build 2006-04-16 22:01:41 +00:00
kkuznetsov
1dcef0d3af Solaris error correction 2006-04-16 19:54:26 +00:00
alexpeshkoff
cd9548d264 ported fixes from release 2006-04-16 16:13:58 +00:00
robocop
86f990dd92 Misc. 2006-04-13 03:59:58 +00:00
kkuznetsov
2f1d73b0e2 Correct messages from Semaphore exceptions 2006-04-12 11:54:44 +00:00
kkuznetsov
6b86285492 Rewiev semaphore on Solaris platform:
add some fixes and loop on EINTR
2006-04-12 09:25:56 +00:00
asfernandes
381d7abe02 Misc 2006-04-12 01:57:06 +00:00
dimitr
6e0263b0b7 Sync with BV branch. Committed on behalf of George Sergeev. 2006-04-11 06:46:57 +00:00
asfernandes
6df3f27648 Misc 2006-04-07 02:58:06 +00:00
robocop
c5f2284b15 Style. 2006-04-06 08:18:53 +00:00
kkuznetsov
6572fbf570 Add check for result of mmap() on Solaris platforms 2006-04-05 06:25:47 +00:00
robocop
e5338ba1ed Only strcmp and strncmp have common names across all plartforms. Cater for differences in strcasecmp/stricmp and strncasecmp/strnicmp. 2006-03-25 07:08:00 +00:00
alexpeshkoff
baa8ede6a8 better support for OS error code in system_call_failed 2006-03-15 17:29:11 +00:00
alexpeshkoff
eddade0912 change default value of LegacyHash 2006-03-15 17:23:07 +00:00
alexpeshkoff
0f6c1dc50b let's try to make gcc4 happy 2006-03-03 16:03:14 +00:00
robocop
1f84bac700 Mark unused data members, discover more code associated to conditional compilation, clean some places, replace custom loops by memcpy and memset when possible, etc. 2006-02-23 05:08:26 +00:00
robocop
48f94b4624 The whole indentation was screwed in those files. 2006-02-21 04:29:00 +00:00
kkuznetsov
8d9617de87 Fix Sun C++ compiler visibility error 2006-02-20 08:25:50 +00:00
kkuznetsov
f608342deb misc 2006-02-20 08:00:52 +00:00
kkuznetsov
e90dca0f9e misc 2006-02-20 07:59:20 +00:00
kkuznetsov
10b644875f Support Sun C++ compiller in Bee+tree though conditional compilation. 2006-02-20 07:46:54 +00:00
robocop
14d73ccb8f Use SUPERCLIENT for fbudf for avoiding exception-related code. 2006-02-04 04:39:00 +00:00
robocop
97122ee389 Replace jrd_time.h by our timestamp.h, but I left timestamp.h's #includes commented where it *seemed* not necessary. 2006-02-03 08:39:36 +00:00
robocop
0c28df8cf2 Declare independence day from client library for fbudf . For builds other than MSVC6, the following has to be done:
- add to fbudf project the files timestamp.cpp and timestamp.h
- for the same project, define FBUDF_EXPORTS as preprocessor macro
- for the firebird2 workspace/solution/make/etc get rid of the dependency of fbudf on fbclient. Build files that I indentified that need fixes are:
builds\posix\Makefile.in.client.fbudf
builds\posix\Makefile.in.embed.fbudf
builds\win32\msvc7\fbudf.vcproj
builds\win32\msvc7\Firebird2.sln
MacOs build files ignore fbudf completely.
This change eliminates the problem with the client library having different names depending on the build type (SS, CS, embedded).
2006-02-02 00:28:03 +00:00
paul_reeves
6baee04435 Forward port OldColumnNaming from Fb 1.5.3 2006-01-17 04:40:31 +00:00
alexpeshkoff
ca70704563 fixed gcc warning(s) 2006-01-16 15:39:55 +00:00
robocop
b67b0219ab Change from getenv to readenv. This is still getenv in Linux/UNIX but GetEnvironmentVariable in Windows. 2006-01-14 04:48:59 +00:00
kkuznetsov
c4ca94823b Fix compile error on Solaris - udefined va_list 2006-01-10 15:01:03 +00:00
robocop
7939c5f3d8 Avoid a crash. 2006-01-08 01:11:06 +00:00
alexpeshkoff
32ef4f5b67 fixed compilation after changes in exception 2006-01-07 16:58:23 +00:00
alexpeshkoff
6dee6d3079 avoid vararg constructors in status_exception 2006-01-07 16:55:40 +00:00
robocop
59a525a87b Complete Alex fix. 2006-01-07 00:34:42 +00:00
alexpeshkoff
1ecaaa049e fixed "invalid database handle" error 2006-01-06 11:21:57 +00:00
alexpeshkoff
2690209189 MetaName can now handle NULL in constructors and assignments 2006-01-03 15:07:47 +00:00
hvlad
bb880019d8 Avoid frequent (unneeded and inefficient) allocation\deallocation of stack entryes 2005-12-26 21:18:02 +00:00
robocop
75ddccb613 Misc. 2005-12-25 04:01:49 +00:00
robocop
03a066dcb9 [s|g]etConfigFile renamed [s|g]setConfigFilePath. Clearer, since we have a class named ConfigFile but the function only returns a string with the path, not an object. 2005-12-25 03:59:49 +00:00
robocop
0ff27c2af8 Don't crash the debug build if the allocations report file cannot be opened. 2005-12-24 07:28:31 +00:00
alexpeshkoff
ec0ea3e492 fixed problems with empty SPB 2005-12-23 08:24:01 +00:00
alexpeshkoff
8de8ef96ce added Redirection parameter to firebird.conf 2005-12-21 10:10:37 +00:00
alexpeshkoff
addf657da0 use mutex instead of spin lock 2005-12-18 16:10:48 +00:00
dimitr
f73bf9d193 Undone my changes in clumplets to follow Alex's solution. 2005-12-10 10:15:10 +00:00
dimitr
d074f8bf8b Fixed regressions with SAPI. 2005-12-10 10:05:35 +00:00
alexpeshkoff
cc70a63753 added test to trim characters >= 128 2005-12-04 12:08:06 +00:00
alexpeshkoff
26f8b389ee fixed trim of characters >= 128 2005-12-04 12:06:55 +00:00
dimitr
eaef84342c More missing stuff. 2005-12-03 10:22:22 +00:00
dimitr
07c7a232de Fixed backup. 2005-12-03 09:48:35 +00:00
alexpeshkoff
f5871b1929 fixed problems, caused by my previous commit 2005-12-02 16:54:04 +00:00
robocop
5c8f816adc Totally misc. 2005-12-01 03:00:23 +00:00
alexpeshkoff
d288dfeb88 Clumplet's improvements 2005-11-30 17:11:23 +00:00
alexpeshkoff
62a24d46e4 1. Moved data structures, written to database file, into ods.h.
2. Added new types of clumplets to ClumpletReader and ClupmletWriter.
3. Applied modified ClumpletReader and ClupmletWriter to /remote and partially /jrd.
4. Added active protection from remote brute-force attack to services API.
2005-11-27 20:53:09 +00:00
robocop
41e13ca1b1 Fix for Alex's removeRange & removeCount methods in Array class. 2005-11-18 05:31:25 +00:00
alexpeshkoff
35d800e0be Retry when system call is interrupted 2005-10-28 15:25:15 +00:00
robocop
eb03e65ddc Source code comments. 2005-09-27 07:47:11 +00:00
dimitr
b3033115de Slightly change the round function. 2005-08-24 09:09:35 +00:00
dimitr
5e6031a4b5 Fixed one of the UDF access issues. 2005-08-22 09:16:31 +00:00
kkuznetsov
b4b0b9d683 Comment correction thanks to Claudio 2005-08-19 06:04:10 +00:00
kkuznetsov
ef47186fab Some comments added 2005-08-18 09:33:25 +00:00
robocop
4399b15b3d const_iterator
The code in intlmanager originally confused me.
2005-06-11 00:13:30 +00:00
asfernandes
59213efe7e Merge INTL branch into HEAD 2005-05-27 22:45:31 +00:00
alexpeshkoff
23aa3b9fef misc 2005-05-18 11:06:15 +00:00
robocop
e2b16d669d Get rid of redundant definition: already in constants.h. 2005-05-18 07:29:13 +00:00
alexpeshkoff
c03d2241c5 fixed issues, reported by Claudio 2005-05-17 18:20:07 +00:00
alexpeshkoff
a9c754f16f fixed bug noticed by Vlad 2005-05-14 05:21:51 +00:00
alexpeshkoff
e0b828a3b1 Added class to handle metadata names 2005-05-12 18:26:13 +00:00
alexpeshkoff
c6fb984d13 make Firebird::vector const-friendly 2005-05-12 18:24:05 +00:00
robocop
f3d1c47f99 Misc. 2005-04-18 03:36:03 +00:00
robocop
b5ec6d966c Be in sync with our header protection convention. 2005-04-18 03:26:45 +00:00
kkuznetsov
438005440f Allow setting TCP_NODELAY socket option in Classic Server
and make if default true on both arhitecture.
2005-04-04 12:54:34 +00:00
dimitr
dd1ef4e306 no message 2005-02-20 08:35:35 +00:00
dimitr
02f626c62c Fixed bug with WEEKDAY. 2005-02-19 10:37:35 +00:00
kkuznetsov
f922e000b7 Comments cleanup 2005-02-17 12:42:49 +00:00
dimitr
c00ffe7ec0 Fixed the default memory management in fbclient.
Avoid crashing the server when fbclient is used in its address space.
2005-02-16 08:46:48 +00:00
alexpeshkoff
655e961b67 add constness 2005-02-13 18:03:40 +00:00
alexpeshkoff
63256e3ae0 misc 2005-02-02 11:22:06 +00:00
alexpeshkoff
a9ce92244e license + misc 2005-01-30 11:44:59 +00:00
alexpeshkoff
381c1a7ef3 added feature (requested by Dmitry) - first path in ExternalFilesAccess
is used as default when external file is to be initially created
2005-01-26 18:02:30 +00:00
dimitr
03cfc7c237 Changes and cleanup regarding XNET vs old-style IPC. 2005-01-16 12:35:27 +00:00
alexpeshkoff
19411789b3 fixed multi-threaded client and Win32 embedded problems
after introducing context memory pools
2005-01-14 09:56:38 +00:00
robocop
3c862d57a3 Misc. 2005-01-12 08:30:24 +00:00
robocop
741a1d3d5a Correct the year in Alex' changed licenses. 2005-01-12 04:34:16 +00:00
robocop
fccc202ece Change the license.
Also, these two files were done by Dmitry Yemanov, not Mark, according to viewCVS.
2005-01-12 04:24:53 +00:00
alexpeshkoff
e2dd2c56cd applied correct license to files, added by me to the project 2005-01-10 18:06:14 +00:00
robocop
4012106884 Misc. 2004-12-25 09:44:03 +00:00
kkuznetsov
af0ab61ae2 Some things is moved from R1.5.1.
Starting separating of defines accoding
SOLARIS -- any threading modes
SOLARIS_MT - solaris with Sun threading model
current nothing - solaris with posix threading model
2004-12-24 09:35:48 +00:00
robocop
d65307b497 Style. 2004-12-24 08:52:39 +00:00
robocop
4d41decc4f Misc. 2004-12-22 08:49:26 +00:00
alexpeshkoff
e7d4b79b12 use context pool in AutoStorage class 2004-12-17 11:13:24 +00:00
robocop
24742873ad fb_string.h is moved to common/classes. 2004-12-17 05:41:47 +00:00
robocop
de3902e4b4 Misc. 2004-12-17 05:40:10 +00:00
alexpeshkoff
e5234b68a3 fixed bug, noticed by Adriano dos Santos Fernandes 2004-12-13 15:49:28 +00:00
alexpeshkoff
4c30c0a47d test for Firebird::string 2004-12-13 12:05:29 +00:00
robocop
b59cf9c750 I can revert the constness if it becomes too restrictive in the future. 2004-12-12 06:50:10 +00:00
robocop
e5347aae55 Misc. 2004-12-12 01:55:21 +00:00
robocop
fddf92395e Misc. 2004-12-10 22:54:16 +00:00
alexpeshkoff
387e678cca applied Clumplet* classes to dpb where possible 2004-12-09 19:19:47 +00:00
robocop
3ca7f5afb7 Misc. 2004-12-03 06:24:18 +00:00
aafemt
62069daa7a Shut up warning 2004-12-02 12:11:48 +00:00
robocop
af6a16107a Misc. 2004-11-30 06:18:39 +00:00
alexpeshkoff
d0ebde70a8 make SortedObjectsArray easier to use in simple cases 2004-11-29 10:07:43 +00:00
robocop
9ee8334926 "elem" is size_t, assert on it. 2004-11-29 09:59:19 +00:00
skidder
1df8ec2f9e Fix GCC build curing MSVC build at the same time 2004-11-29 01:08:38 +00:00
robocop
6af639b4e3 Corrections. 2004-11-27 08:13:39 +00:00
robocop
9293a840da Extra assertion and acknowledge "elem" is size_t. 2004-11-27 03:31:39 +00:00
robocop
88d932d394 Formatting and a couple of assertions. 2004-11-27 03:30:42 +00:00
robocop
84f8c37dba const. 2004-11-27 03:30:09 +00:00
alexpeshkoff
2841466d4d make it compile with VC6 2004-11-25 16:10:38 +00:00
skidder
c4ed612128 Fix POSIX build 2004-11-25 02:28:17 +00:00
skidder
016fcdcce5 Implement Claudio suggestion regarding clean generic map class 2004-11-24 20:38:31 +00:00
alexpeshkoff
bdd3b32278 use ClumpletReader to parse dpb options 2004-11-24 18:26:24 +00:00
robocop
d6535351a2 Misc: style. 2004-11-24 09:22:07 +00:00
robocop
ab23729381 Misc. 2004-11-23 04:05:49 +00:00
skidder
51e43de012 Fix POSIX build warning 2004-11-22 22:31:31 +00:00
skidder
9507cf9714 Context variables support 2004-11-22 20:22:03 +00:00
robocop
eb99bbcccf Poor man's version of the old gds_alloc_report. 2004-11-17 08:56:07 +00:00
robocop
290ec7f231 Misc. 2004-11-16 08:35:59 +00:00
robocop
a0fa398757 Misc: where did those phantom spaces come from? 2004-11-16 06:22:12 +00:00
robocop
f85e3e2369 Totally misc. 2004-11-16 05:03:43 +00:00
robocop
642da74b93 Totally misc: comment. 2004-11-16 05:02:02 +00:00
alexpeshkoff
f7d554d960 1. const-correctness of Clumplet classes
2. changed datatype to store ClumpletWriter buffer to avoid a lot of casts
3. added methods to support PathName operations
2004-11-15 16:34:47 +00:00
skidder
2096e1029e Minor correction of previous commit 2004-11-14 20:59:14 +00:00
skidder
8d71db462e Add time routines to TimeStamp class 2004-11-14 20:49:47 +00:00
alexpeshkoff
ea9e900ab3 cleanup of methods, storing data in plain char* 2004-11-14 18:05:13 +00:00
skidder
dde4d7b557 Commit change adding method used by ClumpletReader/ClumpletWriter 2004-11-11 21:46:25 +00:00
hvlad
aba34753cb Add config file parameter for the garbage collection policy 2004-11-09 12:59:37 +00:00
robocop
8dd94e9d5b Misc and mark suspicious place(s). 2004-11-08 02:57:23 +00:00
alexpeshkoff
687c93284e security fix
added LegacyHash parameter to firebird.conf - setting to true
makes it possible to check for old (crypt) hashes in security.fdb
2004-11-07 14:12:15 +00:00
robocop
0c1c5428f0 Misc: extra semicolons do not help. :-) 2004-11-07 10:52:36 +00:00
robocop
77571e4c69 1.- Extra unneeded semicolons are being garbage collected.
2.- Style: sepate params by space, type for<space>(, etc.
2004-11-06 07:20:44 +00:00
skidder
d55bbe7c29 Fix posix build after my timestamp change 2004-11-04 19:38:24 +00:00
skidder
933063c7ce Slightly adjust Dmitry's Firebird::TimeStamp class to make it more useful, change is coordiated with Dmitry. Use thread-safe localtime_r routine when it is available 2004-11-04 19:14:20 +00:00
robocop
d9c3c78abd Be explicit. 2004-11-04 05:26:56 +00:00
dimitr
56a15c33dc Improved TimeStamp slightly to suit non-engine needs. 2004-11-03 17:28:05 +00:00
skidder
54d28cbfb3 Bunch of fixes in clumplet readers and writers 2004-11-03 08:38:09 +00:00
skidder
57b1dbb5a5 Remove comment which is no longer pertinent 2004-11-03 08:36:14 +00:00
skidder
18538667a6 Fix warning 2004-11-02 06:43:56 +00:00
dimitr
5040f83365 Changed TimeStamp class a bit, as suggested by Claudio. 2004-11-01 08:29:16 +00:00
dimitr
75593c7de4 Removed unused code. 2004-10-31 05:40:38 +00:00
dimitr
6f3700fc6c Replaced non-centralized datetime management with a new class. 2004-10-30 19:28:56 +00:00
robocop
9fb4a9136a Misc. 2004-10-30 06:03:06 +00:00
skidder
0c1785e708 Kill a few redundant const qualifiers 2004-10-29 17:51:27 +00:00
skidder
d65eac7698 Go back to passing pointers to impure areas instead of direct bitmap pointers. The approach I tried doesn't work with nod_bit_in correctly and doesn't seem pretty to me anymore 2004-10-28 23:26:16 +00:00
aafemt
1155b1906d Variable shadowing 2004-10-27 09:28:26 +00:00
skidder
b29f8356c5 Implement routines for convenient dumping of memory pools under debugger 2004-10-25 05:14:12 +00:00
skidder
42defc6a3d Default to BugcheckAbort=1 in DEV_BUILD 2004-10-24 02:47:05 +00:00
skidder
b47700523d Little corrections in clumplet handler classes 2004-10-23 01:21:11 +00:00
skidder
5fc3d1bc31 Classes for secure manipulations with clumplet structures 2004-10-22 06:24:40 +00:00
robocop
7e97c27e75 Some folks couldn't compile... 2004-10-15 05:50:32 +00:00
robocop
efefff581e Change Pascal AND to C++ &&
Thanks to Marlena Miller that couldn't compile.
2004-10-11 10:00:37 +00:00
skidder
71c2c14bb9 Implement vprintf routine in Firebird::string class 2004-10-09 00:43:04 +00:00
skidder
632fd3c4b9 Correct Firebird::string::printf behavior for very long strings 2004-10-08 22:52:08 +00:00
robocop
373b5e27de Fixed a bug in fatal_exception's constructor that causes fill_status to write garbage in the status vector.
Overload what() for the same class. It helps gpre to quit on failures (gpre changes still not posted).
2004-10-07 09:27:34 +00:00
robocop
ac4aa367b9 recalculate_length(),
copy_to(), safe copy to a char array,
constness,
style.
2004-10-07 08:35:25 +00:00
hvlad
4591207542 Correct on-stack constructor for SparseBitmap (discussed with Nickolay) 2004-10-05 07:03:26 +00:00
robocop
ed17cfafbf Style:
if<space>(
for<space>(
switch<space>(
while<space>(
2004-10-04 08:15:00 +00:00
robocop
bdf5dea379 Close vulnerability #3 in gds__interprete's new version.
Traditional sprintf could write past the end of buffer.
2004-10-04 04:44:52 +00:00
robocop
f67540a4a5 Member functions that don't change anything are marked const. 2004-10-02 09:33:06 +00:00
robocop
90dab6af2e Prevent buffer overrun (equivalent to evl.cpp's concatenate). 2004-10-02 09:31:12 +00:00
hvlad
d281601365 Make new class SparseBitmap compile by MSVC6 2004-10-01 06:27:57 +00:00
arnobrinkman
d9c6c3ebab fix bug with singular bitmaps, in consideration with Nickolay 2004-09-29 21:58:58 +00:00
skidder
85297ac45a Fix MSVC7 builds 2004-09-28 21:50:10 +00:00
skidder
02a0915156 Teach engine to work with larger record numbers - 64-bit internally, 40-bit externally 2004-09-28 06:28:38 +00:00
robocop
d61df6f212 Introducing our snprintf to avoid writing
SNPRINTF(...);
buffer[sizeof(buffer) - 1] = 0;
Makes a provision to detect overruns in systems that lack the snprintf familty.
Comments welcome
2004-09-26 11:17:39 +00:00
robocop
821a83eaba Take advantage of the full range in name_length(), in case we need it.
In most platforms, int <==> ptrdiff_t
2004-09-26 07:38:34 +00:00
robocop
840bf14b36 If we are using namespace fb_utils, it doesn't make sense to prefix functions in it with fb_ again. Mechanical replacement made one by one (no bulk automatic changes). 2004-09-26 01:49:52 +00:00
robocop
4eefd6d63e Totally misc 2004-09-24 06:40:13 +00:00
alexpeshkoff
07cc528371 Fixed a number of errors in Firebird::string 2004-09-23 07:03:14 +00:00
robocop
c3660458b4 Added a comment, in case it's not obvious 2004-09-20 08:37:11 +00:00
robocop
5dce94f59f Collapsed an example of Borland's advanced copy/paste technique that repeats routines in different files into a single function. 2004-09-15 03:49:52 +00:00
robocop
9a34d7bb91 Misc: fix typo in a comment 2004-09-07 08:35:29 +00:00
alexpeshkoff
079c3f0602 Added firebird.conf parameter UsePriorityScheduler (requested by Nickolay) 2004-09-02 09:00:48 +00:00
alexpeshkoff
a808403767 Partially removed DeadThreadsCollection parameter from firebird.conf.
Concerning complete removal of it I wait for response on my letter to devel list.
2004-09-01 16:11:12 +00:00
skidder
a28561fcf5 Look up Valgrind header in more appropriate place 2004-09-01 09:36:44 +00:00
alexpeshkoff
c3db4aaa97 added (and used in sources) template to change and restore default pool 2004-08-30 18:11:08 +00:00
skidder
7a85d40428 Fix typo and small bug in memory manager test code 2004-08-28 23:14:46 +00:00
skidder
674e533b80 Update memory manager tests 2004-08-28 05:19:23 +00:00
skidder
6c9402b881 fix handling of zero-length allocations, fix rare memory management error, add quick pool verification logic 2004-08-28 05:18:42 +00:00
skidder
b8601cce19 quick pool verification logic 2004-08-28 05:15:02 +00:00
skidder
f13f54c966 Some Linux targets may miss support for fancy rwlock options 2004-08-28 02:51:11 +00:00
robocop
3a45a04ea7 MSVC6 doesn't keep variables in a for() only in that scope. This standard construction is rejected:
for (int i = ...);
for (int i = ...);
Put the variable again before the loops to be able to compile.
2004-08-27 04:46:01 +00:00
brodsom
46aa03e06e Fix signed/unsigned comparisons 2004-08-26 18:28:12 +00:00
robocop
305b9088f4 misc 2004-08-26 11:04:14 +00:00
skidder
035ac89d7c Clarify comment and update assertion check 2004-08-25 03:09:57 +00:00
brodsom
57528f8bc2 Avoid variable shadowing 2004-08-24 23:11:02 +00:00
robocop
24aab1bd43 Renamed ptr_block to ptrToBLock and block_ptr to blockToPtr for better self-documenting code as agreed privately. No functional change. 2004-08-24 05:16:01 +00:00
skidder
933488964a Update memory manager tests 2004-08-22 21:31:19 +00:00
skidder
a1371e4ffa Slightly streamline logic of allocation critical path. Correct 2 memory manager bugs added during last optimization attempt. We are now ~40faster than malloc from GLIBC 2.3 2004-08-22 21:28:19 +00:00
skidder
3b3bd79ddb Use fine-tuned tree page sizes by default. This increases tree performance by ~7 We are now 1.5 times faster than GNU STL tree 2004-08-22 21:09:13 +00:00
robocop
6be277355f Misc: formatting 2004-08-21 09:18:24 +00:00
skidder
706e941871 Old Valgrind stacktraces need to be cleaned up on pool destruction 2004-08-18 23:39:43 +00:00
alexpeshkoff
45e2d3556f removed a lot of posix warnings after changing int to size_t in vector.h 2004-08-16 12:25:39 +00:00
alexpeshkoff
4568a1c968 replaced exit() with throw fatal_exception - thanks to Jim 2004-08-16 12:24:30 +00:00
skidder
158cc8b30b Optimize memory manager a little bit 2004-08-10 04:10:47 +00:00
skidder
0374e1a9fd Fix memory manager to allow reliable detection of references to memory from deleted pools under Valgrind. Make memory usage statistics more accurate both in Valgrind and general cases. Adjust pool dumping routine to be aware of delayed free blocks 2004-08-09 01:24:54 +00:00
skidder
b980507ad2 Valgrind support 2004-07-30 22:38:08 +00:00
skidder
6129db2caa Correct a couple errors I introduced during int->size_t transition for array indexing 2004-07-29 17:44:03 +00:00
robocop
a5ceabacc8 Style and simplification 2004-07-22 07:17:58 +00:00
skidder
04076ea1ff size_t is more correct type for container sizes and indices 2004-07-17 00:13:34 +00:00
skidder
5494b34caa size_t is more correct type for container sizes and indices 2004-07-16 23:06:31 +00:00
skidder
d749b61c21 Let our dynamic libraries work 2004-07-14 21:49:03 +00:00
robocop
22d2a488d1 Preach with the example and change the license to the IDPL 2004-07-10 03:17:02 +00:00
skidder
32baa87086 Change license for source files which I wrote 2004-06-30 01:26:40 +00:00
skidder
3b062b90b6 Little string class cleanups 2004-06-29 23:31:12 +00:00
skidder
c8d4985a25 Add forgotten length checks 2004-06-29 12:36:42 +00:00
robocop
949830d0c6 1.- const correctness
2.- style
3.- Try to fix the mess caused by different data types used to represent bifields of SCL_ constants defined in scl.h,
first round. No circular dependencies found through MSVC. Still pending dyn* and grant.epp files.
2004-06-29 04:37:59 +00:00
skidder
ad6ffddae2 Minor bugfixing/cleanup of string class. I hope this change doesn't break anything, but Alex should look at it 2004-06-26 22:23:19 +00:00
skidder
f4e7ebdd3b Implement rudimentary framework to track lifetimes of active BLOBs.
This solves the following issues:
1) Outrageous memory consumption when blobs are converted from strings during request processing
2) Materialization doesn't cause invalidation of BLOB IDs too early.
Original behaviour caused errors with updatable views or procedures receiving BLOB arguments.
2004-06-22 20:13:10 +00:00
skidder
323847148c Const-correctness 2004-06-21 22:45:17 +00:00
skidder
de7fc77158 Fix bug with wrong output when printing out used only blocks from memory pool 2004-06-21 22:17:51 +00:00
robocop
320fe78b42 Misc changes 2004-06-21 02:48:47 +00:00
kkuznetsov
1cbc0a3b9b Solaris theading portion of TlsValue 2004-06-16 12:33:13 +00:00
skidder
3ad92020ae Slightly refine BeePlusTree accessor semantics 2004-06-13 23:49:28 +00:00
brodsom
1aa7b9452c Looking for extra ; at namespace declaration end 2004-06-13 23:45:02 +00:00
skidder
eb468e9a4d Bring module up to date 2004-06-13 18:30:20 +00:00
brodsom
bf8f359a13 Remove wrong semicolon 2004-06-13 03:09:29 +00:00
brodsom
f5c80410d2 -Correction for gcc 3.4 2004-06-13 03:08:13 +00:00
kkuznetsov
a0cd7b2449 hCVS: ----------------------------------------------------------------------
Solaris portion of thd.cpp
2004-06-11 14:23:30 +00:00
alexpeshkoff
1591a54e5e Thread cleanup:
1. Added macros to declare thread entrypoints
2. THD_mutex_* functions use Firebird::Mutex
3. Thread local storage use fb_tls.h
2004-06-08 13:41:08 +00:00
alexpeshkoff
d28b38c01e explicit constructor for lock guard 2004-06-08 06:51:13 +00:00
robocop
1426fd894b We use DIRECTORY_FILENAME_H for protecting headers 2004-05-29 04:34:31 +00:00
alexpeshkoff
9a34ce553c make bool (isEmpty/hasData) checks for string and stack safe 2004-05-27 16:26:52 +00:00
alexpeshkoff
2fd7f7b01c text indent fix 2004-05-27 12:01:14 +00:00
alexpeshkoff
dd4280938f use windows upper/lower-case conversion functions for win32 build 2004-05-27 09:24:21 +00:00
alexpeshkoff
99dd6b8a03 optimize string performance with the price of 4 additional bytes per string 2004-05-26 16:10:56 +00:00
kkuznetsov
44242a72ce Fixed a couple of compile errors on Solaris x86 2004-05-24 11:23:41 +00:00
brodsom
dd5d8aba0a -Replace stuff macros with either common stuff inlines or class inline functions 2004-05-24 11:03:54 +00:00
robocop
1953841ae4 Without being able to compile it, I fixed the new SOLARIS code in semaphore.h that:
- didn't have any rational indentation but random positions and a combination of blanks and tabs
- instead of testing errno, assigned a value to it (= instead of ==)
- has some strange emoty if(); only put a comment here.
People shouldn't post code to CVS without at least reviewing visually what they wrote.
2004-05-23 06:07:46 +00:00
kkuznetsov
e2f56c62e3 Added semaphore implementation used conditional varyable and mutex, becouse of no sem_timedwait existans.
Ugly, errorable and untested.
2004-05-21 14:14:34 +00:00
robocop
441817bd82 1.- Misc changes
2.- Style
3.- Recover dsc_ttype in dsc after Blas' cleanup as a synonym for dsc_sub_type in text types
2004-05-21 06:16:17 +00:00
skidder
277788de7a NetBSD port from James K. Lowden 2004-05-20 23:05:02 +00:00
brodsom
7d532508ea Macro cleaning 2004-05-17 15:07:49 +00:00
kkuznetsov
234fdb0e43 Add check for caddr_t to fix compile error on Solaris munmap,
some more warnings to prefix solx86gcc, comment historycal pragmas
2004-05-13 14:05:00 +00:00
brodsom
8699aec9c9 -Avoid shadow warning 2004-05-12 19:23:17 +00:00
robocop
802f244ec1 Misc changes 2004-05-09 05:48:33 +00:00
alexpeshkoff
52928b2148 fixed bug in split() 2004-05-06 08:42:56 +00:00
skidder
21e44d3af3 Close a couple potential tins of worms spotted by Claudio in my previous commits 2004-05-03 17:05:56 +00:00
brodsom
1b92c3fb08 -Fix MinGW build 2004-05-03 12:20:01 +00:00
skidder
e9f8ef102e Fixes needed to make GCC 3.4 happy 2004-05-03 04:25:06 +00:00
skidder
8a4cb13eb2 Care about quirks of Windows platform 2004-05-03 01:53:24 +00:00
skidder
43cb0d1ce4 Y-Valve handle translation layer 2004-05-02 23:06:37 +00:00
brodsom
e0854daa99 Removing ib_stdio.h 2004-04-28 22:00:03 +00:00
skidder
9d15b2e7ee Fix GCC build 2004-04-25 03:29:20 +00:00
hvlad
2afe197918 Added Stack::iterator::hasMore method. Replaced getCount() and notEmpty() with hasMore() when it's possible 2004-04-23 08:02:52 +00:00
alexpeshkoff
7b27fa55be fixed number problems after lls to Stack conversion 2004-04-21 14:14:36 +00:00
alexpeshkoff
176041c63e applied fixes, mentioned by Claudio 2004-04-19 13:40:30 +00:00
alexpeshkoff
045e9dc8ec 1. removed any mentions of blk_pool() from engine (and method itself)
2. replaced 'struct lls' with 'template Stack'
2004-04-18 14:22:27 +00:00
skidder
6c9fbf8d85 Fix MSVC build 2004-04-18 03:34:22 +00:00
skidder
abdbec6f84 Switch to Firebird container templates for request resource tracking. This significantly reduces CPU time any memory consumption for databases with complex metadata 2004-04-18 02:50:38 +00:00
alexpeshkoff
2c12c05621 fixed problem with system log overflow in case of missing aliases.conf
** front-ported fix **
2004-04-11 14:47:04 +00:00
robocop
d601bab884 Style 2004-04-11 07:12:09 +00:00
skidder
648dd40826 Make it build 2004-04-11 02:40:08 +00:00
dimitr
a79171299f Corrections. 2004-04-10 14:00:04 +00:00
robocop
59b235cea3 Small corrections 2004-04-10 00:25:22 +00:00
skidder
af366d4f5a Add BugcheckAbort option to produce coredumps on BUGCHECKs and structured exceptions 2004-04-06 07:25:45 +00:00
aafemt
94bbbc5a6c TLS for win32 gcc 2004-04-06 05:53:36 +00:00
alexpeshkoff
40772a2e70 Added "T* getBuffer(capacity)" - this helps use Array as temp buffer 2004-04-01 14:15:34 +00:00
alexpeshkoff
eb23cf8796 string cleanup 2004-03-31 18:10:22 +00:00
alexpeshkoff
90d3086320 fixed serious bug in string::printf - thanks to Nickolay 2004-03-31 18:09:40 +00:00
alexpeshkoff
170bef6340 moved use of fb_assert to correct place 2004-03-31 17:13:24 +00:00
robocop
1824343930 Cleanup.
Fixed a linking error with MSVC6, too.
2004-03-28 09:10:30 +00:00
skidder
4093bc4ace Fix error in my previous commits spotted by claudio 2004-03-28 00:38:13 +00:00
skidder
dd02aa34e6 Fix Windows build after my previous commit 2004-03-25 23:36:03 +00:00
skidder
f26d84f76b 1. POSIX build libraries export only public API. 2. Unify exports for PROD_BUILD and DEV_BUILD. 3. Support for context memory pools. 4. Memory manager has lower memory overhead exceptionally on 64 bit targets 2004-03-25 23:12:50 +00:00
skidder
eb89d0fdce Fix a couple warnings 2004-03-25 06:50:50 +00:00
skidder
bb17776b6d Notify Alex about flaw in his string code 2004-03-24 05:43:08 +00:00
alexpeshkoff
94d2f698e2 1. introduced Jrd and Ods namespaces
2. cleanup of blk* request conversions
3. fixed memory allocation in Execute Statement
*** posix build fixes ***
2004-03-20 15:45:12 +00:00
alexpeshkoff
7007d6f2a4 1. introduced Jrd and Ods namespaces
2. cleanup of blk* request conversions
3. fixed memory allocation in Execute Statement
2004-03-20 14:57:40 +00:00
alexpeshkoff
0b53355916 1. dropped unneeded AutoPtrFromString
2. added private copy constructor and assignment to avoid errors
2004-03-20 14:30:52 +00:00
alexpeshkoff
233bcc7858 assert if AutoStorage() used for object not on the stack 2004-03-20 14:29:05 +00:00
robocop
f58c769c37 Cleanup. In geeky words:
PandoraBox* pbox = reinterpret_cast<PandoraBox*>(&can_of_worms);
pbox->open();
pbox->flush();
Nickolay may want to undo my ods.h changes if gcc insists
in its crusade against non-PODs and poodles.
2004-03-18 05:56:06 +00:00
alexpeshkoff
0e24170951 fixing posix build 2004-03-15 19:35:00 +00:00
alexpeshkoff
151368f3cc fixing posix build 2004-03-15 19:10:44 +00:00
alexpeshkoff
e35767f54b This should fix non-VC6 builds. Thanks to Nickolay Samofatov 2004-03-15 18:48:10 +00:00
alexpeshkoff
67f1740fea Various cleanup to make engine compile and work after mentioned earlier changes.
Mainly:
1) MemoryPool* => MemoryPool& in arrays' constructors
2) use Firebird::string to keep strings data
2004-03-14 13:40:14 +00:00
alexpeshkoff
f0ef70fa45 1. Full pair (both first and second pooled objects) added.
2. Pair may be placed to AutoPool.
2004-03-14 13:24:48 +00:00
alexpeshkoff
7457f71e0f 1) a bit more correct memory allocation debugging
2) use AutoStorage to allocate string data
2004-03-14 13:22:16 +00:00
alexpeshkoff
1a925afa38 Added capability to have following kinds of arrays:
1) sorted or unsorted
2) POD or objects
3) with or without inline storage
4) allocating from auto- or permanent-pool
All array constructors take MemoryPool& instead of MemoyPool*
2004-03-14 13:19:47 +00:00
alexpeshkoff
221ae2fa2a Pools support 2004-03-14 13:14:58 +00:00
alexpeshkoff
18b7cb3710 Templates, supporting objects initialization 2004-03-14 13:10:40 +00:00
alexpeshkoff
699cf30d77 May use _any_ way to delete pointer, not only operator delete 2004-03-14 13:08:36 +00:00
alexpeshkoff
0dbd44a35b Constructors to put arrays in local memory, use AutoStorage. 2004-03-14 13:07:01 +00:00
alexpeshkoff
2ae251add1 Added *Storage classes to be used as primary base for all pool-oriented classes 2004-03-14 13:05:02 +00:00
skidder
e8a3fd7ed1 Fix a couple errors I introduced in previous commit. Spotted by Claudio 2004-03-11 05:30:07 +00:00
robocop
2ab1f94dd2 Cleanup
Some minor corrections
Second step to rename
2004-03-11 05:04:26 +00:00
skidder
f13321bc74 Fix a few warnings. Not very harmless ones 2004-03-11 04:26:54 +00:00
skidder
b6e5ccd413 Clean up.
1. gds__alloc doesn't throw
2. Add NOMEM handlers to a couple places
3. kill HAVE_*SNPRINTF conditionals
2004-03-09 00:17:07 +00:00
robocop
e6187cecd2 Cleanup
Some bug fixes
Style
2004-03-07 07:58:55 +00:00
alexpeshkoff
b9b470b9c1 1. front-ported blob returning fix
2.correct license
2004-03-05 09:37:18 +00:00
skidder
725b7f9972 Be slightly more portable 2004-03-02 20:23:32 +00:00
eku
b28781c507 Fixed compilation issues (missing include files, wrong defines). 2004-03-02 08:43:33 +00:00
eku
8985d4672e Fixed compilation on systems without snprintf 2004-03-02 08:42:11 +00:00
alexpeshkoff
d261af4111 don't start variables names with underscore - _syscall caused problems with MSVC6 2004-03-01 16:50:26 +00:00
skidder
25b969d1b7 Fix MSVC build 2004-03-01 04:57:43 +00:00
skidder
dc7aab8f9c Fix up exception handling. Handle (do not ignore) std::bad_alloc and generic exceptions, provide syscall and error information in system_call_failed 2004-03-01 03:35:23 +00:00
skidder
4b5428f833 Memory pages manager 2004-03-01 03:18:42 +00:00
skidder
ad97d0409d Fix POSIX build 2004-02-29 05:49:03 +00:00
alexpeshkoff
87cf963814 make our class behave MemoryPools friendly 2004-02-28 19:44:04 +00:00
alexpeshkoff
0097df8f26 Made it const-correct 2004-02-28 19:19:03 +00:00
robocop
5c3c8abd9a Big cleanup.
God have pity on platform maintainers.
I only can compile/test Win32; sorry, folks.
2004-02-20 06:43:27 +00:00
aafemt
a705c5da0c Remove unneeded comparsions 2004-02-18 11:10:34 +00:00
aafemt
9c03f64c65 Fix a couple of warnings 2004-02-17 11:08:09 +00:00
alexpeshkoff
c4cd1da183 Please add this file to common section of appropriate builds!
Added native firebird::string class.
2004-02-09 07:41:45 +00:00
alexpeshkoff
efb64b2aab Added native firebird::string class. 2004-02-08 17:08:34 +00:00
alexpeshkoff
0ee51a6c60 const correctness 2004-02-08 16:35:40 +00:00
robocop
663e3b16e7 Cleanup 2004-02-02 11:02:12 +00:00
robocop
2b295a9108 General cleanup. Sorry if I missed some occurrence. 2004-01-28 07:50:41 +00:00
skidder
08eee5ebaa Further AMD64 fixes. Given this fixes you may start playing with databases using isql_static. 2004-01-21 07:18:30 +00:00
eku
4cbef7b979 Fixed compilation problems with size_t. It's primarily defined in sys/types.h 2004-01-13 13:40:20 +00:00
eku
14b3de174e Port numbers are limited to 16 bit. 2004-01-13 13:38:36 +00:00
stryqx
f7d06df281 Fix build on FreeBSD. 2004-01-12 00:56:03 +00:00
brodsom
36acb09df9 Fix MINGW build 2004-01-07 00:32:02 +00:00
fsg
e3ba8c5f42 Some changes to get it compiled under linux.
Use const declarations for BLANK etc. in isql.h again.
FSG
2004-01-03 14:12:45 +00:00
robocop
efa538a4ca adding obviously missing files, thanks Arno. 2003-12-31 10:33:02 +00:00
robocop
16cbc204df Cleanup 2003-12-31 05:36:12 +00:00
robocop
ad0b5c4de3 General cleanup 2003-12-22 10:00:59 +00:00
dimitr
995417f11a Minor cleanup 2003-12-14 18:26:25 +00:00
skidder
7558470e08 Fix another initializatoin race condition 2003-12-14 04:34:37 +00:00
dimitr
9859341694 Let's be compatible with the config files open in binary mode. 2003-12-13 10:59:59 +00:00
robocop
b02c629735 Cleanup
Some name changes
Try to fix SINIX-Z problems with send() prototype
2003-12-05 10:35:47 +00:00
dimitr
b15341b213 Small correction. 2003-12-01 19:44:29 +00:00
dimitr
b26b48c9bf Oops, sorry. 2003-12-01 17:53:44 +00:00
dimitr
726f0f836e Correction 2003-12-01 16:29:45 +00:00
dimitr
c8c2b04c49 1) Const correctness
2) A few extra vector-like methods
2003-11-30 21:01:35 +00:00
skidder
16ea16b085 Fix invariant tracking in recursive procedures and when invariants
depend on variables. This solves issues like SF#627057.
2003-11-23 20:17:30 +00:00
kkuznetsov
021a046ec1 Write solaris portion of RWlock 2003-11-21 19:42:06 +00:00
stryqx
99bb1302db Fix the spinlocks case for FreeBSD 4.x 2003-11-11 23:58:49 +00:00
robocop
db77ffa605 const correctness, variables in scope, cleanup, etc. 2003-11-07 08:06:35 +00:00
brodsom
ff070a16a8 Replacing assert with fb_assert 2003-11-03 23:59:24 +00:00
skidder
7b99b8a57b Basic INTL cleanup.
- Rework (mostly undo) John's changes
- Some function type safety
- Make INTL OO layer very thin (this should slightly improve performance)
2003-11-03 17:14:45 +00:00
brodsom
51893d72ad - Make MinGW build again after Nickolay patch (There is a multiple definition of std::bad_alloc::~bad_alloc()) 2003-11-03 02:05:14 +00:00
robocop
cda707bd36 const correctness and other related changes 2003-11-01 10:26:43 +00:00
brodsom
7acc0cf5bd Write fatal error messages into firebird.log 2003-10-30 10:59:32 +00:00
skidder
e5397f4180 Ugly hack to make Firebird compatible with host applications using STL 2003-10-27 22:27:30 +00:00