From 3164d5a86bfdedba4a66f20dcf99bf455b1c39db Mon Sep 17 00:00:00 2001 From: asfernandes Date: Thu, 17 Dec 2009 01:36:33 +0000 Subject: [PATCH] Cleanup --- src/jrd/drq.h | 6 +- src/jrd/dyn.epp | 16 --- src/jrd/dyn_def.epp | 239 +---------------------------------------- src/jrd/dyn_del.epp | 31 ------ src/jrd/dyn_df_proto.h | 2 - src/jrd/dyn_dl_proto.h | 1 - src/jrd/dyn_mod.epp | 176 +++++++----------------------- 7 files changed, 45 insertions(+), 426 deletions(-) diff --git a/src/jrd/drq.h b/src/jrd/drq.h index 0f8beb59ca..3eb5f5e26e 100644 --- a/src/jrd/drq.h +++ b/src/jrd/drq.h @@ -76,11 +76,11 @@ const int drq_s_rels = 23; // store relations const int drq_l_rel_name = 24; // lookup relation name const int drq_l_view_rels = 25; // lookup relations in view const int drq_s_usr_prvs = 26; // store user privileges -const int drq_s_classes = 27; // store security classes +///const int drq_s_classes = 27; // store security classes const int drq_s_sql_lfld = 28; // store sql fields const int drq_s_sql_gfld = 29; // store sql fields const int drq_s_triggers = 30; // store triggers -const int drq_s_trg_msgs = 31; // store trigger messages +///const int drq_s_trg_msgs = 31; // store trigger messages const int drq_s_view_rels = 32; // store view relations const int drq_e_dims = 33; // erase dimensions const int drq_e_filters = 34; // erase filters @@ -116,7 +116,7 @@ const int drq_m_index = 63; // modify index const int drq_m_lfield = 64; // modify local field const int drq_m_relation = 65; // modify relation ///const int drq_m_trigger = 66; // modify trigger -const int drq_m_trg_msg = 67; // modify trigger message +///const int drq_m_trg_msg = 67; // modify trigger message const int drq_e_grant1 = 68; // erase grant const int drq_e_grant2 = 69; // erase grant const int drq_s_indices = 70; // store indices diff --git a/src/jrd/dyn.epp b/src/jrd/dyn.epp index 723cdf3aef..7cd80b7476 100644 --- a/src/jrd/dyn.epp +++ b/src/jrd/dyn.epp @@ -410,14 +410,6 @@ void DYN_execute(Global* gbl, DYN_delete_relation(gbl, ptr, relation_name); break; - case isc_dyn_def_security_class: - DYN_define_security_class(gbl, ptr); - break; - - case isc_dyn_delete_security_class: - DYN_delete_security_class(gbl, ptr); - break; - case isc_dyn_def_exception: DYN_define_exception(gbl, ptr); break; @@ -478,14 +470,6 @@ void DYN_execute(Global* gbl, DYN_define_trigger(gbl, ptr, relation_name, NULL, false); break; - case isc_dyn_def_trigger_msg: - DYN_define_trigger_msg(gbl, ptr, trigger_name); - break; - - case isc_dyn_mod_trigger_msg: - DYN_modify_trigger_msg(gbl, ptr, trigger_name); - break; - case isc_dyn_def_global_fld: DYN_define_global_field(gbl, ptr, relation_name, field_name); break; diff --git a/src/jrd/dyn_def.epp b/src/jrd/dyn_def.epp index 5dbd919be7..f50dd07102 100644 --- a/src/jrd/dyn_def.epp +++ b/src/jrd/dyn_def.epp @@ -99,26 +99,6 @@ const int FOR_KEY_DEL_NONE = 0x80; DATABASE DB = STATIC "ODS.RDB"; - -static const UCHAR who_blr[] = -{ - blr_version5, - blr_begin, - blr_message, 0, 1, 0, - blr_cstring2, CS_METADATA, 0, BLR_WORD(MAX_SQL_IDENTIFIER_SIZE), - blr_begin, - blr_send, 0, - blr_begin, - blr_assignment, - blr_user_name, - blr_parameter, 0, 0, 0, - blr_end, - blr_end, - blr_end, - blr_eoc -}; - - static bool is_it_user_name(Global*, const Firebird::MetaName&, thread_db*); static rel_t get_relation_type(thread_db*, Global*, const Firebird::MetaName&); @@ -148,9 +128,6 @@ void DYN_define_collation( Global* gbl, const UCHAR** ptr) GET_STRING(ptr, collation_name); - if (!collation_name.length()) - DYN_error_punt(false, 212); // msg 212: "Zero length identifiers not allowed" - DdlNode::executeDdlTrigger(tdbb, gbl->gbl_transaction, DdlNode::DTW_BEFORE, DDL_TRIGGER_CREATE_COLLATION, collation_name, gbl->sqlText); @@ -422,11 +399,6 @@ void DYN_define_constraint(Global* gbl, { DYN_UTIL_generate_constraint_name(tdbb, gbl, constraint_name); } - if (constraint_name.length() == 0) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } jrd_req* request = NULL; SSHORT id = -1; @@ -909,12 +881,6 @@ void DYN_define_exception( Global* gbl, const UCHAR** ptr) GET_STRING(ptr, exception_name); - if (exception_name.length() == 0) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } - DdlNode::executeDdlTrigger(tdbb, gbl->gbl_transaction, DdlNode::DTW_BEFORE, DDL_TRIGGER_CREATE_EXCEPTION, exception_name, gbl->sqlText); @@ -1245,9 +1211,6 @@ void DYN_define_filter( Global* gbl, const UCHAR** ptr) Firebird::MetaName filter_name; GET_STRING(ptr, filter_name); - if (filter_name.isEmpty()) - DYN_error_punt(false, 212); // msg 212: "Zero length identifiers not allowed" - jrd_req* request = CMP_find_request(tdbb, drq_s_filters, DYN_REQUESTS); bool b_ending_store = false; @@ -1334,12 +1297,6 @@ void DYN_define_function( Global* gbl, const UCHAR** ptr) Firebird::MetaName function_name; GET_STRING(ptr, function_name); - if (function_name.length() == 0) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } - DdlNode::executeDdlTrigger(tdbb, gbl->gbl_transaction, DdlNode::DTW_BEFORE, DDL_TRIGGER_CREATE_FUNCTION, function_name, gbl->sqlText); @@ -1559,12 +1516,6 @@ void DYN_define_generator( Global* gbl, const UCHAR** ptr) Firebird::MetaName generator_name; GET_STRING(ptr, generator_name); - if (generator_name.length() == 0) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } - DdlNode::executeDdlTrigger(tdbb, gbl->gbl_transaction, DdlNode::DTW_BEFORE, DDL_TRIGGER_CREATE_SEQUENCE, generator_name, gbl->sqlText); @@ -1675,11 +1626,6 @@ void DYN_define_global_field(Global* gbl, { DYN_UTIL_generate_field_name(tdbb, gbl, global_field_name); } - if (global_field_name.length() == 0) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } DdlNode::executeDdlTrigger(tdbb, gbl->gbl_transaction, DdlNode::DTW_BEFORE, DDL_TRIGGER_CREATE_DOMAIN, global_field_name, gbl->sqlText); @@ -1955,11 +1901,6 @@ void DYN_define_index(Global* gbl, { DYN_UTIL_generate_index_name(tdbb, gbl, index_name, index_type); } - if (index_name.isEmpty()) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } DdlNode::executeDdlTrigger(tdbb, gbl->gbl_transaction, DdlNode::DTW_BEFORE, DDL_TRIGGER_CREATE_INDEX, index_name, gbl->sqlText); @@ -2156,11 +2097,6 @@ void DYN_define_index(Global* gbl, case isc_dyn_idx_foreign_key: GET_STRING(ptr, referenced_relation); - if (referenced_relation.isEmpty()) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } break; case isc_dyn_idx_ref_column: @@ -2541,12 +2477,6 @@ void DYN_define_local_field(Global* gbl, Firebird::MetaName local_field_name; GET_STRING(ptr, local_field_name); - if (local_field_name.isEmpty()) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } - jrd_req* request = NULL; SSHORT id = -1; @@ -2878,12 +2808,6 @@ void DYN_define_relation(Global* gbl, const UCHAR** ptr, bool view) GET_STRING(ptr, relation_name); - if (relation_name.length() == 0) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } - DdlNode::executeDdlTrigger(tdbb, gbl->gbl_transaction, DdlNode::DTW_BEFORE, (view ? DDL_TRIGGER_CREATE_VIEW : DDL_TRIGGER_CREATE_TABLE), relation_name, gbl->sqlText); @@ -3228,70 +3152,6 @@ do_error_punt_9: } -void DYN_define_security_class( Global* gbl, const UCHAR** ptr) -{ -/************************************** - * - * D Y N _ d e f i n e _ s e c u r i t y _ c l a s s - * - ************************************** - * - * Functional description - * Execute a dynamic ddl statement. - * - **************************************/ - - thread_db* tdbb = JRD_get_thread_data(); - Database* dbb = tdbb->getDatabase(); - jrd_req* request = CMP_find_request(tdbb, drq_s_classes, DYN_REQUESTS); - - bool b_ending_store = false; - - try { - - STORE(REQUEST_HANDLE request TRANSACTION_HANDLE gbl->gbl_transaction) - SC IN RDB$SECURITY_CLASSES - GET_STRING(ptr, SC.RDB$SECURITY_CLASS); - SC.RDB$ACL.NULL = TRUE; - SC.RDB$DESCRIPTION.NULL = TRUE; - - UCHAR verb; - while ((verb = *(*ptr)++) != isc_dyn_end) - { - switch (verb) - { - case isc_dyn_scl_acl: - DYN_put_blr_blob(gbl, ptr, &SC.RDB$ACL); - SC.RDB$ACL.NULL = FALSE; - break; - - default: - DYN_unsupported_verb(); - } - } - - b_ending_store = true; - - END_STORE; - - if (!DYN_REQUEST(drq_s_classes)) { - DYN_REQUEST(drq_s_classes) = request; - } - } - catch (const Firebird::Exception& ex) - { - Firebird::stuff_exception(tdbb->tdbb_status_vector, ex); - if (b_ending_store) - { - DYN_rundown_request(request, drq_s_classes); - DYN_error_punt(true, 27); - // msg 27: "STORE RDB$RELATIONS failed" - } - throw; - } -} - - void DYN_define_sql_field(Global* gbl, const UCHAR** ptr, const Firebird::MetaName* relation_name, @@ -3318,12 +3178,6 @@ void DYN_define_sql_field(Global* gbl, Firebird::MetaName sql_field_name; GET_STRING(ptr, sql_field_name); - if (sql_field_name.isEmpty()) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } - jrd_req* request = NULL; SSHORT id = -1; @@ -3701,19 +3555,10 @@ void DYN_define_trigger(Global* gbl, GET_STRING(ptr, t); if (t.length() == 0) - { DYN_UTIL_generate_trigger_name(tdbb, gbl, t); - } - if (t.length() == 0) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } - - if (trigger_name) { + if (trigger_name) *trigger_name = t; - } jrd_req* request = CMP_find_request(tdbb, drq_s_triggers, DYN_REQUESTS); @@ -3882,83 +3727,6 @@ void DYN_define_trigger(Global* gbl, } -void DYN_define_trigger_msg(Global* gbl, const UCHAR** ptr, const Firebird::MetaName* trigger_name) -{ -/************************************** - * - * D Y N _ d e f i n e _ t r i g g e r _ m s g - * - ************************************** - * - * Functional description - * Define a trigger message. - * - **************************************/ - - thread_db* tdbb = JRD_get_thread_data(); - Database* dbb = tdbb->getDatabase(); - - jrd_req* request = CMP_find_request(tdbb, drq_s_trg_msgs, DYN_REQUESTS); - - bool b_ending_store = false; - - try { - - STORE(REQUEST_HANDLE request TRANSACTION_HANDLE gbl->gbl_transaction) - X IN RDB$TRIGGER_MESSAGES - X.RDB$MESSAGE_NUMBER = DYN_get_number(ptr); - X.RDB$MESSAGE.NULL = TRUE; - if (trigger_name) - { - strcpy(X.RDB$TRIGGER_NAME, trigger_name->c_str()); - X.RDB$TRIGGER_NAME.NULL = FALSE; - } - else { - X.RDB$TRIGGER_NAME.NULL = TRUE; - } - - UCHAR verb; - while ((verb = *(*ptr)++) != isc_dyn_end) - { - switch (verb) - { - case isc_dyn_trg_name: - GET_STRING(ptr, X.RDB$TRIGGER_NAME); - X.RDB$TRIGGER_NAME.NULL = FALSE; - break; - - case isc_dyn_trg_msg: - GET_STRING(ptr, X.RDB$MESSAGE); - X.RDB$MESSAGE.NULL = FALSE; - break; - - default: - DYN_unsupported_verb(); - } - } - - b_ending_store = true; - - END_STORE; - - if (!DYN_REQUEST(drq_s_trg_msgs)) { - DYN_REQUEST(drq_s_trg_msgs) = request; - } - } - catch (const Firebird::Exception& ex) - { - Firebird::stuff_exception(tdbb->tdbb_status_vector, ex); - if (b_ending_store) - { - DYN_rundown_request(request, drq_s_trg_msgs); - DYN_error_punt(true, 33); - // msg 33: "DEFINE TRIGGER MESSAGE failed" - } - throw; - } -} - - void DYN_define_view_relation( Global* gbl, const UCHAR** ptr, const Firebird::MetaName* view) { /************************************** @@ -3976,11 +3744,6 @@ void DYN_define_view_relation( Global* gbl, const UCHAR** ptr, const Firebird::M Database* dbb = tdbb->getDatabase(); fb_assert(view); - if (view->isEmpty()) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } jrd_req* request = CMP_find_request(tdbb, drq_s_view_rels, DYN_REQUESTS); SSHORT id = drq_s_view_rels; diff --git a/src/jrd/dyn_del.epp b/src/jrd/dyn_del.epp index db1ad145be..865c6b6029 100644 --- a/src/jrd/dyn_del.epp +++ b/src/jrd/dyn_del.epp @@ -1371,37 +1371,6 @@ do_punt: // ugly, rethink logic of this function } -void DYN_delete_security_class( Global* gbl, const UCHAR** ptr) -{ -/************************************** - * - * D Y N _ d e l e t e _ s e c u r i t y _ c l a s s - * - ************************************** - * - * Functional description - * Execute a dynamic ddl statement that - * deletes a security class. - * - **************************************/ - Firebird::MetaName security_class; - - GET_STRING(ptr, security_class); - - if (!DYN_delete_security_class2(gbl->gbl_transaction, security_class)) - { - DYN_error_punt(false, 75); - // msg 75: "Security class not found" - } - - while (*(*ptr)++ != isc_dyn_end) - { - --(*ptr); - DYN_execute(gbl, ptr, NULL, NULL, NULL, NULL, NULL); - } -} - - void DYN_delete_shadow( Global* gbl, const UCHAR** ptr) { /************************************** diff --git a/src/jrd/dyn_df_proto.h b/src/jrd/dyn_df_proto.h index 7b689e982f..4e0163d3bd 100644 --- a/src/jrd/dyn_df_proto.h +++ b/src/jrd/dyn_df_proto.h @@ -39,11 +39,9 @@ void DYN_define_index(Jrd::Global*, const UCHAR**, const Firebird::MetaName*, UC void DYN_define_local_field(Jrd::Global*, const UCHAR**, const Firebird::MetaName*, Firebird::MetaName*); void DYN_define_relation(Jrd::Global*, const UCHAR**, bool view); void DYN_define_role(Jrd::Global*, const UCHAR**); -void DYN_define_security_class(Jrd::Global*, const UCHAR**); void DYN_define_shadow(Jrd::Global*, const UCHAR**); void DYN_define_sql_field(Jrd::Global*, const UCHAR**, const Firebird::MetaName*, Firebird::MetaName*); void DYN_define_trigger(Jrd::Global*, const UCHAR**, const Firebird::MetaName*, Firebird::MetaName*, const bool); -void DYN_define_trigger_msg(Jrd::Global*, const UCHAR**, const Firebird::MetaName*); void DYN_define_view_relation(Jrd::Global*, const UCHAR**, const Firebird::MetaName*); void DYN_define_difference(Jrd::Global*, const UCHAR**); diff --git a/src/jrd/dyn_dl_proto.h b/src/jrd/dyn_dl_proto.h index 8d894771ee..23ce4dc033 100644 --- a/src/jrd/dyn_dl_proto.h +++ b/src/jrd/dyn_dl_proto.h @@ -35,7 +35,6 @@ void DYN_delete_index(Jrd::Global*, const UCHAR**); void DYN_delete_local_field(Jrd::Global*, const UCHAR**, const Firebird::MetaName*); void DYN_delete_relation(Jrd::Global*, const UCHAR**, const Firebird::MetaName*); void DYN_delete_role(Jrd::Global*, const UCHAR**); -void DYN_delete_security_class(Jrd::Global*, const UCHAR**); bool DYN_delete_security_class2(Jrd::jrd_tra* transaction, const Firebird::MetaName& security_class); void DYN_delete_shadow(Jrd::Global*, const UCHAR**); diff --git a/src/jrd/dyn_mod.epp b/src/jrd/dyn_mod.epp index a9264d1dbf..d543409e39 100644 --- a/src/jrd/dyn_mod.epp +++ b/src/jrd/dyn_mod.epp @@ -81,15 +81,9 @@ using namespace Firebird; DATABASE DB = STATIC "ODS.RDB"; -//const int MAX_CHARS_SHORT = 6; // 2**16 = 5 chars + sign -//const int MAX_CHARS_LONG = 11; // 2**32 = 10 chars + sign -//const int MAX_CHARS_INT64 = 20; // 2**64 = 19 chars + sign -//const int MAX_CHARS_DOUBLE = 22; // 15 digits + 2 signs + E + decimal + 3 digit exp -//const int MAX_CHARS_FLOAT = 13; // 7 digits + 2 signs + E + decimal + 2 digit exp - static const UCHAR alloc_info[] = { isc_info_allocation, isc_info_end }; -static void change_backup_mode(Global*, UCHAR verb); +static void change_backup_mode(Global*, UCHAR verb); static void modify_lfield_position(thread_db*, Global*, const MetaName&, const MetaName&, USHORT, USHORT); static bool check_view_dependency(thread_db*, Global*, const MetaName&, const MetaName&); @@ -468,58 +462,53 @@ void DYN_modify_global_field(Global* gbl, { MetaName newfld; - if (GET_STRING(ptr, newfld)) + GET_STRING(ptr, newfld); + + if (!domain_exists(tdbb, gbl, newfld)) { - if (!domain_exists(tdbb, gbl, newfld)) - { - MODIFY FLD USING - strcpy(FLD.RDB$FIELD_NAME, newfld.c_str()); - FLD.RDB$FIELD_NAME.NULL = FALSE; - jrd_req* old_request = request; - request = NULL; - // CVC: Let's update the dimensions, too. - if (has_dimensions) - { - FOR (REQUEST_HANDLE request TRANSACTION_HANDLE gbl->gbl_transaction) - DIM_DOM IN RDB$FIELD_DIMENSIONS - WITH DIM_DOM.RDB$FIELD_NAME EQ orig_dom.dyn_fld_name.c_str() - MODIFY DIM_DOM USING - strcpy (DIM_DOM.RDB$FIELD_NAME, newfld.c_str()); - DIM_DOM.RDB$FIELD_NAME.NULL = FALSE; - END_MODIFY; - END_FOR; - CMP_release (tdbb, request); - request = NULL; - } - // CVC: End modification. - FOR(REQUEST_HANDLE request TRANSACTION_HANDLE gbl->gbl_transaction) - DOM IN RDB$RELATION_FIELDS - WITH DOM.RDB$FIELD_SOURCE EQ orig_dom.dyn_fld_name.c_str() - MODIFY DOM USING - strcpy(DOM.RDB$FIELD_SOURCE, newfld.c_str()); - DOM.RDB$FIELD_SOURCE.NULL = FALSE; + MODIFY FLD USING + strcpy(FLD.RDB$FIELD_NAME, newfld.c_str()); + FLD.RDB$FIELD_NAME.NULL = FALSE; + jrd_req* old_request = request; + request = NULL; + // CVC: Let's update the dimensions, too. + if (has_dimensions) + { + FOR (REQUEST_HANDLE request TRANSACTION_HANDLE gbl->gbl_transaction) + DIM_DOM IN RDB$FIELD_DIMENSIONS + WITH DIM_DOM.RDB$FIELD_NAME EQ orig_dom.dyn_fld_name.c_str() + MODIFY DIM_DOM USING + strcpy (DIM_DOM.RDB$FIELD_NAME, newfld.c_str()); + DIM_DOM.RDB$FIELD_NAME.NULL = FALSE; END_MODIFY; - modify_lfield_index(tdbb, gbl, - DOM.RDB$RELATION_NAME, - DOM.RDB$FIELD_NAME, - DOM.RDB$FIELD_NAME); END_FOR; - CMP_release(tdbb, request); - request = old_request; - END_MODIFY; - } - else - { - DYN_error_punt(false, 204, SafeArg() << orig_dom.dyn_fld_name.c_str() << - newfld.c_str()); - // msg 204: Cannot rename domain %s to %s. A domain with that name already exists. - } + CMP_release (tdbb, request); + request = NULL; + } + // CVC: End modification. + FOR(REQUEST_HANDLE request TRANSACTION_HANDLE gbl->gbl_transaction) + DOM IN RDB$RELATION_FIELDS + WITH DOM.RDB$FIELD_SOURCE EQ orig_dom.dyn_fld_name.c_str() + MODIFY DOM USING + strcpy(DOM.RDB$FIELD_SOURCE, newfld.c_str()); + DOM.RDB$FIELD_SOURCE.NULL = FALSE; + END_MODIFY; + modify_lfield_index(tdbb, gbl, + DOM.RDB$RELATION_NAME, + DOM.RDB$FIELD_NAME, + DOM.RDB$FIELD_NAME); + END_FOR; + CMP_release(tdbb, request); + request = old_request; + END_MODIFY; } else { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" + DYN_error_punt(false, 204, SafeArg() << orig_dom.dyn_fld_name.c_str() << + newfld.c_str()); + // msg 204: Cannot rename domain %s to %s. A domain with that name already exists. } + break; } @@ -1160,11 +1149,6 @@ void DYN_modify_local_field(Global* gbl, const UCHAR** ptr, const MetaName* rela { MetaName new_fld; GET_STRING(&new_name, new_fld); - if (new_fld.length() == 0) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } check_view_dependency(tdbb, gbl, r, f); check_sptrig_dependency(tdbb, gbl, r, f); @@ -1334,77 +1318,6 @@ void DYN_modify_relation( Global* gbl, const UCHAR** ptr) } -void DYN_modify_trigger_msg( Global* gbl, const UCHAR** ptr, MetaName* trigger_name) -{ -/************************************** - * - * D Y N _ m o d i f y _ t r i g g e r _ m s g - * - ************************************** - * - * Functional description - * Modify a trigger message. - * - **************************************/ - MetaName t; - - thread_db* tdbb = JRD_get_thread_data(); - Database* dbb = tdbb->getDatabase(); - - jrd_req* request = CMP_find_request(tdbb, drq_m_trg_msg, DYN_REQUESTS); - - try { - - const int number = DYN_get_number(ptr); - if (trigger_name) - t = *trigger_name; - else if (*(*ptr)++ == isc_dyn_trg_name) - GET_STRING(ptr, t); - else - DYN_error_punt(false, 103); // msg 103: "TRIGGER NAME expected" - - FOR(REQUEST_HANDLE request TRANSACTION_HANDLE gbl->gbl_transaction) - X IN RDB$TRIGGER_MESSAGES - WITH X.RDB$MESSAGE_NUMBER EQ number AND X.RDB$TRIGGER_NAME EQ t.c_str() - - if (!DYN_REQUEST(drq_m_trg_msg)) - DYN_REQUEST(drq_m_trg_msg) = request; - - MODIFY X - UCHAR verb; - while ((verb = *(*ptr)++) != isc_dyn_end) - switch (verb) - { - case isc_dyn_trg_msg_number: - X.RDB$MESSAGE_NUMBER = DYN_get_number(ptr); - X.RDB$MESSAGE_NUMBER.NULL = FALSE; - break; - - case isc_dyn_trg_msg: - GET_STRING(ptr, X.RDB$MESSAGE); - X.RDB$MESSAGE.NULL = FALSE; - break; - - default: - DYN_unsupported_verb(); - } - END_MODIFY; - END_FOR; - - if (!DYN_REQUEST(drq_m_trg_msg)) - DYN_REQUEST(drq_m_trg_msg) = request; - - } - catch (const Exception& ex) - { - stuff_exception(tdbb->tdbb_status_vector, ex); - DYN_rundown_request(request, -1); - DYN_error_punt(true, 105); - // msg 105: "MODIFY TRIGGER MESSAGE failed" - } -} - - void DYN_modify_view( Global* gbl, const UCHAR** ptr) { /************************************** @@ -1423,12 +1336,6 @@ void DYN_modify_view( Global* gbl, const UCHAR** ptr) MetaName view_name; GET_STRING(ptr, view_name); - if (view_name.length() == 0) - { - DYN_error_punt(false, 212); - // msg 212: "Zero length identifiers not allowed" - } - jrd_req* request = NULL; bool found = false; @@ -2012,7 +1919,6 @@ void DYN_modify_sql_field(Global* gbl, const UCHAR** ptr, const MetaName* relati * **************************************/ thread_db* tdbb = JRD_get_thread_data(); - //Database* dbb = tdbb->getDatabase(); dyn_fld orig_fld, new_fld, dom_fld;