1 /* BEGIN INCLUDE FILE mrds_debug_names.incl.pl1     Jim Gray 8/7/79 */
  2 
  3 /* this include file associates module names with debug switches
  4    that are stored in the data segment mrds_debug_
  5    each module has it's own bit(9) debug switch, to define for various
  6    debug actions, with new module names to be added to the end
  7    of this list using the next in order array index in mrds_debug_
  8    the convention for naming is db_{module's full name}
  9    for the defined declaration over mrds_debug_$switch.
 10    module.name array is then changed to reflect the new
 11    number of modules, with the full module name added to the bottom
 12    of the initialize list for the name array.
 13    the module name array is used by the command level interface that sets/resets
 14    the current status of the debug switches for each module.
 15    the modules themselves use the db_{module name} declared variable for
 16    that module to interagate the bits for proper debug action to take.
 17    the definition of the meaning of the 9-bits is up to each individual module's
 18    designer. */
 19 
 20 
 21 /*
 22    HISTORY
 23 
 24    80-11-12 Davids: added db_mus_mod_ubtup
 25 
 26    80-11-13 Davids: added db_mu_sec_get_tuple and db_mu_sec_get_tid
 27 
 28    80-12-15 Jim Gray :  added  mrds_dsl_set_fscope  to  display  non
 29    error  info  about  being queued, and request being granted after
 30    being queued.
 31 
 32    81-01-15 Jim Gray : added  mu_concurrency_control  bit  to  allow
 33    running  MR8  and  MR9 mrds against the same database at the same
 34    time.
 35 
 36    81-02-02  Jim  Gray  :  added  bit  for  mrds_rst_dmdm  to  allow
 37    displaying internal tuple format bit offset, rather than the user
 38    view.
 39 
 40    81-02-06 Jim Gray : added bit for  new  mu_open_name_manager,  to
 41    dump  an  element  from  the  list, when display_open_names entry
 42    called with switch set.
 43 
 44    81-05-20 Jim Gray : added bit for  mrds_dsl_where_clause  display
 45    of sub_err_ messages, when cross domain compare occurs.
 46 
 47    81-06-17 Jim Gray : added bit for mu_open_iocb_manager to display
 48    iocb slot and rel name.
 49 
 50    81-07-08 Jim Gray : added comment for bit 4 in mrds_dsl_permute
 51 
 52    81-07-17 Jim Gray : added comment for bit 5 in mrds_dsl_permute
 53 
 54    81-07-18 Jim Gray : added bit 1 for  mrds_dsl_gen_srch_prog  that
 55    allows  key  searches, other than than specified by permute to be
 56    done as comparisons instead.
 57 
 58    81-07-22  Jim   Gray   :   added   comment   about   bit   2   in
 59    mrds_dsl_gen_srch_prog
 60 */
 61 
 62 declare (
 63          db_mrds_dsl_eval_expr bit (9) unal defined (mrds_debug_$switch (1)),
 64          db_mrds_dsl_get_token bit (9) unal defined (mrds_debug_$switch (2)),
 65          db_mrds_dsl_permute bit (9) unal defined (mrds_debug_$switch (3)),
 66          db_mrds_dsl_optimize bit (9) unal defined (mrds_debug_$switch (4)),
 67          db_mrds_dsl_search bit (9) unal defined (mrds_debug_$switch (5)),
 68          db_mrds_dsl_translate bit (9) unal defined (mrds_debug_$switch (6)),
 69          db_mu_retrieve bit (9) unal defined (mrds_debug_$switch (7)),
 70          db_mrds_dsl_open bit (9) unal defined (mrds_debug_$switch (8)),
 71          db_mrds_dsl_close bit (9) unal defined (mrds_debug_$switch (9)),
 72          db_mrds_dsl_init_res bit (9) unal defined (mrds_debug_$switch (10)),
 73          db_mu_sec_init_res bit (9) unal defined (mrds_debug_$switch (11)),
 74          db_mus_mod_ubtup bit (9) unal defined (mrds_debug_$switch (12)),
 75          db_mu_sec_get_tuple bit (9) unal defined (mrds_debug_$switch (13)),
 76          db_mu_sec_get_tid bit (9) unal defined (mrds_debug_$switch (14)),
 77          db_mrds_dsl_set_fscope bit (9) unal defined (mrds_debug_$switch (15)),
 78          db_mu_concurrency_control bit (9) unal defined (mrds_debug_$switch (16)),
 79          db_mrds_rst_dmdm bit (9) unal defined (mrds_debug_$switch (17)),
 80          db_mu_open_name_manager bit (9) unal defined (mrds_debug_$switch (18)),
 81          db_mrds_dsl_where_clause bit (9) unal defined (mrds_debug_$switch (19)),
 82          db_mu_open_iocb_manager bit (9) unal defined (mrds_debug_$switch (20)),
 83          db_mrds_dsl_gen_srch_prog bit (9) unal defined (mrds_debug_$switch (21))
 84          ) ;
 85 
 86 /* list of known module names, with index into name array
 87    the same as that into mrds_debug_$switch,
 88    number is the current count of defined module names,
 89    name is the modules full name. */
 90 
 91 declare 1 module options (constant) internal static,
 92         2 number fixed bin init (21),
 93         2 name char (32) dimension (21) init (
 94          "mrds_dsl_eval_expr",                              /* 1 => display value of each expression */
 95          "mrds_dsl_get_token",                              /* 1 => display the current token */
 96          "mrds_dsl_permute",                                /* each 1 => lost cost path found,
 97                                                                2 => reverse partial path
 98                                                                3 => use range order for path
 99                                                                4 => display access method costs
100                                                                5 => display details of final low cost path */
101          "mrds_dsl_optimize",                               /* 1 => pred tree,
102                                                                2 => paths to consider, 3 => calc_cost on */
103          "mrds_dsl_search",                                 /* 1 => display each tuple located */
104          "mrds_dsl_translate",                              /* 1 => display the search program */
105          "mu_retrieve",                                     /* 1 => display values compared, 2 => display tuple data */
106          "mrds_dsl_open",                                   /* 1 => allow cleanup sub_error_ */
107          "mrds_dsl_close",                                  /* 1 => allow cleanup sub_error_ */
108          "mrds_dsl_init_res",                               /* 1 => allow cleanup sub_error_ */
109          "mu_sec_init_res",                                 /* 1 => allow cleanup sub_error_ */
110          "mus_mod_ubtup",                                   /* 1 => consistency checking between the old
111                                                                and new tuple during modifies will be done */
112          "mu_sec_get_tuple",                                /* 1 => attribute values
113                                                                will be zeroed in the tuple structure
114                                                                is don't have read permission. */
115          "mu_sec_get_tid",                                  /* 1 => read permission to the key
116                                                                is checked (if db is secured) */
117          "mrds_dsl_set_fscope",                             /* 1 => display being queued,
118                                                                and request granted from queue messages */
119          "mu_concurrency_control",                          /* 1 => allow both dbc and db.control segs under db
120                                                                so can test both MR8 and MR9 mrds
121                                                                against the same database at the same time */
122          "mrds_rst_dmdm",                                   /* 1 => allow internal form of bit offset value
123                                                                for attributes to be displayed, rather than user view */
124          "mu_open_name_manager",                            /* 1 => dump mrds_open_name tree node structure,
125                                                                when display_open_names entry called */
126          "mrds_dsl_where_clause",                           /* 1 => display details of cross domain compares */
127          "mu_open_iocb_manager",                            /* 1 => display relation and slot getting iocb for */
128          "mrds_dsl_gen_srch_prog"                           /* 1 => do additional conditions as sequential, not key searches
129                                                                when the original access was a key,
130                                                                and the additional conditions can be done as key also
131                                                                2 => force key searches, regardless of strategy
132                                                                used to decide between compare or key search */
133          ) ;
134 
135 declare  mrds_debug_$switch (1:400) bit (9) unal ext ;      /* data segment debug array */
136 
137 /* END INCLUDE FILE mrds_debug_names.incl.pl1 */
138