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

429 Commits

Author SHA1 Message Date
asfernandes
39498cb65b Use AutoCacheRequest in all cacheable system requests. Fixes some request leakages. 2010-04-18 15:04:52 +00:00
robocop
4499f8af4c Totally misc. 2010-04-14 09:47:51 +00:00
asfernandes
070c67f96a Misc 2010-04-13 22:50:15 +00:00
hvlad
bef8ae7376 Fix for bug CORE-2956 : Problems with requests of procedure's parameters.
To be reviewed by Dmitry.
2010-04-12 21:19:55 +00:00
robocop
ac551e2b71 Cleanup. 2010-04-04 08:52:10 +00:00
asfernandes
e1ba33a2ae Fix problem of the system transaction storing pointer to random or already deallocated attachment. Full build (or kind of) required. 2010-04-02 21:48:15 +00:00
robocop
7a4640366d Misc. 2010-01-30 09:58:01 +00:00
robocop
446097fe8e Be explicit, change "qualifier" to "package" in QualifiedName (needed anyway if/when schemas are added). 2010-01-27 04:32:27 +00:00
robocop
0da76615ab Fix misinterpretation of MET_get_dependencies's parameters done years ago with Alex' conversion to MetaName class. 2010-01-26 08:29:03 +00:00
asfernandes
2faab16698 Misc 2010-01-21 02:51:32 +00:00
hvlad
a9d654f034 Refactoring : extract part of MET_lookup_partner() as independent function MET_scan_partners() 2010-01-19 18:33:03 +00:00
asfernandes
9c1bab1793 Feature CORE-1385 Identity columns - in its basic form 2010-01-13 19:14:15 +00:00
asfernandes
7de2c38703 Misc 2010-01-09 22:15:18 +00:00
asfernandes
a5ab8a2b33 Make referencing and execution (try) of unimplemented packaged routines work correctly 2009-12-31 11:24:28 +00:00
asfernandes
0057047932 Misc 2009-12-30 00:50:39 +00:00
robocop
fc62cfe6e7 Misc. 2009-12-28 11:46:55 +00:00
asfernandes
d8c99a9be2 1) Make procedures and functions member of the same hierarchy (Routine class)
2) Some completion for external functions
2009-12-27 22:05:22 +00:00
robocop
a621b9838f Totally misc. 2009-12-26 13:22:52 +00:00
dimitr
a3886ecb19 PSQL functions (continued). 2009-12-25 13:30:38 +00:00
dimitr
18ed3075f1 I believe this code has been originally intended to work this way. 2009-12-25 07:09:02 +00:00
robocop
0564019d2f Misc and cleanup. 2009-12-24 11:48:17 +00:00
dimitr
debe65bcfb Support for PSQL functions (other JRD changes). Still work in progress. 2009-12-21 17:43:01 +00:00
asfernandes
1b1f90d06c Work in progress on RDB$VIEW_RELATIONS 2009-12-17 15:07:02 +00:00
asfernandes
7a78601ef2 1) Use metadata character set in DSQL cache
2) Make exceptions in metadata charset and convert them to the client charset - this should fix CORE-2431
3) Support for "internal" (engine) DSQL statements and use in COMMENT ON
2009-12-05 14:21:52 +00:00
robocop
5cfc9dc78b CORE-2787: Make rdb$system_flag not null.
Please do a full rebuild.
2009-12-03 12:52:10 +00:00
asfernandes
9ec1c36a55 Cleanup 2009-11-28 19:39:23 +00:00
dimitr
08e0e238c6 An attempt to fix CORE-2766: page 0 is of wrong type (expected 6, found 1).
Mutex is used just to wait on a event with allowed recursive execution.
2009-11-28 12:53:52 +00:00
asfernandes
3f5aded4e3 Misc 2009-11-28 01:44:42 +00:00
robocop
9dc71e817d Cleanup. 2009-11-27 06:59:21 +00:00
robocop
f955568fc9 The architect created ODS12 and saw it was good, then he said "thy shall be the only one among your race", dropped the older ones and sent the developers to the four corners of the cyberspace to convert the masses to ODS12. 2009-11-27 02:33:40 +00:00
asfernandes
a3dd1d0482 Misc 2009-11-26 00:20:59 +00:00
robocop
804ad6048a Restrict us to ODS11 and ODS12 until the dust settles down. 2009-11-24 11:42:56 +00:00
robocop
ee086aeb80 Parameters style. 2009-11-21 05:20:18 +00:00
robocop
0f16326892 Comments. 2009-11-21 03:23:47 +00:00
robocop
6dcb9c1d01 We align the parentheses with the code. 2009-11-19 09:52:30 +00:00
asfernandes
218f419b5c Fixed related issues:
CORE-1518 - Adding a non-null restricted column to a populated table renders the table inconsistent
CORE-2696 - "alter table" command can add a field which has "not null" definition
CORE-1748 - Unrestorable backup
CORE-1355 - Zero display instead of NULL
2009-11-18 14:24:47 +00:00
robocop
9ce4040042 Replace the now obsolete dbb_minor_original by dbb_minor_version. 2009-11-18 12:02:00 +00:00
robocop
190876b2ff Style. 2009-11-07 11:58:54 +00:00
robocop
16361cada8 Misc. 2009-11-01 10:58:16 +00:00
robocop
07dc116ed2 Misc. 2009-10-30 10:50:59 +00:00
asfernandes
ed0e0daeb3 - External Engines implementation.
- Plugins API.

