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
alexpeshkoff
9a34ce553c
make bool (isEmpty/hasData) checks for string and stack safe
2004-05-27 16:26:52 +00:00
alexpeshkoff
2f99a5ebf1
small strings cleanup
2004-05-26 16:12:05 +00:00
brodsom
81d54f25a1
-Replace *_thread_data macros with inline functions (finish) Now each provider/service uses inline functions with different names for each one instead of macros with the same name for all (which collide)
2004-05-24 01:03:41 +00:00
brodsom
75a0483d75
-Comment some common.h unused macros
...
-Replace VA_START macro with va_start function (it was already some places where it is not used)
2004-05-23 23:28:06 +00:00
brodsom
bed146ad19
-Replace *_thread_data macros with inline functions (jrd step 2)
2004-05-23 03:18:10 +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
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
df4aa2ec66
Macro cleaning (use ini.h instead repeating the macros)
2004-05-18 16:40:20 +00:00
brodsom
b76a60e8b7
Move THREAD_ functions from thd.h to thread_proto.h (and fix unix build)
2004-05-17 22:30:09 +00:00
brodsom
ee34db7e20
Macro cleaning (THREAD_*)
2004-05-15 00:58:46 +00:00
brodsom
9dbe1e64fe
-Remove casts unneeded after macro cleaning
2004-05-14 18:43:34 +00:00
brodsom
1ffe279896
-Avoid shadow warning
2004-05-12 19:39:17 +00:00
robocop
802f244ec1
Misc changes
2004-05-09 05:48:33 +00:00
skidder
43cb0d1ce4
Y-Valve handle translation layer
2004-05-02 23:06:37 +00:00
brodsom
a549091c94
- Split sqlda.h to avoid duplicated definitions between ibase.h and sqlda.h
...
- Replace define for constants
- Remove contants.h where not used.
2004-04-30 22:47:16 +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
ce0d00e9f6
struct trig moved to class Trigger
2004-04-19 15:29:29 +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
skidder
eb1ae27de8
Small metadata cache cleanup
2004-04-10 19:46:48 +00:00
skidder
535b479522
Doing memset on a class with fields having destructors is generally a bad idea
2004-04-10 19:03:42 +00:00
skidder
1f43b5f762
Oops. Somebody renamed CMP_clone_active function.
2004-04-10 03:56:34 +00:00