robocop
a730fbf074
Get rid of more typedefs.
2009-04-03 10:07:55 +00:00
hvlad
d62242470b
Fixed AV in boot build.
2009-03-15 20:09:15 +00:00
hvlad
145fe79c84
Release database triggers in MET_clear_cache
2009-03-15 18:04:04 +00:00
robocop
fab6a3a6cf
Get rid of superflous parentheses.
2009-02-28 11:57:40 +00:00
hvlad
5a1aac379b
Fixed bug CORE-2293 : Wrong dependent object type (RELATION) in RDB$DEPEDENCIES for VIEW's
2009-01-26 13:44:16 +00:00
robocop
3689f15321
Style.
2009-01-20 08:33:59 +00:00
dimitr
df4744cc07
My extra check becomes more and more complicated to be proven correct while it protects from a purely theoretical issue that was never observed yet.
...
So I've decided to restore the condition to its original state.
2009-01-18 20:03:30 +00:00
dimitr
41da071448
Fixed unreliable error handling in MET_procedure().
2009-01-06 17:39:04 +00:00
robocop
2c6dcd5f38
Booleans.
2009-01-02 09:48:57 +00:00
dimitr
b44189150a
A quick fix for CORE-2257: Internal consistency check while altering dependent procedures.
...
To be reviewed some day, along with the whole ALTER mechanism.
2008-12-29 18:40:45 +00:00
dimitr
2b87e94242
Use explicit iterators instead of the implicit (built-in) ones due to the thread-safety requirements.
...
This change affects GenericMap only, as it's used globally in a few places and we have a proven crash there.
I have a more complete solution (total cleanup of default accessors from BePlusTree and SparseBitmap) in my local tree (thanks to Dmitry Kovalenko), but it's incomplete (requires more changes inside the engine) and IMHO risky (~20 core modules are affected), so I'd like to defer finalization of this cleanup till v3.0.
All objects of these types seem being protected by dbb_sync, so they shouldn't cause us any problems currently.
2008-12-19 14:57:01 +00:00
robocop
0a94d6fee8
Style.
2008-12-18 10:57:12 +00:00
robocop
e4650d5027
Promote thread_data* as function argument. Only exception where both tdbb and dbb were left together as arguments is nbak.cpp's call to CCH_rollover_to_shadow to avoid any side effect in the changed code, but anyway, that function calls SDW_rollover_to_shadow that takes the dbb from the tdbb and not explicitly.
2008-12-14 09:28:25 +00:00
alexpeshkoff
d8ea120ded
AIX port - use FB_ prefix for alignment constants
2008-11-05 11:26:23 +00:00
hvlad
905708b4f2
Fixed bug CORE-2098 : View over global temporary table
2008-10-09 20:07:37 +00:00
alexpeshkoff
a06ae8dd0c
1. Fixed illegal use of local variable in MET_trigger_msg() - thanks to Claudio.
...
2. Fixed minor bug - use of MetaName in PAR_symbol_to_gdscode() was illegal
cause maximum length of error name can be up to 32 symbols,
which does not fit into MetaName limit (31). And we already have 4 such names!
2008-09-03 11:23:00 +00:00
alexpeshkoff
13a15d4bfe
1. Final fix for CORE-1964 - finished vararg cleanup in jrd.
...
2. Generic cleanup of error reporting functions all around engine.
2008-08-27 12:20:47 +00:00
dimitr
c58544e6d5
Attempt to fix CORE-210: "CS server crash altering SP in 2 connect" and implement CORE-2052: "Allow the Classic Server to see the altered stored procedure immediately after the modifier transaction commit" with a single change.
2008-08-25 05:28:50 +00:00
asfernandes
6a5e1cc144
Fixed CORE-1894 - Circular dependencies between computed fields crashs the engine
2008-08-08 16:01:58 +00:00
asfernandes
e3d0de7cf1
Fix bug - missing isc_arg_cstring
2008-08-03 20:52:37 +00:00
asfernandes
12d3f6106a
Do not update RDB$DEPENDENCIES in system transaction, to be consistent with most of metadata updates and as work in progress for possible solution for CORE-1894
2008-07-21 15:49:24 +00:00
asfernandes
ce4bf91533
Misc
2008-07-01 01:12:02 +00:00
dimitr
50adebd7e7
Fixed CORE-1965: Lock manager crash (invalid lock ID) under concurrent DDL load.
2008-06-27 12:11:09 +00:00
dimitr
5dd403dffa
Rolled back some of my prior changes because of the found regression.
2008-06-26 15:22:01 +00:00
dimitr
74fe420b29
Rolled back my minor prototype changes as requested by Claudio.
2008-06-26 12:28:36 +00:00
dimitr
ee312b0920
Final part of the solution for CORE-1938: fixed synchronization.
2008-06-26 11:20:41 +00:00
dimitr
438dec11d6
1) Keep rel_name for dropped relations in order to report errors properly.
...
2) Throw an error when the relation cannot be locked because of being already dropped.
3) Don't release the existence lock before RDB$RELATIONS is cleaned up.
This is the first part of the changes intended to fix CORE-1938.
2008-06-26 10:48:28 +00:00
alexpeshkoff
a2e416210b
Fixed CORE-1964: Use of 0 instead of isc_arg_end to terminate list of ERR_post's (and cousines) arguments is invalid.
...
Also cleaned up use of gds__log() in a few places.
2008-06-26 09:47:59 +00:00
asfernandes
ee7a3f5930
Misc
2008-05-13 01:29:38 +00:00
hvlad
85aed9d302
Make ViewContext::vcx_context_name able to store more than 31 chars as was discussed in fb-devel. Thanks to Claudio for the tips.
2008-05-11 21:27:21 +00:00
robocop
89ebe8c4bc
More meaningful name for input param.
2008-05-06 09:00:59 +00:00
dimitr
f5659c0b70
1) Major cleanup of the old-style blk and allocator-based blk_type.
...
2) Added synchronization for the JRD locks.
2008-03-19 16:19:56 +00:00
dimitr
afb970dba1
1) Cleanup.
...
2) Catch exceptions in AST routines.
2008-03-12 16:53:57 +00:00
hvlad
23679a8b04
Fix few race conditions during metadata load and make index lock block accounting more MT safe.
2008-03-05 14:23:19 +00:00
alexpeshkoff
25a8cc2647
Fixed FK constraints - thanks to Vlad
2008-03-04 13:13:19 +00:00
asfernandes
e88fd596d9
Let DSQL cache lock logic in SS too - per Dmitry request
2008-03-03 15:40:56 +00:00
robocop
925ad77ad4
Correction.
2008-03-02 07:35:37 +00:00
asfernandes
35688cd5d9
Cleanup: remove y-valve functions DSQL_CACHE and INTL_FUNCTION
2008-03-01 19:14:46 +00:00
dimitr
99caa91b85
DSQL integration into the engine.
2008-02-28 13:48:16 +00:00
robocop
a002cd3837
Comment unused code.
2008-02-14 12:21:35 +00:00
asfernandes
691fb487d8
Misc
2008-02-06 00:43:54 +00:00
dimitr
402d0c564f
My other changes for check partners. For Vlad's review.
2008-02-05 13:55:21 +00:00
alexpeshkoff
ee6c433597
Mutexes cleanup:
...
1. Make all firebird mutexes recursive.
2. Enable exceptions to be thrown by mutexes and process them in code where needed.
3. Catch and ignore exceptions in various MutexGuard dtors.
2008-02-05 08:21:18 +00:00
robocop
4c3381ef6b
Style, constness and macro cleanup.
2008-02-03 10:41:44 +00:00
dimitr
33d31b3d0f
Rolled back my "partner check" changes upon Vlad's request. But one minor change is still done to avoid races in SS. To be reviewed after the CS build is fixed.
2008-01-31 13:36:11 +00:00
dimitr
a38b327886
Cleanup. Get rid of the JrdMemoryPool.
2008-01-29 10:11:52 +00:00
dimitr
43594ed53a
Major synchronization changes. Description of the commit will be posted to fb-devel.
2008-01-26 13:17:19 +00:00
alexpeshkoff
39896cb955
Fixed CORE-1671: atexit() calls in client libraries cause segfaults
...
and CORE-1079: Every attach of fbclient/fbembed library leaks 64KB of memory
To do it:
- created new template GlobalPtr, controlling access to destructors of global objects.
- applied it to global objects.
Also some related cleanup.
2008-01-23 15:52:40 +00:00
asfernandes
b772cc15de
Eliminate warning
2008-01-16 14:26:28 +00:00
dimitr
48e81dd58a
The merge is being fixed.
2008-01-16 12:22:11 +00:00
dimitr
d1e8f67a5d
The merge continued.
2008-01-16 09:29:37 +00:00
alexpeshkoff
eea9070f48
Optimized RuntimeStaticstics (and related part of ThreadDb) for performance - some tests run 25faster
2007-12-03 15:46:39 +00:00
alexpeshkoff
cc1c031fe4
Rolled back latest commit - it breaks gdef's logic, when field_id starts with 1, not 0
2007-10-31 13:59:09 +00:00
asfernandes
1706ea36d3
Backport patch to make references (at BLR level) to non-existent system fields return NULL - to simplify ODS differences handling
2007-10-14 01:32:24 +00:00
robocop
fa1538a1ae
Minor changes in MetaName usage.
2007-08-26 09:05:29 +00:00
asfernandes
a568843ccd
Fixed CORE-1395 - Few problems with domains's check constraints
2007-08-04 02:11:07 +00:00
dimitr
e8f33e1fd4
Fixed CORE-1344.
2007-07-04 16:07:55 +00:00
asfernandes
b7a1aea1c9
Fixed problem of not storing dependencies for database triggers - reported privately by Dmitry
2007-04-03 15:41:00 +00:00
robocop
e71a03261c
This is the full SafeArg implementation for getting rid of the fixed parameter types in the messages db. Alas, the legacy messages (before FB2.1) can't be changed in number of arguments neither the types of arguments sent by callers of the MsgPrint family or the fb_msg_format functions can be changed because old clients know these legacy messages and would crash.
2007-03-28 04:20:36 +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
asfernandes
cec7eaa8b6
Some changes based on Claudio's comments
2007-01-21 15:35:35 +00:00
asfernandes
f30ee6b63e
Use debug informations in EXECUTE BLOCK
2007-01-20 14:18:18 +00:00
asfernandes
aca179f398
Full domain support and NOT NULL in PSQL
2007-01-17 01:19:01 +00:00
asfernandes
0939d86a57
Some suggestions from Claudio
2006-11-11 00:52:31 +00:00
asfernandes
11838b0601
Misc
2006-11-06 01:07:31 +00:00
asfernandes
570b6cd4b4
1) CORE-645 and CORE-745: Database triggers
...
2) CORE-711: Make syntax for "CREATE TRIGGER" compliant with SQL2003
2006-11-05 18:30:36 +00:00
robocop
fb0cd24854
Put two recent hardcoded messages into the msg db.
2006-11-05 04:01:30 +00:00
asfernandes
a02716c63f
Misc
2006-11-04 02:47:33 +00:00
hvlad
f48f2af25b
Few corrections pointed by Claudio
2006-11-03 09:42:42 +00:00
asfernandes
88a9a84a01
Misc
2006-10-31 14:23:31 +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
aafemt
e6151fd57f
Warnings
2006-09-01 10:51:57 +00:00
asfernandes
dc2f6ed0d9
Correction
2006-09-01 01:40:22 +00:00
robocop
56d19d8f53
Centralize detection of those pesky implicit domains.
...
There may be more cases that can use the new function.
2006-08-31 08:01:24 +00:00
robocop
7fced64a88
Misc.
2006-08-30 04:54:44 +00:00
asfernandes
7d4af708ab
Don't store dependencies on auto-generated domains of procedure parameters.
...
TYPE OF parameters is already catched by the BLR parser.
2006-08-29 12:16:49 +00:00
asfernandes
b7af27215e
Allow usage of domains in PSQL (with TYPE OF syntax)
2006-08-19 02:52:39 +00:00
robocop
471d052e82
Misc.
2006-08-13 06:46:16 +00:00
asfernandes
e538061c38
Implementation of CREATE/DROP COLLATION and ISQL show/extraction of collations
2006-08-07 16:39:21 +00:00
dimitr
afc71df176
Fixed CORE-866.
2006-07-23 11:01:20 +00:00
dimitr
93b8e4a6e5
More format overflow checks.
2006-07-20 09:11:44 +00:00
dimitr
6992f3b904
Reject attempts to select from executable procedures.
2006-07-19 14:50:33 +00:00
dimitr
c68587fe66
1. Virtual tables
...
2. ODS 11.1, procedure type and relation type
2006-07-17 17:44:18 +00:00
asfernandes
50cae9632b
Misc
2006-07-12 01:38:41 +00:00
robocop
4c0b816568
CORE-847
...
Deleting dependencies for fields that WERE computed.
2006-07-11 04:57:28 +00:00
robocop
5a796f0b4e
Misc.
2006-07-09 05:08:23 +00:00
dimitr
9642e605b6
The callers check for "< 0" but we never could return a negative value. -1 has been converted to 65535 before returning.
2006-06-06 17:00:55 +00:00
dimitr
b116dd382c
Fixed bug reported by Adriano.
2006-06-01 04:45:48 +00:00
dimitr
0b7e4c9812
Misc.
2006-05-31 12:04:55 +00:00
robocop
3fa49e994b
Style and typo correction.
2006-05-26 05:19:48 +00:00
robocop
7040d668fd
Misc.
2006-05-25 08:40:23 +00:00
hvlad
614443f90d
Refactor common code and constants
2006-05-24 20:43:07 +00:00
dimitr
211645e3dc
Getting rid of the old allocator routines.
2006-05-23 10:17:00 +00:00
asfernandes
92cd427bbd
Misc
2006-05-23 03:37: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
robocop
c5f2284b15
Style.
2006-04-06 08:18:53 +00:00
asfernandes
7923390e54
Allow collation IDs greater than 127
2006-04-05 16:34:18 +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
044c5841ad
Misc.
2006-02-10 03:28:43 +00:00
dimitr
9a6ce8b2d1
Fixed SF #1404215 .
2006-01-13 09:33:40 +00:00
dimitr
38e34a43ba
Fixed SF #1191206 .
2005-12-12 13:58:19 +00:00
robocop
5a80bcbfe1
I think I solved the code that puzzled John three years ago: procedure parameters ids start at zero, but we were allocating num_of_params plus one for both input an output params. This explains why when iterating we ignored the last element of the vector containing them. Crap that we inherited from IB.
2005-12-04 05:32:25 +00:00
robocop
e2f440a374
Finish Mike work after 3 years. :-)
2005-12-03 06:43:19 +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
alexpeshkoff
62a24d46e4
1. Moved data structures, written to database file, into ods.h.
...
2. Added new types of clumplets to ClumpletReader and ClupmletWriter.
3. Applied modified ClumpletReader and ClupmletWriter to /remote and partially /jrd.
4. Added active protection from remote brute-force attack to services API.
2005-11-27 20:53:09 +00:00
hvlad
44aa29e6ee
Fixed unregistered bug with DROP DEFAULT reported in fb-devel by "Robert"
2005-11-21 17:55:04 +00:00
dimitr
5d34721f04
Let's load real system triggers from the database, not the ones hardcoded in trigs.h.
...
Otherwise weird things happen when we access a database with older ODS.
2005-10-13 08:11:37 +00:00
dimitr
2820fbe7e1
More checks for uncommitted DDL.
2005-09-14 12:02:13 +00:00
robocop
66f466d3a9
Misc.
2005-07-08 03:25:31 +00:00
hvlad
0bc1c4bf49
1. Allow to create FK constraints without exclusive database locking
...
2. Fix 'partner index not found' error when one process dropped FK and another trying to delete master record
3. misc changes in vio.cpp
2005-06-26 21:48:47 +00:00
asfernandes
888174719e
Misc.
2005-06-08 02:09:46 +00:00
dimitr
a92091c38c
Removed code remains from before-MetaName times.
2005-06-07 10:20:23 +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
robocop
e3039572d8
- Solve char/UCHAR mismatch.
...
- Track dependencies on indices mentioned in explicit plans for procedures and vierws.
2005-05-26 04:00:45 +00:00
robocop
3aaa840483
Misc.
2005-05-22 03:11:41 +00:00
robocop
0c5c72f0e8
- The trigger type is UCHAR in the range 1..6; don't change it to bool.
...
- Restored what seemed a check "just in case": test relation with empty name.
2005-05-16 09:13:18 +00:00
alexpeshkoff
d760894019
fixed unregistered bug - after attempt to
...
create view v(c1) as select 1 from v;
all clones of system request remained active forever
2005-05-13 14:42:23 +00:00
alexpeshkoff
5729790ed6
1. Applied class MetaName
...
2. Small generic cleanup
2005-05-12 18:28:04 +00:00
dimitr
1111a72c37
Fixed memory corruption reported privately by Sean.
2005-05-11 07:43:20 +00:00
robocop
a7754b39e3
Misc.
2005-04-28 06:12:08 +00:00
arnobrinkman
64e34a0109
Add comment
2005-04-25 06:54:45 +00:00
arnobrinkman
4b978cf19e
Fix bug #1168898
...
With sub-select in CHECK constraint and CHECK constraint is part of domain.
A table T with single column C who uses this domain.
Then no VIEW could be created on Table T which uses simple column C.
2005-04-24 18:32:16 +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
robocop
babcad892a
Solve metadata bug with MET_lookup_relation not finding the already loaded relation and hence not locking rel_existence_lock when required.
2005-01-26 04:44:53 +00:00
robocop
93b7301e31
1.- More variables in context.
...
2.- Close the blob.
2005-01-25 06:41:50 +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
d65307b497
Style.
2004-12-24 08:52:39 +00:00
robocop
f550ca480f
Misc.
2004-12-09 02:53:19 +00:00
robocop
af6a16107a
Misc.
2004-11-30 06:18:39 +00:00
alexpeshkoff
49aab40955
1. rewritten flu.cpp using modern firebird classes library
...
2. fixed diagnostic about missing/unusable UDF module
2004-11-29 11:15:09 +00:00
robocop
399fa165db
Make the assertion useful.
2004-11-01 03:18:42 +00:00
skidder
0c46bd34ea
Unify ODS11 between 32-bit and 64-bit builds on the same architecture: use 64-bit alignment and 32-bit descriptors
2004-10-25 01:18:37 +00:00
robocop
25f115b66e
Closing several possible buffer overruns.
...
Alex is expected to overwrite my changes in isc_file.cpp.
2004-10-08 04:48:02 +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
f5530981b2
Use exact_name instead of name_length with custom code
2004-09-26 07:24:04 +00:00
robocop
840bf14b36
If we are using namespace fb_utils, it doesn't make sense to prefix functions in it with fb_ again. Mechanical replacement made one by one (no bulk automatic changes).
2004-09-26 01:49:52 +00:00
robocop
7dcb66a250
When you call va_start, call va_end, don't assume it does nothing because some platforms don't have code for it!
...
Changed some sprintf to SNPRINTF. Work in progress WRT wrapper for this function.
2004-09-25 10:28:09 +00:00
robocop
5dce94f59f
Collapsed an example of Borland's advanced copy/paste technique that repeats routines in different files into a single function.
2004-09-15 03:49:52 +00:00
dimitr
47d00c34e0
A number of little corrections.
2004-09-13 21:06:41 +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
robocop
1741432859
Got rid of redundant cast to jrd_req*
2004-08-26 11:07:57 +00:00
alexpeshkoff
31039a254e
next step preparing to allocate auto objects memory from appropriate pool
2004-08-16 12:28:43 +00:00
skidder
04076ea1ff
size_t is more correct type for container sizes and indices
2004-07-17 00:13:34 +00:00
robocop
a19dadb269
1.- Try to fix the mess caused by different data types used to represent bifields of SCL_ constants defined in scl.h, second round.
...
2.- Prevent users from deleting system generators and modifying any entry in rdb$generators. VIO passes the task to DFW, the only problem being that the user gets the error when a commit is done, not before.
2004-07-06 05:59:40 +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
robocop
f8f159dc9e
Changing some variables that have a trailing underscore to allow conflict with C++ keywords or engine structs.
2004-05-31 02:34:35 +00:00