1 /* BEGIN INCLUDE FILE mrds_rst_rsc.incl.pl1 RDL 7/7/78 */ 2 3 /* Modified 8/21/78 by RDL */ 4 5 /* Modified 9/11/78 by RDL to add directive and stmt pointers */ 6 7 /* Modified 11/4/78 by RDL to add debug,trace,meter switches 8 9 Modified 3/29/79 by RDL to change s_seg_info_ptr to source_seg_ptr 10 11 Modified by Jim Gray - - Jan. 1980, to add flags to disallow blocked files, forieng keys, and restructuring. 12 13 Modified by Jim Gray - - Feb. 1980, to add command level flag for cmdb subroutine interface. 14 15 Modified by Jim Gray - - 80-11-06, to add bit for cmdb -secure option. 16 17 81-05-18 Jim Gray : added bit for max_attributes error message, so that 18 it would only be issued on first occurence. 19 20 82-08-19 Davids: added the db_type field. 21 22 83-02-18 Mike Kubicar : Removed the db_type field and added the 23 db_relation_mode_flags substructure to define the modes applicable 24 to the database's relations. Also removed assorted unsed fields 25 (names that included the word unused). 26 27 */ 28 29 dcl 1 rsc based (rsc_ptr), /* Restructuring control info */ 30 2 rsc_dir char (200), /* pathname of directory containing rsc segment */ 31 2 dbp char (168), /* Database absolute path */ 32 2 temp_dir char (168), /* Path name of temp restrucuring directory */ 33 2 temp_dir_sw bit (1) unal, /* On => temp dir has been created */ 34 2 db_quiesced_sw bit (1) unal, /* On => database has been quiesced */ 35 2 o_db_open_sw bit (1) unal, /* On => old database has been opened */ 36 2 n_db_open_sw bit (1) unal, /* On => temp database is open */ 37 2 listing_seg_sw bit (1) unal, /* On => listing segment has been created */ 38 2 skip_scanner_conversion bit (1) unal, /* Skip conversion in scanner */ 39 2 cmdb_option bit (1) unal, /* ON => this is a cmdb source, not restructuring */ 40 2 trace_sw bit (1) unal, /* On -> trace mode in affect */ 41 2 debug_sw bit (1) unal, /* On = debug mode (NOT IMPLEMENTED) */ 42 2 meter_sw bit (1) unal, /* On = procedures call metering procedure */ 43 2 delete_db_sw bit (1) unal, /* On = delete data base in cleanup */ 44 2 model_consistent_sw bit (1) unal, /* On => Model is consistent */ 45 2 physical_started_sw bit (1) unal, /* On => Physical restructuring started */ 46 2 physical_complete_sw bit (1) unal, /* On => Physical restructuring completed */ 47 2 model_overflow bit (1) unal, /* ON => model segment area condition occurred */ 48 2 max_files bit (1) unal, /* ON => maximum number of files reached */ 49 2 allow_foreign_keys bit (1) unal, /* on => allow foreign key statment */ 50 2 foreign_key_seen bit (1) unal, /* on => foreign key definition in source */ 51 2 allow_blocked_files bit (1) unal, /* on => allow file statement with blocked option */ 52 2 blocked_file_seen bit (1) unal, /* on => blocked file definition in source */ 53 2 allow_restructuring bit (1) unal, /* on => allow RMDB entry point */ 54 2 command_level bit (1) unal, /* on => called from command unal, not subroutine level */ 55 2 secure bit (1) unal, /* on => -secure option given for cmdb */ 56 2 max_attrs bit (1) unal, /* on => max attrs/rel or max indexes/rel exceeded */ 57 2 db_relation_mode_flags, 58 3 dm_file_type bit (1) unal, /* on => relations are dm files */ 59 3 protection_on bit (1) unal, /* on => relations need transactions */ 60 3 concurrency_on bit (1) unal, /* on => concurrency control enabled */ 61 3 rollback_on bit (1) unal, /* on => before journalling is enabled */ 62 2 severity_high fixed bin, /* Highest severity level error encountered */ 63 2 phase fixed bin, /* 000 = init 64 100 = global list init 65 200 = parse 66 300 = physical init 67 400 = physical */ 68 2 h_o_seg_info_ls_ptr ptr, /* Pointer to head of old db seg_info list */ 69 2 h_n_seg_info_ls_ptr ptr, /* Pointer to head of new db seg_info list */ 70 2 h_gfile_ptr ptr, /* Pointer to head of global file list */ 71 2 h_gdom_ptr ptr, /* Pointer to head of global domain list */ 72 2 h_gattr_ptr ptr, /* Pointer to head of global attribute list */ 73 2 h_grel_ptr ptr, /* Pointer to head of global relation list */ 74 2 h_glink_ptr ptr, /* Pointer to head of global link list */ 75 2 o_dm_ptr ptr, /* Pointer to old data model seg (dm_model ) */ 76 2 n_dm_ptr ptr, /* Pointer to temp data model seg */ 77 2 o_fn_hdr_ptr ptr, /* Pointer to head of original file list (fn structure) */ 78 2 source_seg_ptr ptr, /* Pointer to source_seg */ 79 2 listing_iocb_ptr ptr, /* Pointer to listing segment iocb */ 80 2 directive_ptr ptr, /* Pointer to directive type str in mrds_rst_semactics.incl.pl1 */ 81 2 stmt_ptr ptr, /* Pointer to statement str in mrds_rst_sematics.incl.pl1 */ 82 2 trace_metering_iocb_ptr ptr, /* Pointer to seg used by trace and metering */ 83 2 tree_node_area_ptr ptr, /* pointer to working storage for tree nodes */ 84 2 tree_data, 85 3 seg_info_area_ptr ptr, /* seg info working storage area */ 86 3 gl_area_ptr ptr, /* global list data work storage area */ 87 3 sl_area_ptr ptr, /* sublist data work storage area */ 88 2 parse_info_area_ptr ptr, /* parse interface work area storage */ 89 2 static_info_area_ptr ptr, /* directive, stmt and other static work storage area */ 90 2 variable_length_area_ptr ptr, /* varibale allocates work storage area */ 91 2 other_area_ptr ptr, /* unspecified work area storage */ 92 2 wa area (sys_info$max_seg_size - fixed (rel (addr (rsc.wa))) + 1); /* Work area */ 93 94 dcl rsc_ptr ptr; /* Pointer to base of rsc segment */ 95 96 97 98 /* END INCLUDE FILE mrds_rst_rsc.incl.pl1 */ 99