====== Fixing GFEs in SYSREPOS (Performance) ====== ====== ====== ==== Created at 17 DEC 1998 04:30PM ==== When fixing GFEs in SYSREPOS follow these steps:   STEP 1:     Log into the SYSPROG application as SYSPROG   STEP 2:     From the System Editor command line://// //                        //**run**** attach_table 'REVBOOT','REVMEDIA'** ** ** STEP 3:     Create a new Record named with the first field being **REVREPOS. **                           Save this under the table REVMEDIA and row QREPOS*GLOBAL.    STEP 4:     From the System Editor command line:                          **run**** detach_table 'REVMEDIA'** ** ** STEP 5:     From the System Editor command line:                         ** run attach_table'REVBOOT','QREPOS'.** ** ** STEP 6:     Go to the Database Manager.   STEP 7:     Choose the Utilities menu choice.                          Under Open Insight Tables, choose LHVerify to check for GFEs and subsequently                      choose Fix Group Format Errors to fix the GFEs.   STEP 8:     After choosing either LHVerify or Fix Group Format Errors, then choose                      SYSREPOS (by double clicking) as the table.   Then hit the Verify or Fix GFEs                 button respectively.   STEP 9:     From the System Editor command line:                          **run**** detach_table 'QREPOS'** ** ** STEP 10:    From the System Editor command line://// //                        //**run**** attach_table 'REVBOOT','REVMEDIA'** ** ** STEP 11:    From the System Editor command line:                          **run**** delete_row 'REVMEDIA', 'QREPOS*GLOBAL'** ** ** STEP 12:    From the System Editor command line:                          **run**** detach_table 'REVMEDIA'** ** ** If you do not follow this process when fixing GFEs, the entity information could be written back to the repository decrypted.  As a result, when they are brought out of the repository they are encrypted (by the decryption process).  An example of this problem is the error message "You do not have access or update privileges".  If this occurs, records in the SYSREPOS table will appear to be garbage when viewed in the System Editor.   Here are the steps to reverse this problem if it occurs:   STEP 1:    Log into the SYSPROG application as SYSPROG   STEP 2:    From the System Editor command line://// //                        //**run**** attach_table 'REVBOOT','REVMEDIA'** ** ** STEP 3:    Create a new Record named with the first field being **REVREPOS. **                           Save this under the table REVMEDIA and row QREPOS*GLOBAL.    STEP 4:    From the System Editor command line: ** ** **                        run attach_table' REVBOOT','QREPOS'.** ** ** STEP 5:    From the System Editor command line: ** ** **                        run detach_table 'REVMEDIA'** ** ** STEP 6: // //Then create a Stored Procedure called FIX_REPOS (System Editor, File, New,                         Stored Procedure) as follows:   function fix_repos(void)   declare subroutine Set_FSError, Send_Info   $insert Logical $insert FSErrors_100   open "SYSREPOS" to fRepos else return "error open SYSREPOS" open "QREPOS"   to fRaw   else return "error open QREPOS"   select fRaw eof = FALSE$ Cnt = 0 loop   readnext Key else     eof = TRUE$     if @file.error<1,1,1> # FS_READNEXT_DONE$ then       Set_FSError()       return "error readnext"     end   end until eof   read Rec from fRaw, Key else     Set_FSError()     return "error read ": quote(Key)   end     if index(Rec, "$PUBLIC", 1) then    * it must be un-encrypted     Send_Info(Key)     Cnt += 1      * writing it to the repository will re-encrypt it     write Rec to fRepos, Key else       Set_FSError()       return "error write ": quote(Key)     end   end repeat   return "success, ": Cnt: " records fixed"   STEP 7:   From the System Editor command line:                          **run**** FIX_REPOS** **                        **(or run it from the System Monitor command line to see more information)   STEP 8:    From the System Editor command line:                          **run**** detach_table 'QREPOS'** ** ** STEP 9:    From the System Editor command line://// //                        //**run**** attach_table 'REVBOOT','REVMEDIA'** ** ** STEP 10:    From the System Editor command line:                          **run**** delete_row 'REVMEDIA', 'QREPOS*GLOBAL'** ** ** STEP 11:    From the System Editor command line:                          **run**** detach_table 'REVMEDIA'**