hvlad
512a33e0c0
Fixed CORE-1299 : Wrong index entries order at non-leaf b-tree pages
2007-06-02 12:10:40 +00:00
hvlad
f3163f9295
Fixed CORE-1298 : BTR\garbage_collect code can make a deadlock in a page cache
2007-06-02 12:07:52 +00:00
hvlad
13cfb0e2f6
Correct error handling in index creation code when no space left on disk
2007-04-25 20:54:36 +00:00
asfernandes
f676883248
Misc
2007-04-21 03:27:36 +00:00
robocop
0a0213ff84
Totally misc.
2007-04-19 07:51:22 +00:00
hvlad
7b020a53ba
Fixed bug CORE-1215 : Wrong SELECT query results using index to evaluate >= condition
2007-04-18 10:47:10 +00:00
hvlad
8bfa87d892
Let store plain 64-bit record number in index_sort_record (and in sort scratch file) and became independent of additional fields of RecordNumber class.
...
Also pack index_sort_record structure to avoid compiler added padding which unnecessary grow sort scratch file
2007-03-20 18:02:10 +00:00
dimitr
a72f56ea4b
Misc.
2007-02-08 14:03:41 +00:00
hvlad
2e343c74ef
Implement improvement CORE-1069 : Optimize index scan when more than one index scanned and ANDed
2006-12-27 21:01:02 +00:00
robocop
9a61c5185f
Totally misc.
2006-12-19 08:36:48 +00:00
alexpeshkoff
8896a21641
frontported fixes from 2.0
2006-12-15 17:30:41 +00:00
alexpeshkoff
f86fef0c48
Fixed CORE-1053
2006-12-14 16:20:35 +00:00
hvlad
f206c67d12
Fixed CORE-1040: Wrong single-segment ascending index on character field with NULL and empty string values
2006-12-06 09:37:25 +00:00
dimitr
543fc5e0d1
Enabled rescheduling points for classic. It allows to shutdown database or cancel operation timely for a heavy loaded attachment.
2006-10-31 15:59:23 +00:00
hvlad
c747acbbaa
Fixed CORE-952: AV when blob is used in expression index
2006-10-17 11:03:20 +00:00
robocop
870b1a0363
Misc.
2006-10-08 06:43:59 +00:00
dimitr
988782a96a
1) A new class to handle aggregated multi-level performance counters.
...
2) Cleanup and minor fixing.
3) A few monitoring changes.
2006-10-07 10:53:01 +00:00
robocop
581d251c82
Misc: idx_id is already USHORT.
2006-09-15 07:24:31 +00:00
hvlad
04051ab102
Fix for CORE-895: possible unique index violation
2006-08-12 17:21:55 +00:00
hvlad
8d7cd54229
Correction to the fix :)
2006-06-01 16:28:38 +00:00
hvlad
029706631f
Fixed unregistered FB2 bug:
...
endless loop when exception during index's expression evaluation occured
2006-06-01 16:25:30 +00:00
robocop
7040d668fd
Misc.
2006-05-25 08:40:23 +00:00
dimitr
211645e3dc
Getting rid of the old allocator routines.
2006-05-23 10:17:00 +00:00
asfernandes
24d936cd70
Misc
2006-05-22 01:29:06 +00:00
hvlad
701f2cbda4
Global temporary tables implementation
2006-05-21 22:07:35 +00:00
asfernandes
292ad66e96
Misc
2006-05-20 01:53:51 +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
dimitr
8c66a4883a
1) Fixed wrong ALL results in the ODS11 optimizer.
...
2) Fixed SF #527681 -- Strange/Inconsistent query results
2006-05-17 19:15:41 +00:00
asfernandes
eb77ff3709
Misc
2006-05-01 02:26:10 +00:00
dimitr
b8342226e6
Const'ness.
2006-04-30 15:11:50 +00:00
alexpeshkoff
469589f573
Use Firebird::Array instead of STL's vector
2006-04-25 17:49:24 +00:00
robocop
d74438baed
Fix the discordant data types between flags and the vars used to work with them (really dangerous if the flag is USHORT and you hold it in a UCHAR). Also, get rid of some debris of the uppercased typedefs.
2006-04-19 07:10:53 +00:00
hvlad
6cf18cc072
Bug fix: don't use page buffer after page was released - it can be replaced
...
by another page and may lead to serious corruptions
2006-04-18 12:45:22 +00:00
robocop
c5f2284b15
Style.
2006-04-06 08:18:53 +00:00
dimitr
5010e6b0cb
Fixed the bug that caused unexpected bugcheck(205) in big databases.
2006-03-29 15:26:24 +00:00
robocop
10cb928ddc
More cleanup.
2006-02-23 06:52:25 +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
hvlad
47ac2b981a
bugfix
2006-02-08 10:11:46 +00:00
robocop
1ca7a582f9
EXPRESSION_INDICES code is considered stable and therefore there's no need to keep it protected by macros. Please do a full rebuild.
2006-01-14 07:00:44 +00:00
dimitr
2e258f4cf9
Fixed BUGCHECK(205) related to ODS11 index changes.
2006-01-08 08:21:46 +00:00
robocop
c76a021f70
Misc.
2005-11-29 06:18:06 +00:00
hvlad
80827a5284
1. Move IDX\eval_expr_idx into BTR_eval_expression
...
2. Replace similar code in BTR_key by new BTR_eval_expression
3. Use EXE_find_request in index expression evaluation to avoid AV in case of using index simultaneously in some connections
2005-11-28 21:43:06 +00:00
robocop
85c48cb387
Misc.
2005-10-28 04:15:09 +00:00
hvlad
15ac3a9f47
Fixed SF #223060
...
Slow processing of GREATER-THEN operator
2005-10-27 21:52:17 +00:00
hvlad
0216a3d2f5
Don't allow to create primary key constraint on non-null fields with null values.
...
For example:
create table buggg (f1 int not null, f2 int not null);
commit;
insert into buggg values (1, 1)
commit;
alter table buggg add pk int not null primary key;
or
alter table buggg add constraint pk_buggg primary key (pk)
or
alter table buggg add constraint pk_buggg primary key (f1, f2, pk)
2005-10-26 15:11:51 +00:00
dimitr
48a377cd7a
Fixed server crashes caused by buffer overruns if too big index key was used.
2005-09-30 08:48:17 +00:00
robocop
6c89683142
Totally misc.
2005-07-31 00:45:38 +00:00
arnobrinkman
0725746548
Fix scope problem reported by Konstantin
2005-07-29 10:42:38 +00:00
arnobrinkman
14f667f4b6
Fix bug SF #1242982
...
Equality search on first segment (integer) in compound indexes resulted
in more scans on specific values (2^n, f.e. 131072) then needed.
2005-07-24 18:32:29 +00:00
dimitr
894fa1e011
Removed unused thread scheduling option.
2005-06-12 06:27:12 +00:00
asfernandes
59213efe7e
Merge INTL branch into HEAD
2005-05-27 22:45:31 +00:00
hvlad
7fd4f64863
Correct previous fix for multisegment descending indexes
2005-05-08 09:43:36 +00:00
hvlad
f1d576feb4
Fixed unregistered bug - "index key too big" when creating descending index
2005-05-07 19:45:57 +00:00
hvlad
493bdd92cd
Correct index validation code. Big thanks to Arno
2005-05-03 15:45:23 +00:00
hvlad
565b5e173b
Undo my previous commit. Duplicate chains in not null keys in unique indexes not sorted by design. Changes must be done in index validation code
2005-05-01 19:23:04 +00:00
hvlad
735f369d76
Duplicate chains not sorted by record number in unique indices
2005-04-30 10:10:48 +00:00
dimitr
92dbd6ae59
More complete fix for DESC indices.
2005-02-22 06:32:35 +00:00
arnobrinkman
11a7710b92
Fix segment-selectivity values for descending indexes, reported by Dmitry Yemanov
2005-02-21 20:07:24 +00:00
hvlad
5247ca5bab
Fix AV when expression index is created
2005-02-10 13:37:05 +00:00
hvlad
9826986fb8
Fix bug SF #1076858
2005-02-08 21:23:59 +00:00
arnobrinkman
a3b6944a75
Fix duplicate checking for unique indexes
2005-01-27 14:33:58 +00:00
robocop
8d4b89723f
Welcome to paranoid programming.
2005-01-25 06:33:07 +00:00
dimitr
567fafa30c
Fixed expression indices bugs.
2005-01-24 09:35:47 +00:00
robocop
229d08b927
Misc.
2005-01-22 04:16:55 +00:00
alexpeshkoff
f9898ffb5a
fixed my bug with descending indices in referential constraints
2005-01-21 13:49:35 +00:00
arnobrinkman
eddac3c767
Fix index bug when a single NULL with recordnumber 0 was 2 times removed.
...
Due this the LevelNode was removed, which of course may never happen.
2005-01-03 19:24:48 +00:00
robocop
4012106884
Misc.
2004-12-25 09:44:03 +00:00
robocop
d65307b497
Style.
2004-12-24 08:52:39 +00:00
skidder
f44f06d085
Fix the memory leak from transaction pool when selectable stored procedures are called from PSQL or in subqueries
2004-12-07 01:19:55 +00:00
robocop
6c7f268dbd
Style.
2004-12-04 06:50:38 +00:00
hvlad
ff69a28ece
Don't check uniqueness for null keys - this leads to big waste of time
2004-12-03 07:55:32 +00:00
robocop
d6535351a2
Misc: style.
2004-11-24 09:22:07 +00:00
robocop
795a70df00
const.
2004-10-20 00:09:39 +00:00
dimitr
421f259a4e
1) Locks related cleanup
...
2) Got rid of TRA_nowait + transaction waits related cleanup
3) Return isc_lock_timeout when it's necessary
TODO: Enhance SET TRANSACTION
2004-10-07 09:15:32 +00:00
robocop
cad2990b6e
Make comment clear
2004-10-02 09:26:21 +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
arnobrinkman
9d63050cf4
bugfix in delete_node
...
litlle optimization in compress() function
2004-09-27 22:42:56 +00:00
robocop
d293b51c50
Things that don't change are const
2004-09-25 10:19:50 +00:00
arnobrinkman
3a5cec7e97
1) Add filename and linenumber to loginformation for ERR_BUGCHECK
...
2) Fix some index bugs and little refactoring
2004-09-24 00:11:32 +00:00
robocop
4c48615dc5
Style
2004-09-15 03:46:33 +00:00
dimitr
a975c23a96
Fixed the context pool management.
2004-09-03 06:10:23 +00:00
alexpeshkoff
c3db4aaa97
added (and used in sources) template to change and restore default pool
2004-08-30 18:11:08 +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
15a5a276da
Fix signed/unsigned comparisons
2004-08-26 21:47:19 +00:00
dimitr
9d37131978
Fixed a server crash I introduced recently.
2004-08-23 18:45:40 +00:00
arnobrinkman
2260f712f9
add missing initializations
2004-08-22 01:00:51 +00:00
dimitr
cfb0e2eb5a
More asserts and some style changes. Thanks to Claudio.
2004-08-20 07:55:09 +00:00
dimitr
f84006b483
Cosmetics.
2004-08-20 07:18:16 +00:00
dimitr
89a31cdd07
Make EXPRESSION_INDICES generally working.
2004-08-20 04:04:06 +00:00
dimitr
d09aa165db
The EXPRESSION_INDICES code now compiles.
2004-08-19 18:41:19 +00:00
skidder
faabb4b9b4
Fix some of the problems in new indices code noted by Valgrind. These fixes are result of discussion with Arno. But indices are still broken; Arno promised to fix remaining stuff from this area during next weekend
2004-08-19 00:48:11 +00:00
dimitr
ca4ea54a1e
Small optimization of multiple OR booleans (or a constant IN predicate).
...
The idea is to use a single sparse bitmap for an index matching and hence avoid OR'ing bitmaps for every argument value.
Ported from Yaffil.
2004-08-17 17:52:19 +00:00
alexpeshkoff
31039a254e
next step preparing to allocate auto objects memory from appropriate pool
2004-08-16 12:28:43 +00:00
arnobrinkman
5c1e32de9e
Bugfix with dates below Julian date and old code removed
2004-08-07 16:44:05 +00:00
robocop
507f53d9bd
Style and misc
2004-07-22 07:15:10 +00:00
arnobrinkman
cd36ca6e05
fix bug in ignore_nulls part
2004-07-20 18:57:42 +00:00
arnobrinkman
945fefb3b2
When we ignore NULLs in the index then we must already skip them very efficiently from the start.
2004-07-16 01:30:33 +00:00
arnobrinkman
401fb7d12f
1) Fix starting with and empty string index problem where empty string is passed in parameter. (STARTING WITH ?) ? = ''
...
2) New index structure ensures that NULLs cannot hold the same key-value as a data value.
3) Ignore NULLs already on scanning index where possible.
2004-07-15 23:01:12 +00:00
robocop
1bbb740b98
Undo inheritance in ODS page types as requested by Nickolay. Either some macros are too silly or the compiler is limited by the standard here.
...
Notice I may have missed some file that's not compiled in Win32.
2004-07-10 03:20:33 +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