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

153 Commits

Author SHA1 Message Date
robocop
fa1538a1ae Minor changes in MetaName usage. 2007-08-26 09:05:29 +00:00
hvlad
671e59e993 Fixed bug CORE-1373 : Incorrect result of recursive CTE query when recursive member's SELECT list contains expression using self-referenced fields 2007-07-21 21:28:56 +00:00
asfernandes
0f4663dc1a Fixed CORE-1318 - Error "Identifier ... is too long using multiple (nested) derived tables.
Front-ported fix done by Alex in 2.0.
2007-06-13 01:53:00 +00:00
asfernandes
c97d57013e Fixed CORE-1253 - LIST(DISTINCT) concatenate VARCHAR values as CHAR 2007-05-11 02:07:36 +00:00
asfernandes
cfe0ad95cf Fixed CORE-1227 - LIST() function seems not work if used twice or more in a query 2007-05-05 19:28:46 +00:00
asfernandes
f7b7f2b96f Some changes as per Claudio comments 2007-04-16 15:31:28 +00:00
asfernandes
166fc0b865 Misc 2007-04-13 01:37:44 +00:00
asfernandes
8c7076b67f Port of Yaffil builtin functions 2007-04-12 15:56:34 +00:00
asfernandes
05e6ebd58c Check constraints when reading variables/parameters only if it's the first read and it's wasn't assigned yet 2007-02-06 14:25:10 +00:00
robocop
8a06c80028 Simplification and indentation. 2007-01-21 07:46:41 +00:00
asfernandes
f30ee6b63e Use debug informations in EXECUTE BLOCK 2007-01-20 14:18:18 +00:00
alexpeshkoff
e79660bca6 fixed gcc warning 2007-01-20 14:07:18 +00:00
asfernandes
aca179f398 Full domain support and NOT NULL in PSQL 2007-01-17 01:19:01 +00:00
dimitr
8ea7c4f915 A bit different fix for CORE-1004 in HEAD. Experimental. 2006-12-12 16:12:15 +00:00
hvlad
58d381edd7 1. Remove blr_src_info code as it is prevents database downgrade from ODS 11.1
2. Put debug information (mapping between blr offset and source line\column and names of local variables) into new blob field RDB$DEBUG_INFO
This is first step to implement native SQL debugger i believe
2006-10-30 20:58:06 +00:00
asfernandes
1d422a8330 1) Refactor intl_classes.h and intl.cpp
2) Make conversions from CharSet1->UTF16->CharSet2 job of CsConvert class
2006-10-10 19:40:33 +00:00
asfernandes
55ec30965d REPLACE statement 2006-09-03 01:09:23 +00:00
asfernandes
e538061c38 Implementation of CREATE/DROP COLLATION and ISQL show/extraction of collations 2006-08-07 16:39:21 +00:00
hvlad
b20aa92714 Common table expressions implementation 2006-08-01 20:37:58 +00:00
hvlad
8e14bc4f1e Move relation stuff from jrd.h\vio.cpp into new Relation.h\Relation.cpp
by request of Claudio and Dmitry
2006-05-30 13:29:24 +00:00
asfernandes
3b54c24652 Let LOWER/UPPER (blob) work - returning a blob 2006-04-16 18:45:40 +00:00
dimitr
d2f823b821 Fixed yet another bug in cursors. Will this ever end? :-) 2006-03-29 17:47:50 +00:00
dimitr
6c1e162151 Fixed a minor regression in the permission checking logic.
Let's first check the relation privileges and only then the column ones.
2006-03-28 09:36:22 +00:00
alexpeshkoff
95911b4842 fixed memory leak - SF#1422471 2006-03-10 17:46:18 +00:00
dimitr
8da75613c4 Fixed yet another bug in explicit cursors.
Unfortunately, BLR compatibility is not provided, so users have to recompile their SPs/triggers.
2006-03-07 17:52:33 +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
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
eb9bec4b32 More scrollable cursors related code. 2006-02-03 08:37:14 +00:00
robocop
29a6749c22 Misc. 2006-02-02 07:40:42 +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
868a5bb21f Better (and more honest) diagnostics. 2005-10-21 09:43:26 +00:00
dimitr
e5a151aff8 1) Fixed csb_validation which was defined in a wrong flags group.
2) Renumbering and cleanup.
2005-09-08 10:08:18 +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
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
asfernandes
59213efe7e Merge INTL branch into HEAD 2005-05-27 22:45:31 +00:00
alexpeshkoff
5729790ed6 1. Applied class MetaName
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
dimitr
4ec439dd14 1) Deliver trigger type to the compiler level
2) Disallow NEW context assignments for POST-triggers
2005-03-28 21:52:55 +00:00
dimitr
4cf01bd4a2 Cleanup. 2005-02-01 20:05:02 +00:00
robocop
73c5351bb7 1.- Misc.
2.- Use constants instead of harcoded positions in node's arguments.
2005-01-21 08:36:06 +00:00
robocop
4012106884 Misc. 2004-12-25 09:44:03 +00:00
skidder
c40eb08a27 Remove CURRENT_DATABASE keyword 2004-11-22 20:50:34 +00:00
hvlad
1f30165bf0 1. Use isc_stack_trace instead of isc_random
2. Correct exception handling when dynamic string is used. See comments in exe.cpp
2004-11-18 13:58:46 +00:00
dimitr
b741e2c136 Fixed bugs SF #459059 and #543106. 2004-11-17 19:33:11 +00:00
hvlad
3592c54752 Enlarge exception messages from 80 to 1023 bytes 2004-11-17 12:19:18 +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
skidder
02a0915156 Teach engine to work with larger record numbers - 64-bit internally, 40-bit externally 2004-09-28 06:28:38 +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
7e8a640bdc Disable debugging code unintentionally enabled in previous commit 2004-06-26 22:17:33 +00:00
skidder
9c03314ebc Be slightly more explicit in our memory allocation desires. Also fix savepoints breakage 2004-06-26 22:12:50 +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
brodsom
64c1dee04e -Use C++ struct declaration style. 2004-05-24 17:31:47 +00:00
robocop
802f244ec1 Misc changes 2004-05-09 05:48:33 +00:00
brodsom
10e0822cbb Replace define for constants 2004-04-29 00:50:02 +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
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
alexpeshkoff
0acfd46d50 better memory allocation for csb_idx_allocation 2004-04-04 08:25:40 +00:00
alexpeshkoff
98aebc619a changed csb_index_allocation to Array from str 2004-04-01 16:32:54 +00:00
alexpeshkoff
4650f4975f string cleanup 2004-03-31 18:03:51 +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
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
8630547081 Cleanup. 2004-03-20 03:07:21 +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
skidder
1c870a7426 Fix issues in my code spotted by Claudio 2004-03-12 20:19:41 +00:00
skidder
c64f31b712 Fix some warnings from GCC/Linux build. Some of them were subtle errors 2004-03-12 07:00:52 +00:00
robocop
2ab1f94dd2 Cleanup
Some minor corrections
Second step to rename
2004-03-11 05:04:26 +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
dimitr
1f7a1570e2 1) Some cleanup.
2) Fixed memory leak. Thanks to Oleg Loa.
2004-03-06 11:56:09 +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
b441cd9aef Cleanup 2004-01-13 09:52:19 +00:00
skidder
f13d160aa5 Fix resource leak for recursive procedures when procedure request is closed at
SUSPEND statement. This leak prevented more then 1000 such operations for one connection.
This bug was reported by Claus Holst
2004-01-10 01:48:46 +00:00
robocop
16cbc204df Cleanup 2003-12-31 05:36:12 +00:00
skidder
d7fb2d6cb3 Integrate new LIKE/STARTING WITH/CONTAINING algorithms into the engine. This has following impact:
1. String functions now search BLOBs correctly
2. Their performace is improved
3. Fixed crash when NULL is passed as escape value to LIKE
2003-12-27 04:37:23 +00:00
skidder
e216f1f09d Implement MSSQL-like (standard conforming) behavior regarding default nulls placement.
Thanks to Arno changes we can map default placement to indices directly for ODS11+.
This should close SF#225218
2003-12-21 02:34:34 +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
robocop
db77ffa605 const correctness, variables in scope, cleanup, etc. 2003-11-07 08:06:35 +00:00
robocop
35396625f5 const correctness
function signatures
variables in local scope
BOOLEAN -> bool
TEXT[32] as SqlIdentifier for DYN
Stop random garbage in firebird.msg's bytes 8 to 11
some cleanup
2003-11-05 09:02:33 +00:00
aafemt
7b89091d39 'struct' cleanup 2003-11-04 11:35:51 +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
robocop
8182b6cba2 const correctness and other tasks 2003-10-16 08:51:06 +00:00
skidder
4e8605294e Forward port Sparc fixes 2003-10-10 23:56:57 +00:00
brodsom
2aeb693d06 extern cleaning
removing underscores in macros
DLL_EXPORT cleaning
2003-10-03 01:53:34 +00:00
robocop
c931a674c2 Cleanup.
Hopefully harmless
It should fix the issue introduced with constness in gds__interprete for current applications.
2003-09-29 12:43:14 +00:00
skidder
235db035ce Ok, i'm joining Firebird destruction team with my cleanup:
1. Bring trace DSQL, DYN and BLR trace logging up-to-date
2. Remove redundant CSB pointer dereferences in BLR parser and request compiler
3. Convert RIGHT JOIN to LEFT JOIN early during BLR parsing
4. Check BLR syntax for unititalized contexts usage
5. Some type-safety and const-correctness fixes
2003-09-28 21:36:05 +00:00
brodsom
8624a7c209 -Use NULL instead 0 for null pointers
-Remove unneeded casts
2003-09-01 07:58:04 +00:00
aafemt
8798a33d84 ENUM removal 2003-08-22 10:56:55 +00:00
dimitr
112c7022b6 Fixed (hopefully) savepoints implementation:
1) RELEASE SAVEPOINT statement is added
2) SAVEPOINT statement now re-establishes existing savepoint with the same name
3) all savepoint stuff is changed to use single BLR verb
2003-06-10 13:40:19 +00:00
dimitr
f489530467 Some cleanup and bugfixing. 2003-03-05 12:50:44 +00:00
skidder
ba5e11b15c Integrate new memory manager into the engine 2003-01-16 17:47:10 +00:00
skidder
27b364320b Fixed crash when grouping by invariant subquery 2002-11-24 13:47:17 +00:00
hippoman
7387e6fb70 changed nod,tra,req,trg,rel,ctx,prc struct names to local module names 2002-11-20 23:18:16 +00:00
skidder
53f625e077 New explicit pessimistic locks implementation. It is logically consistent in all TPB modes and should be very fast. 2002-11-18 20:27:24 +00:00
dimitr
ae89b0f3cb Fixed bug with dynamic exception messages. 2002-11-14 07:35:44 +00:00
hippoman
25c1dbd367 * Changed NOD struct name to JRD_NOD. 2002-11-11 19:42:47 +00:00
skidder
8e6622a20e Merging changes from skidder branch - explicit locks, savepoints, build system changes 2002-10-29 20:20:44 +00:00
dimitr
536d8c0552 1. Reworked internal_info implementation in both DSQL and JRD.
New helper class created to serve it properly.
2. Added exception re-raise semantics.
Syntax: EXCEPTION;
If there was handled exception, re-initiate it, otherwise evaluate to no-op.
3. Implemented run-time exception messages.
Syntax: EXCEPTION <exception_name> [<value>];
If <value> is specified, evaluate it and use instead of RDB$EXCEPTION_MESSAGE.
4. Added new SQLCODE and GDSCODE system variables.
Available in procedures/triggers only.
If there wasn't any exception raised, return zero (success), otherwise return an error code.
5. Implemented ROWS_AFFECTED system variable.
Available in procedures/triggers only.
Count rows affected by the last INSERT/UPDATE/DELETE statement.
For any other statement, result is always zero.
2002-09-28 14:04:35 +00:00
skidder
6d64014e57 Changed engine to store source file name/line number information for EVERY allocation when DEBUG_GDS_ALLOC is defined. All allocation should be done using FB_NEW or FB_NEW_RPT macros instead of keyword new since now 2002-09-25 17:12:16 +00:00
dimitr
b9ef9abcc0 Get rid of the legacy GATEWAY (vms/oracle) implementation. 2002-08-22 08:20:27 +00:00