dimitr
894fa1e011
Removed unused thread scheduling option.
2005-06-12 06:27:12 +00:00
dimitr
88b989a794
Cleanup.
2005-06-07 10:52:38 +00:00
asfernandes
2e49ce4eb9
Rollback risky change not necessary
2005-06-04 13:39:30 +00:00
asfernandes
59213efe7e
Merge INTL branch into HEAD
2005-05-27 22:45:31 +00:00
robocop
7813fe3402
Fix SF Bug #494981 .
...
If we can print the name of the exception, we do.
2005-05-22 06:13:54 +00:00
alexpeshkoff
c03d2241c5
fixed issues, reported by Claudio
2005-05-17 18:20:07 +00:00
alexpeshkoff
5729790ed6
1. Applied class MetaName
...
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
dimitr
14ae4dc31c
Check whether a row we perform positioned update/delete against is actually fetched.
2005-04-25 20:31:52 +00:00
robocop
41b4413530
Fix recently committed strange indentation.
2005-04-18 03:22:31 +00:00
dimitr
065d0d8c97
Fixed yet another case of database corruption due to pre-triggers.
...
More to come.
2005-04-15 14:33:55 +00:00
dimitr
f52b89dbe8
1) Made RefetchRecord a public routine
...
2) Use it in EXE to avoid code duplication
3) Some alphabetical code movement
2005-03-27 15:01:56 +00:00
dimitr
d9c5e93442
Removed unused crap.
2005-03-11 08:34:20 +00:00
skidder
76a0760436
Fix possible engine lock-up/crash when 'RELEASE SAVEPOINT xxx ONLY' syntax is used or when existing savepoint name is reused in transaction context (when old savepoint with the save name is implicitly released)
2005-01-26 18:04:37 +00:00
robocop
3a96ed46c4
Misc.
2005-01-21 10:45:01 +00:00
dimitr
49f06704db
Looper fixes:
...
1. Slightly changed the error handling to exactly correspond the FB1 logic
2. Added code to always cleanup the active savepoints, even after nested error handlers
3. Fixed one little debug-time issue
4. Replaced VERB_CLEANUP macro with an inline function
2005-01-04 13:09:11 +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
skidder
e823628754
Dmitry asked me to add support for calling UDF routines ignoring return arguments so did I
2004-11-25 00:47:20 +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
499688434f
1) Reworked error reporting
...
2) Allowed positioned updates for explicit cursors
3) Fixed some possible server crashes
2004-11-17 15:23:27 +00:00
robocop
628b088d2c
Treat string literals and string constants with more respect.
2004-11-10 04:26:45 +00:00
alexpeshkoff
6e89d3e6d8
avoid warnings in gcc
2004-11-07 14:30:38 +00:00
skidder
cc1387505d
Fix possible server crash when EXECUTE_IMMEDIATE is used to release or rollback transaction to non-existing savepoint. Reported by David Rushby as a part of 1.5.2 field test
2004-11-06 06:05:38 +00:00
robocop
35d0f01208
Forbid literal string assignment to array. Error msg is still confusing.
2004-11-01 08:13:44 +00:00
dimitr
feb6b7e006
Replaced non-centralized datetime management with a new class.
2004-10-30 19:41:54 +00:00
robocop
739fc568f7
Misc.
2004-10-23 00:54:26 +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
robocop
2f087d53a6
Misc
2004-10-09 03:52:59 +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
ed17cfafbf
Style:
...
if<space>(
for<space>(
switch<space>(
while<space>(
2004-10-04 08:15:00 +00:00
dimitr
ae9d129c1c
Added more points to reschedule.
2004-10-03 12:10:19 +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
b60c0e4cab
Misc: format
2004-08-21 09:29:46 +00:00
dimitr
469005eadd
More asserts and some style changes. Thanks to Claudio.
2004-08-20 08:25:45 +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
hvlad
d82cde309e
Ability to show PSQL stack trace when exception occurs.
2004-08-06 15:26:55 +00:00
robocop
682b582764
USHORT -> bool
2004-07-07 03:47:12 +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
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
brodsom
f4ca41fa3d
-Replace *_thread_data macros with inline functions (jrd step 1)
2004-05-22 14:28:54 +00:00
brodsom
68cb86b274
- Remove *_THREAD_DATA definitions from thd.h, are unneeded and conflicts with definitions in providers/services main headers (which need to use undef).
...
- Use different names for each service/provider *_THREAD_DATA macros.
2004-05-19 18:14:29 +00:00
brodsom
60d9d085a0
Macro cleaning
2004-05-03 21:43:56 +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
695c222ad2
1. introduced Jrd and Ods namespaces
...
2. cleanup of blk* request conversions
3. fixed memory allocation in Execute Statement
2004-03-20 15:33:30 +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
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
robocop
e6187cecd2
Cleanup
...
Some bug fixes
Style
2004-03-07 07:58:55 +00:00
skidder
dc7aab8f9c
Fix up exception handling. Handle (do not ignore) std::bad_alloc and generic exceptions, provide syscall and error information in system_call_failed
2004-03-01 03:35:23 +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
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
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
robocop
ad0b5c4de3
General cleanup
2003-12-22 10:00:59 +00:00
dimitr
9a24b23947
Get rid of the free block lists. Our memory manager handles it better.
2003-12-13 10:42:10 +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
robocop
84062732d8
More cleanup
2003-12-03 08:19:24 +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
dimitr
7455c77e4d
Fixed IF handling in the looper.
2003-11-23 17:39:38 +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
dimitr
63809c18b8
1) Make view fields unconditionally updatable
...
2) Make views updatable only directly or via the triggers
3) Cleanup
2003-11-09 09:51:02 +00:00
brodsom
89e8f89f86
Extern "C" cleaning
2003-11-06 03:03:36 +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
brodsom
ff070a16a8
Replacing assert with fb_assert
2003-11-03 23:59:24 +00:00
dimitr
a78ded3338
no message
2003-11-02 12:05:38 +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
480c1ee968
const correctness
2003-10-08 08:42:48 +00:00
skidder
c89eff0436
Fix bug in savepoints support introduced by Dmitry a few RCs ago
2003-10-01 12:51:23 +00:00
brodsom
9d5721473a
Removing SHLIB_DEFS
2003-09-22 17:56:35 +00:00
brodsom
382cd1c45e
Code cleaning
2003-09-08 01:45:09 +00:00
brodsom
8624a7c209
-Use NULL instead 0 for null pointers
...
-Remove unneeded casts
2003-09-01 07:58:04 +00:00
dimitr
ace547ee98
Fixed broken savepoint handling in BREAK/LEAVE/EXIT.
...
The bug caused to logical database corruption/inconsistency, such as PK/UK violation, or BUGCHECK(287).
2003-08-30 16:43:16 +00:00
brodsom
6a2ef35fda
-Remove NULL_PTR
...
-Remove unneeded NULL casts
-Remove (void) function return cast
2003-08-28 13:16:03 +00:00
aafemt
8798a33d84
ENUM removal
2003-08-22 10:56:55 +00:00
brodsom
e401cb40c7
-Fix cast warnings
...
-Fix signed/unsigned comparison warnings
2003-08-09 20:58:34 +00:00
dimitr
b671c2639d
A bit corrected GDSCODE handling + minor cleanup.
2003-08-04 07:20:35 +00:00
alexpeshkoff
44bc8419ed
fixed bug with tdbb_transaction, overwritten in EXE_unwind
2003-07-14 13:21:07 +00:00
dimitr
6c36c2c400
Fixed error handling in the looper.
2003-06-28 09:32:46 +00:00
dimitr
5eaf6394d1
Some savepoint-related changes:
...
1. release single savepoint
2. fixed exception handling
2003-06-26 10:44:16 +00:00
alexpeshkoff
fa3c980179
fixed diagnostic in EXECUTE STATEMENT & DirectoryList
2003-06-16 15:43:00 +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
skidder
b79a5aa971
Fix metadata cache problem that prevented restore of some databases
2003-06-01 16:22:47 +00:00
dimitr
9b871075a1
We should never treat numeric NULL as zero. Always check for req_null flag.
2003-05-27 15:44:55 +00:00
dimitr
414206c2d0
Fixed bug with incorrect handling of numeric NULLs as exception messages.
2003-05-26 15:45:29 +00:00
alexpeshkoff
b69e76cb3a
Use transaction pool for storing rpb chains.
...
Bug in commit, which I tried to fix using permanent pool here,
was caused by another reason and already fixed.
2003-05-22 16:59:49 +00:00
alexpeshkoff
f9e867a94f
Fixed bug with wrong req_attachment after exception in procedure
2003-05-14 08:24:49 +00:00
alexpeshkoff
1896baa4ab
Fixed bug with NULL argument
2003-05-13 12:04:22 +00:00
alexpeshkoff
6943275bcc
Moved pre-(modify,erase)triggers code to single inline function
2003-05-05 11:47:45 +00:00
dimitr
29191e1195
1. Cleanup
...
2. Fixed bug with wrong record statistics when operation fails after a VIO call
(e.g. constraint violation or exception in post-triggers)
2003-05-04 15:39:42 +00:00
alexpeshkoff
784fe6e723
Use the same pool for array and it's elements
2003-04-26 10:09:38 +00:00
alexpeshkoff
185fc0432c
Fixed 2 bugs, which caused server to crash
2003-04-25 17:15:43 +00:00
alexpeshkoff
2d59c9cd0f
Fixed bug with wrong rpb contents after pre-triggers execution
2003-04-25 14:51:04 +00:00
dimitr
7ef23f7a82
With some luck, this should fix the buggy behaviour of ROW_COUNT.
2003-04-24 05:46:49 +00:00
alexpeshkoff
2a5b52a0e4
execute statement cleanup
2003-04-22 08:45:52 +00:00
aafemt
e5146fd644
Introduce of ISC_STATUS_ARRAY
2003-04-16 10:18:51 +00:00
dimitr
a7dfa5de94
Fixed problem with error reporting.
2003-04-13 13:22:23 +00:00
aafemt
19bb54f2a8
STATUS -> ISC_STATUS
2003-04-10 06:49:16 +00:00
skidder
8fbe3f2d29
Fix up the reason of slowdown of Windows CS
2003-03-24 14:41:42 +00:00
dimitr
f489530467
Some cleanup and bugfixing.
2003-03-05 12:50:44 +00:00
brodsom
79a40c0d99
Put declarations and definitions inside the same ifdef condition under which is used. (for not used ones NOT_USED_OR_REPLACED)
2003-03-03 09:22:32 +00:00
alexpeshkoff
878b0b6091
Fixed EXECUTE STATEMENT to support INTO clause
2003-03-01 19:19:23 +00:00
dimitr
d39683e261
Cleanup.
2003-02-14 09:26:55 +00:00
dimitr
67749f906b
Fixed exception handling.
2003-02-13 13:33:57 +00:00
dimitr
b096a2593d
CONST -> const
2003-02-13 10:11:35 +00:00
tamlin
fe66550bf6
Just some reformatting and added a TODO comment.
2003-02-12 19:12:15 +00:00
eku
a7f18b2e31
Removed "register" variables from the source code. It's up to the compiler
...
to hold variables in CPU registers.
2003-02-10 13:28:35 +00:00
brodsom
5e5bea58a6
Remove unusable define (needed header don't exist)
2003-02-10 00:09:35 +00:00
dimitr
feed25d451
Added support for parametrized events and runtime trigger action checks.
2003-01-15 12:08:59 +00:00
dimitr
f904819b4d
Fixed coredump when a message expression was NULL.
2002-12-11 09:39:41 +00:00
eku
5b8ffd81c2
Removed unused variables.
2002-12-10 11:53:53 +00:00
hippoman
9a8f0768b9
Changed struct fld and FLD to local module names
2002-11-30 17:45:02 +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
hippoman
4a76e9e4fe
change TRA,REQ,TRG,REL,CTX or PRC, to module local names.
2002-11-17 00:13:59 +00:00
dimitr
ef4d6fd247
Fixed bug with dynamic exception messages.
2002-11-14 07:42:50 +00:00
dimitr
ae89b0f3cb
Fixed bug with dynamic exception messages.
2002-11-14 07:35:44 +00:00
alexpeshkoff
865b39fec1
Fixed bug with exception inside for/while loop in triggers
2002-11-13 15:57:29 +00:00
hippoman
25c1dbd367
* Changed NOD struct name to JRD_NOD.
2002-11-11 19:42:47 +00:00
skidder
d6ae24865d
Reworked savepoint stuff a little
2002-11-03 17:29:51 +00:00
seanleyne
b3ad604669
Removed support for obsolete "PC_PLATFORM" define
2002-10-31 05:06:02 +00:00
skidder
8e6622a20e
Merging changes from skidder branch - explicit locks, savepoints, build system changes
2002-10-29 20:20:44 +00:00
tamlin
fb3cfa85da
const correctness etc
2002-10-29 16:27:47 +00:00
seanleyne
cc1f10d9a3
Code cleanup, removed obsolete "DecOSF" port
2002-10-29 03:17:45 +00:00
dimitr
380f6658b3
Fixed a possible buffer overrun.
2002-10-19 09:05:37 +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
bellardo
79a6e8b099
Cleaned up some include directives after renaming jrd_time.h.
2002-09-27 01:28:27 +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
skidder
b374caac68
Deferred user trigger compilation added. Solves some, but not all DDL issues and speeds things up
2002-09-19 16:02:58 +00:00
eku
ef2ff91438
Autoconf cleanup:
...
o use predefined macros to test for sys/wait.h, time.h and sys/time.h
o search strcasecmp in libresolv only if strcasecmp and stricmp are not in libc
o use predefined macro AC_SYS_LARGEFILE to determine 64Bit I/O
o determine the alignment of long and double (ALIGNMENT,DOUBLE_ALIGN),
still need to write a test for FB_ALIGN!
2002-09-18 12:50:13 +00:00
eku
4eaf8c0914
Autoconf cleanup:
...
o since the define 'VAX' was only used to tell that the byte order is
LITTLE_ENDIAN (it have nothing else to do with the VAX computer family)
it can safely replaced with '!WORDS_BIGENDIAN'.
o check if pointers are 64 bit
o replaced HAS_64BIT_POINTERS with 'SIZEOF_VOID_P == 8'
2002-09-17 05:58:40 +00:00
eku
da93f6697f
Autoconf enhancements:
...
o autoconf v2.53 and later is now required to generate configure
(sorry, but it makes many tasks easier)
o improved tests for mmap, socklen_t and offt_64
o added tests for atexit, on_exit, (v)fork, set(p)grp, setpgid and flock
o added test for the keyword 'volatile'
o fixed errors in configure.in
o updated config.h.in and autoconfig_msvc.h (the latter may be incorrect)
o replaced VOLATILE by volatile
o removed SETPGRP and ATEXIT
o replaced NO_FLOCK by HAVE_FLOCK
o SIG_FPTR cleanup
o vfork cleanup
2002-09-11 11:30:50 +00:00
dimitr
b9ef9abcc0
Get rid of the legacy GATEWAY (vms/oracle) implementation.
2002-08-22 08:20:27 +00:00
dimitr
8b2497e5de
Merging changes from fb1.
2002-06-30 10:15:57 +00:00
dimitr
c8266b189f
Merging changes from fb1.
2002-06-30 09:58:20 +00:00
bellardo
29a3a3f1f5
throw clause cleanup.
2002-04-18 03:54:36 +00:00
dimitr
1a6ad1ebc8
Fixed one memory allocation issue.
2002-04-06 08:50:38 +00:00
dimitr
8463265fc1
Implemented 'EXECUTE VARCHAR' command.
2002-04-04 13:53:20 +00:00
bellardo
e9496a000d
Cleanup of some try/catch block mistakes during the initial exception conversion.
2002-04-02 23:12:03 +00:00
tamlin
5ae485f0b5
cleaning up
2001-12-29 11:41:29 +00:00
tamlin
c15f569b4a
cleaning up
2001-12-28 06:31:38 +00:00
tamlin
80f7fb6dd4
New C++ memory pool
2001-12-24 02:51:06 +00:00
skywalker
365a7fe19c
Changes to compile fb2 under autoconf includes some structural changes
2001-07-29 17:42:23 +00:00
bellardo
747d13c0d5
Changes to bring FB2 to c++ on *nix.
2001-07-12 05:46:06 +00:00
tamlin
9a776a604e
First steps towards a C++ conversion.
2001-05-23 13:26:42 +00:00