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

234 Commits

Author SHA1 Message Date
asfernandes
9d11604e9f Fix CORE-852 - substring(current_user from 4) without for fails 2006-07-12 18:42:46 +00:00
dimitr
6c2b110a8e Fixed the bug reported by Adriano. 2006-06-20 04:16:50 +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
dimitr
211645e3dc Getting rid of the old allocator routines. 2006-05-23 10:17:00 +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
asfernandes
22640e1189 BLB_put_segment can't write more than 64K in one shot.
Create BLB_put_data and use it. Thanks to Claudio.
2006-05-13 18:35:13 +00:00
asfernandes
40bfb5f0f4 Make TRIM of blob work - returning a blob 2006-05-13 01:27:35 +00:00
dimitr
3aabec533d More correct ttype handling for concatenation. 2006-04-30 18:13:27 +00:00
robocop
64f2d873bf Misc. 2006-04-29 08:56:54 +00:00
robocop
70f47eb720 I don't get Adriano's observation, but I assume it's true. I restore Dmitry's code without the const: VC6 can't delete const data. 2006-04-29 05:41:31 +00:00
robocop
dbea8030f4 MSVC6 says:
error C2664: 'delete' : cannot convert parameter 1 from 'const class VaryingString *' to 'void *'
        Conversion loses qualifiers
