1. Pre-Generation
1. Ellucian announanced that GUID generation can be done when the application is online, but unfortunately, in our case, during generation, some triggers will be fired and generate a lot of messages to workflow to send email out to the end use which may confuse them.
2. Suggest to switch database into restricted mode and disable all triggers in the underlying tables except the triggers whose named end with %GUID_TRG’and ‘%SURROGATE_ID’
3. Revoke permission ‘restricted session’ and role ‘dba’ from all business users except SATURN. No connection through this user, and if remove dba from SATURN, some tables will be failed.
4. Backup table GOREQRC and GOBEQRC, after GUID generation, check the number of records on these two tables to make sure they are unchanged. Otherwise, after application up, some confusing messages will be sent out by workflow.
5. Grant restricted session to BANGUIDGEN, this is the database user we use to schedule the script.
6. The script used to schedule GUID generation is gurguid_in_restricted_mode.sql, we need to do the following changes:
        p_add_parm(‘08’, ‘N’); – change from Y to N to run multiple schedules
        p_add_parm(‘09’, ‘Y’); – change to Y to disable BEP trigger during GUID generation

2. Generation

# schedule 10 sessions working together on the GUID generation.
# It will use Oracle Scheduler to run in the background

$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql  
$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql  
$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql 
$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql 
$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql  
$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql 
$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql 
$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql  
$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql 
$ sqlplus BANGUIDGEN/oracle123 @$GUIDGEN/gurguid_in_restricted_mode.sql 


In my case, it took two and half hours to be done.
SATURN.SFRSTCR spends 2 hours to be done. Others normally finish in 45 minutes.

3. Monitor

# The status of each tables 
select gurtrck_curr_object_status, count(*) 
  from GURTRCK 
 where gurtrck_object_type = 'GUID_GEN'
 group by gurtrck_curr_object_status;

# After we submit a scheduler, a one-up-no will be in the log file.
# Using this number to get the details.
select GUROUTP_LINE 
  from GENERAL.GUROUTP 
 where GUROUTP_ONE_UP_NO=6065907
 order by GUROUTP_LINE

3. Post-Generation
1. compare the number of records in COBEQRC and GOREQRC
2. enable triggers
3. grant dba role to the users which needs, be careful, some business set dba role as the default role.