hvlad
8ff8037331
Fixed bug CORE-1370 : Memory leak when using CTE within procedure
2007-07-21 20:47:02 +00:00
hvlad
385507c6e4
Restored accidentally broken alignment rules
2007-04-03 13:06:08 +00:00
hvlad
4ec502a7f6
a) Refactor sort module. All related sort_work_file management moved into TempSpace class now. Former sort_work_file is now TempSpace::Segment
...
b) Add parameter names to declarations of TempSpace methods. It make sources much more readable, i believe, and allow IntelliSense to make useful hints
c) Reworked sort module to use more memory for merge buffers. It significantly increased speed of large sorts. Memory mostly reused from TempSpace memory blocks
2007-04-03 12:57:32 +00:00
alexpeshkoff
9068d7787f
Frontported alignment and endianess fixes from 2.0
2007-03-25 16:09:00 +00:00
hvlad
b3dcfede36
Close external table's file when relation is not used by the engine.
...
This is simplest fix for bug CORE-132 (Restore fails on external table) and CORE-961(Free external tables)
2007-03-19 21:34:52 +00:00
robocop
b94c6d20e5
Misc:
...
- DSC_EQUIV is no longer a macro; no need to wrap arguments in extra parenthesis.
- Make reinterpret's explicit.
- No need to cast dsc_address to UCHAR* since it's already of this type.
Hope I didn't screw someone.
2007-03-12 09:13:15 +00:00
dimitr
1b44f36eda
Front-ported RISC-specific fixes.
2007-03-09 08:11:10 +00:00
asfernandes
2100a06c84
Make MOV_move know how to move blobs.
...
This fixes CORE-1147: Blobs are not converted to string in UDF parameters.
2007-03-02 00:46:03 +00:00
hvlad
af5ef6ad73
Fixed CORE-1146 : AV in rse\invalidate_child_rpbs for recursive queies
2007-03-01 13:34:44 +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
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
asfernandes
feea41adb4
Misc
2006-10-18 20:25:26 +00:00
hvlad
6d7acf880b
Fixed bug in recursive CTE implementation
2006-10-18 09:21:34 +00:00
hvlad
ba2836868f
Fixed broken handling of recursive CTE's
2006-10-18 08:41:03 +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
asfernandes
5c26d54f02
1) Fixed CORE-899 - Problems with explicit cursors in unwanted states
...
2) Make RDB$DB_KEY in outer joins returns NULL when appropriate
2006-09-07 01:55:49 +00:00
asfernandes
151bbaf9ce
Fix MSVC6 build
2006-08-02 19:45:49 +00:00
asfernandes
a34dcf3722
Misc
2006-08-02 01:43:50 +00:00
hvlad
b20aa92714
Common table expressions implementation
2006-08-01 20:37:58 +00:00
dimitr
af6cdd9262
More protections.
2006-07-28 09:15:32 +00:00
dimitr
c68587fe66
1. Virtual tables
...
2. ODS 11.1, procedure type and relation type
2006-07-17 17:44:18 +00:00
robocop
dfadf32400
Delenda est SMALL_FILE_NAMES.
2006-06-08 04:51:45 +00:00
robocop
b1f0e2efa6
Get rid of redundant cast.
2006-06-02 08:39:11 +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
asfernandes
7bfbe63f82
Misc
2006-05-24 03:03:52 +00:00
asfernandes
8dfca54dda
Complete Dmitry's cleanup of all_proto.h
2006-05-23 12:23:53 +00:00
hvlad
701f2cbda4
Global temporary tables implementation
2006-05-21 22:07:35 +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
87e2747b4a
Bugfix by George Sergeev.
2006-05-17 11:14:30 +00:00
asfernandes
6df3f27648
Misc
2006-04-07 02:58:06 +00:00
robocop
c5f2284b15
Style.
2006-04-06 08:18:53 +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
dimitr
77dafd90c3
More clever solution for bug #459059 .
...
Deoptimization of NOT ANY is no longer necessary.
2006-02-15 13:34:35 +00:00
robocop
5bbaab13c9
This is why we put {} around if/else always: to avoid errors like this one, where indentation is not what the compiler follows.
2006-02-10 03:35:37 +00:00
robocop
044c5841ad
Misc.
2006-02-10 03:28:43 +00:00
kkuznetsov
1498ba48ed
Fix aligment issues on Solaris sparc V9 (64 bits)
2006-02-09 15:50:43 +00:00
robocop
2b99e764e3
The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
...
Sixth step: remove the places protected by the macro PC_ENGINE. More to come. (I guess all of you who have pending functional changes to post will love this commit. <g>)
2006-02-02 07:32:07 +00:00
robocop
c2fe7385ab
The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
...
Second step: remove them from #include clauses in other files. More to come.
2006-02-01 08:55:43 +00:00
dimitr
1293d9fd97
Fixed bug related to expression indices vs. collates, reported by Ivan.
2006-01-15 16:04:39 +00:00
robocop
d57942f544
Isolate scrollable cursors (checked by Dmitry Y.)
2005-12-31 05:58:36 +00:00
dimitr
9c4e81ad19
Fixed SF #1292106 .
2005-12-12 10:52:30 +00:00
robocop
f00fc0ff56
1.- Make "vec" type safe and get rid of several code contortions. Fix some small bugs meanwhile.
...
2.- Put inside PC_ENGINE several data members that belong to that feature.
3.- Put inside PC_ENGINE the code that does cleanup on those unused data members.
2005-12-02 07:35:34 +00:00
robocop
8f2a9719af
Totally misc.
2005-11-06 06:23:31 +00:00
robocop
4ec65d006a
Get rid of some redundant or unused stuff.
2005-11-06 03:31:16 +00:00
dimitr
e3578f5912
Fixed reported issues with ROW_COUNT.
2005-06-24 12:56:34 +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
alexpeshkoff
0601ed34a6
fixed declarations of gds__temp_file() parameter -
...
buffer overflows were possible
2005-05-14 10:42:58 +00:00
alexpeshkoff
5729790ed6
1. Applied class MetaName
...
2. Small generic cleanup
2005-05-12 18:28:04 +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
dimitr
f3590f5ef7
no message
2004-11-20 12:15:08 +00:00
hvlad
13730a72a8
Fixed broken unique index creation found by Adriano dos Santos Fernandes (unique indices can be created with duplicate keys)
2004-11-01 07:51:55 +00:00
robocop
524c1b8882
Misc.
2004-10-30 05:12:52 +00:00
skidder
37698bf841
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-29 00:29:17 +00:00
skidder
e7944f126c
WITH LOCK could have been ignored or applied to randomly wrong table if used with FIRST and/or SKIP in stored procedure or trigger. There are 3 other places in the engine (fetch_left, OPT_compile, get_record) still using the same idiom as one which was used by pessimistic locking. I won't fix them
2004-10-25 01:09:13 +00:00
dimitr
275673fcf1
Fixed possible resource leaks for procedured subqueries.
2004-10-05 20:16:29 +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
c3db4aaa97
added (and used in sources) template to change and restore default pool
2004-08-30 18:11:08 +00:00
dimitr
6458cc8757
Ensure FIRST/SKIP/ROWS to treat NULL arguments as zero.
2004-08-17 11:28:49 +00:00
alexpeshkoff
31039a254e
next step preparing to allocate auto objects memory from appropriate pool
2004-08-16 12:28:43 +00:00
skidder
2915fcf547
Somewhat simplify invariant tracking stuff. It is more pessimistic now, but should work more reliably when invariants are modified (see QMDB tests for details)
2004-06-25 22:12:20 +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
9a34ce553c
make bool (isEmpty/hasData) checks for string and stack safe
2004-05-27 16:26:52 +00:00
brodsom
c8db819ac5
Replace defines with consts
2004-05-07 07:57:46 +00:00
brodsom
5cf9fdfc90
Removing ib_stdio.h
2004-04-28 22:43:34 +00:00
alexpeshkoff
7b27fa55be
fixed number problems after lls to Stack conversion
2004-04-21 14:14:36 +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
robocop
faa41f7b3b
Cleanup
2004-03-30 04:10:52 +00:00
robocop
1824343930
Cleanup.
...
Fixed a linking error with MSVC6, too.
2004-03-28 09:10:30 +00:00
alexpeshkoff
1e6c7b18e9
fixed problem with loop in includes
2004-03-22 11:38:23 +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
robocop
958f9e31aa
Cleanup
...
A few new[] - delete[] pairs fixed.
2004-03-19 06:14:53 +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
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
robocop
2ab1f94dd2
Cleanup
...
Some minor corrections
Second step to rename
2004-03-11 05:04:26 +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
alexpeshkoff
dfb7575e3e
Make it compile with MSVC6
2004-03-07 11:52:05 +00:00
dimitr
cffa34f47a
1) Some cleanup and encapsulation.
...
2) Fixed a number of stream-related crashes.
2004-03-07 09:48:56 +00:00
robocop
e6187cecd2
Cleanup
...
Some bug fixes
Style
2004-03-07 07:58:55 +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
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
robocop
b441cd9aef
Cleanup
2004-01-13 09:52:19 +00:00
robocop
fd93837ec3
Cleanup:
...
const correctness
BOOLEAN -> bool
Vars in scope
Formatting
JRD_REQ -> jrd_req*
JRD_TRA -> jrd_tra*
JRD_REL -> jrd_rel*
JRD_FLD -> jrd_fld*
event -> event_t, EVENT_T dropped, EVENT should go in the future
Frank's corrections
alice's STR -> alice_str*
remote's STR -> rem_str*
etc.
It creates entities and backups and restores for me. :-)
2004-01-03 10:59:52 +00:00
robocop
16cbc204df
Cleanup
2003-12-31 05:36:12 +00:00
dimitr
5a412409ee
Fixed server crashes in sort finilization. Thanks to Vlad Horsun and Oleg Loa.
2003-12-24 13:04:59 +00:00
robocop
ad0b5c4de3
General cleanup
2003-12-22 10:00:59 +00:00
robocop
d020ea5ca1
ping-pong cleanup: change one place and you have to change several others
2003-12-11 10:33:30 +00:00
dimitr
4c0ce86c24
1) Fixed server crashes when a SP is used as inner stream in left joins
...
2) Fixed conjuncts out-of-limits issue
2003-11-18 16:54:01 +00:00
brodsom
451460c167
-Removing some unneeded headers (WIN_NT) or explaining why are needed
2003-11-16 12:23:24 +00:00
brodsom
c5253ae8a5
-Replace gds__ constants with isc_ contants
...
-Replace codes.h with iberror.h (or remove)
-Move gds__vax_integer and gds__event_block* to alt.cpp and isc_ to gds.cpp
-Use ISC_QUAD internally
-Use isc_vax_integer internally
2003-11-11 12:19:20 +00:00
aafemt
7b89091d39
'struct' cleanup
2003-11-04 11:35:51 +00:00
brodsom
ff070a16a8
Replacing assert with fb_assert
2003-11-03 23:59:24 +00:00
dimitr
9b20660785
1. Fixed GDSCODE and SQLCODE variables
...
2. Enhanced ROW_COUNT variable
3. Fixed EXCEPTION statement
4. Added explicit cursor internals
5. Some cleanup
2003-11-02 11:55:17 +00:00
dimitr
25d780fd78
Cleanup.
2003-09-29 11:00:38 +00:00
dimitr
620c35c016
Correction.
2003-09-29 08:29:36 +00:00
dimitr
b3f672ddf4
A bit more cleanup.
2003-09-28 18:49:21 +00:00
dimitr
9f5fb102c1
Cleanup and some optimization.
2003-09-28 18:23:26 +00:00