So maybe the rules changed for VC7. Anyway, I simplified the logic here to achieve the same in a direct way.
2006-04-29 00:57:26 +00:00
asfernandes
66423bfd37 Remove not needed asserts 2006-04-28 02:35:34 +00:00
dimitr
5d813ff2dd Restored performance of the regular concatenation. 2006-04-25 16:22:41 +00:00
dimitr
bf1e56bff1 Fixed a bugcheck by restoring to the old nod_count processing.
Still clueless why it's done that way.
2006-04-25 12:54:12 +00:00
dimitr
54d4cc4ddf The core implementation of the LIST function. Unstable yet. 2006-04-24 16:56:58 +00:00
asfernandes
386887ed47 Corrections - thanks to Claudio 2006-04-18 12:40:52 +00:00
asfernandes
33313db1aa Misc 2006-04-16 18:49:26 +00:00
asfernandes
3b54c24652 Let LOWER/UPPER (blob) work - returning a blob 2006-04-16 18:45:40 +00:00
robocop
c5f2284b15 Style. 2006-04-06 08:18:53 +00:00
dimitr
25614c8969 Protected from assignments to not existing fields. 2006-03-28 09:55:45 +00:00
robocop
3389149564 The files rng.cpp, rng.h, rng_proto.h, bookmark.cpp and bookmark.h belong exclusively to PC_ENGINE, that's obsolete functionality.
Tenth step: some code was tagged PC_ENGINE but was for SCROLLABLE_CURSORS instead, hence restore it. Also, clean unused data members, obsolete BLR verbs and the like.
2006-02-07 08:08:49 +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
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
robocop
85d06131f6 Misc. 2005-12-28 06:42:58 +00:00
asfernandes
2b95393517 Fixed problem "STARTING WITH and subselect CASE bug" reported by Mustafa WILMAZ on fb-devel 2005-12-06 01:02:22 +00:00
alexpeshkoff
f4feffe700 fixed some warnings 2005-12-02 16:48:47 +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
dimitr
3f5bb7564d 1) Prepare the blobs mover to be ready for dtype_blob variables.
2) Fix the string routines to work with PSQL blobs.
2005-11-25 15:20:26 +00:00
dimitr
5c3ab02e9e Fixed division when compile-time and runtime scales don't match.
Look at multiply2() for example.
2005-11-08 15:24:01 +00:00
dimitr
8120b697fc Fixed the bug reported by Jim. 2005-10-28 08:11:35 +00:00
dimitr
ece4b26cd4 Oops, committed unfinished work by accident. Restored. 2005-10-21 09:47:51 +00:00
dimitr
868a5bb21f Better (and more honest) diagnostics. 2005-10-21 09:43:26 +00:00
dimitr
15874a6ed9 Added optional seconds precision to CURRENT_TIME and CURRENT_TIMESTAMP
as agreed with Ann and others times ago.
2005-08-24 09:16:19 +00:00
robocop
f3606028e1 No need to call SET_TDBB if we do nothing. 2005-07-08 03:27:07 +00:00
asfernandes
fc1f7057f0 Better handling in substring of large blobs 2005-06-26 02:09:39 +00:00
asfernandes
28bd971d6e Comment 2005-06-24 15:38:31 +00:00
dimitr
e3578f5912 Fixed reported issues with ROW_COUNT. 2005-06-24 12:56:34 +00:00
asfernandes
890494ac7c 1) Fixed SF #1016040 Missing external libraries causes engine exception
2) Use better error messages
2005-06-14 03:16:54 +00:00
asfernandes
95d02bdd95 Removed wrong "deletes" noticed by Claudio 2005-06-13 03:55:20 +00:00
robocop
55a5a222e1 Misc. 2005-06-13 03:48:14 +00:00
robocop
a867f700d0 Substring evolved and the error message was never updated. Now I've done two messages, although I think we need three in the long term. 2005-06-12 23:45:15 +00:00
asfernandes
a44e8ffbd0 Fix TRIM(NULL FROM <something>) to return NULL 2005-06-12 21:20:12 +00:00
robocop
d431360780 EVL_expr grew too much. Make more functions. 2005-06-11 00:14:55 +00:00
asfernandes
559ce29c51 1) Replace length_ to strlen as noted by Claudio and Dmitry
2) Change USHORT to ULONG in intl.cpp
2005-06-06 18:14:10 +00:00
robocop
b8d1f00f94 - Corrections and changes to Adriano's commit, subject to his inspection.
- Solved an endless loop with trim and zero-length trim characters, etc.
- Some places are signaled with FB_COMPILER_MESSAGE for prompt attention.
2005-06-06 08:30:03 +00:00
asfernandes
59213efe7e Merge INTL branch into HEAD 2005-05-27 22:45:31 +00:00
alexpeshkoff
c03d2241c5 fixed issues, reported by Claudio 2005-05-17 18:20:07 +00:00
robocop
3f0b18df85 Misc. 2005-05-16 09:15:31 +00:00
alexpeshkoff
5729790ed6 1. Applied class MetaName
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
dimitr
d9c5e93442 Removed unused crap. 2005-03-11 08:34:20 +00:00
arnobrinkman
6e12991438 little optimalization 2005-01-27 15:02:17 +00:00
robocop
af6a16107a Misc. 2004-11-30 06:18:39 +00:00
robocop
54cc81876e Misc. 2004-11-28 08:36:54 +00:00
robocop
b15c8531e0 Change my FB1 logic that returned the table's owner for the role when a not null field with default CURRENT_ROLE is added, the table has records already and the user does a SELECT. Now, if CURRENT_USER==table's owner, then the CURRENT_ROLE is returned, otherwise NONE. 2004-11-28 08:25:09 +00:00
skidder
c40eb08a27 Remove CURRENT_DATABASE keyword 2004-11-22 20:50:34 +00:00
dimitr
f241ba10c9 Cleanup. 2004-11-18 09:14:20 +00:00
dimitr
bc9c7c0b30 no message 2004-11-17 19:45:28 +00:00
dimitr
7072fa6bb4 Fixed bug found by Claudio. 2004-11-17 12:33:30 +00:00
skidder
23c5b5810c Fix the bug I recently added to CURRENT_TIME precision handling 2004-11-14 21:08:32 +00:00
dimitr
2a4b4051fa Restored missing asserts. 2004-11-12 05:32:13 +00:00
skidder
1e26d6c80d CURRENT_DATABASE implementation. Established identity may also be used for isc_info_db_id datum 2004-11-11 05:37:52 +00:00
robocop
e5be73b048 Misc: extra semicolons do not help. :-) 2004-11-07 10:47:20 +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
dimitr
5040f83365 Changed TimeStamp class a bit, as suggested by Claudio. 2004-11-01 08:29:16 +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
dimitr
feb6b7e006 Replaced non-centralized datetime management with a new class. 2004-10-30 19:41:54 +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
dimitr
1a6f5881db Let's include milliseconds also in CURRENT_TIMESTAMP, accordingly to the SQL spec. 2004-10-27 13:27:30 +00:00
dimitr
09c51110b4 Added the equivalence operator. The major index optimizations are done.
Notes:
1) Some optimizations will follow after more deep analysis.
2) The syntax "==" is not yet agreed on. I'd prefer it to be changed.
2004-10-14 19:09:19 +00:00
hvlad
19f2f6fb05 Correct declaration as Claudio suggested 2004-10-11 17:18:42 +00:00
robocop
0ffefddd17 Misc. 2004-10-09 01:40:32 +00:00
hvlad
62bcf6c131 Move 'fini_agg_distinct' declaration and definition in alphabet order 2004-10-08 11:10:58 +00:00
hvlad
edf72a34f6 Fix memory leak when a query contains both GROUP BY and DISTINCT and result set is empty 2004-10-08 10:18:41 +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
dimitr
ae9d129c1c Added more points to reschedule. 2004-10-03 12:10:19 +00:00
robocop
95bd842887 Shorter code. 2004-10-02 09:29:48 +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
skidder
497c601acc Reading memory after the end of array is generally bad practice. Avoid it. 2004-09-25 20:29:51 +00:00
dimitr
87c1305c03 Removed compile-time upper bound checks.
Limited the SUBSTRING result by 32k characters.
2004-09-22 07:36:55 +00:00
robocop
b60c0e4cab Misc: format 2004-08-21 09:29:46 +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
dimitr
f9bc338798 Added more checks for a possible literal NULL and another cases when EVL_expr() may return NULL pointer. 2004-08-17 12:28:57 +00:00
alexpeshkoff
31039a254e next step preparing to allocate auto objects memory from appropriate pool 2004-08-16 12:28:43 +00:00
dimitr
9dc9adf017 Fixed implementations of concatenation and SUBSTRING function.
Used new messages for error reporting. Changes should be fully SQLDA-compatible.
2004-08-02 19:49:12 +00:00
skidder
a624a4ac53 Small addition to my previous LIKE fix 2004-07-26 21:32:41 +00:00
skidder
2f7b378158 Fix another problem with my LIKE evaluator 2004-07-20 22:56:32 +00:00
skidder
a64a211a1d allow processNextChunk receive empty string in pattern matchers. This fixes troubles in DEV_BUILD noticed by Claudio 2004-07-07 15:48:57 +00:00
robocop
682b582764 USHORT -> bool 2004-07-07 03:47:12 +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
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
2f99a5ebf1 small strings cleanup 2004-05-26 16:12:05 +00:00
skidder
8c62ac2800 Do not crash with MBCS blobs and LIKE/CONTAINING/STARTNING WITH. Use binary matching in this case for now until INTL is fixed 2004-05-21 23:26:38 +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
brodsom
9d0ea30edf Rename evl_like.cpp to evl_like.h (after last changes it constains function templates) 2004-05-13 09:22:10 +00:00
brodsom
2e9c6e6c9f -Remove unused warning 2004-05-13 00:57:19 +00:00
brodsom
b30a0b8799 Macro cleaning 2004-05-12 00:02:37 +00:00
robocop
802f244ec1 Misc changes 2004-05-09 05:48:33 +00:00