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