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