- Feature CORE-2700 - UDR (User Defined Routines) Engine - C++ API supporting functions, triggers and stored procedures.
- Feature CORE-2470 - Support for alternate format of strings literals.
- Feature CORE-2310 - DDL triggers.
- Feature CORE-2312 - PSQL Packages.
- Feature CORE-1209 - CONTINUE statement.
- Feature CORE-1180 - DDL syntax to change (not) nullable state of columns.
- Feature CORE-2090 - Support OVER () clause with current aggregate functions.

- Fixed CORE-2699 - Common table expression context could be used with parameters.

- Introduce ODS 12.0.

- Work in progress in type-safe parser.
- Refactor some DDL commands (procedures and triggers) from DYN to DdlNodes.
- Refactor virtual tables to use a class hierarchy instead of namespaces. This is basic thing, not based on the changes done in Vulcan. Window functions is based on this work.
- Refactor COMMENT ON and DROP FUNCTION from DYN to DdlNodes. COMMENT ON do not use GDML anymore, it uses DSQL with PreparedStatement class.
- Refactor EXECUTE BLOCK to StmtNodes.
- Refactor the IUDF to SysFunctions. That eliminates RDB$GET_CONTEXT and RDB$SET_CONTEXT from RDB$FUNCTIONS.
2009-10-21 00:42:38 +00:00
alexpeshkoff
b19dacee16 Ported fix for CORE-2634: Performance regression when restoring database with big metadata 2009-09-29 10:35:16 +00:00
asfernandes
4759973045 Fixed CORE-2576 - Server may crash parsing wrong or truncated BLR
Full rebuild required - CMP_compile2 prototype changed
2009-08-02 04:10:07 +00:00
robocop
dc9e7e7a4a Paul Beach confirmed this Darwin code is no longer necessary. 2009-08-01 05:37:08 +00:00
robocop
33bc8670c2 Misc and constants. 2009-07-19 13:31:05 +00:00
robocop
f10e1b72eb Style. 2009-06-27 06:23:36 +00:00
robocop
5dadf14ad0 Small cleanup. 2009-06-26 10:19:49 +00:00
robocop
f3fdc5b5c7 Give idx_id and associated values a consistent data type and treatment. 2009-06-21 06:04:18 +00:00
robocop
eb87a35b27 Mark code maybe done for future extension. 2009-06-07 09:51:06 +00:00
robocop
2d7cb94844 Unused params
Some BLR checks
2009-04-28 13:08:04 +00:00
asfernandes
e88a67ee52 Fixed CORE-2427 - ALTER VIEW doesn't clear dependencies on old views 2009-04-24 15:39:30 +00:00
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