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

721 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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
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
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
alexpeshkoff
d49440889c added missing operator= to ObjectsArray 2006-05-18 14:15:38 +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
alexpeshkoff
0f6c1dc50b let's try to make gcc4 happy 2006-03-03 16:03:14 +00:00
robocop
48f94b4624 The whole indentation was screwed in those files. 2006-02-21 04:29:00 +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
alexpeshkoff
ca70704563 fixed gcc warning(s) 2006-01-16 15:39:55 +00:00
kkuznetsov
c4ca94823b Fix compile error on Solaris - udefined va_list 2006-01-10 15:01:03 +00:00
alexpeshkoff
32ef4f5b67 fixed compilation after changes in exception 2006-01-07 16:58:23 +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
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
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
dimitr
b3033115de Slightly change the round function. 2005-08-24 09:09:35 +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
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
19411789b3 fixed multi-threaded client and Win32 embedded problems
after introducing context memory pools
2005-01-14 09:56:38 +00:00
robocop
741a1d3d5a Correct the year in Alex' changed licenses. 2005-01-12 04:34:16 +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
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
robocop
8dd94e9d5b Misc and mark suspicious place(s). 2004-11-08 02:57:23 +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
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
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
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
alexpeshkoff
07cc528371 Fixed a number of errors in Firebird::string 2004-09-23 07:03:14 +00:00
robocop
9a34d7bb91 Misc: fix typo in a comment 2004-09-07 08:35:29 +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
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
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
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
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
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
robocop
d601bab884 Style 2004-04-11 07:12:09 +00:00
robocop
59b235cea3 Small corrections 2004-04-10 00:25:22 +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
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
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
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
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
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
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
robocop
ad0b5c4de3 General cleanup 2003-12-22 10:00:59 +00:00
dimitr
995417f11a Minor cleanup 2003-12-14 18:26:25 +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
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