Roberta Marton created TRAFODION-1879:
-----------------------------------------

             Summary: Integrate library management into Trafodion metadata
                 Key: TRAFODION-1879
                 URL: https://issues.apache.org/jira/browse/TRAFODION-1879
             Project: Apache Trafodion
          Issue Type: Improvement
          Components: sql-cmu
            Reporter: Roberta Marton
            Assignee: Roberta Marton


The initial release of library management has been delivered to Trafodion.  
This is a follow-on JIRA that integrates library management operations into the 
existing Trafodion infrastructure. Currently, with the initial release of 
library management, the consumer needs to run a special script to set up 
everything.  This JIRA will incorporate the steps into existing SQL commands 
and remove the need for the script.

To enable library management, a new schema is created.  In the schema, a 
library and set of procedures are created.  In addition, if authorization is 
enable, a new role is created and granted execute privileges (with grant 
option) on all procedures.

Integrating library management into Trafodion  will be done by adding new 
options (create, drop, and upgrade) to the INITIALIZE TRAFODION command - 

INITIALIZE TRAFODION, CREATE LIBRARY MANAGEMENT:

This command creates the SEABASE_LIBMGR_SCHEMA, creates the 
SEABASE_LIBMGR_LIBRARY, and creates all the procedures as described in the 
init_libmgmt.sh script.  
•       SEABASE_LIBMGR_SCHEMA is  "_LIBMGR_"
•       SEABASE_LIBMGR_LIBRARY is "DB__LIBMGRNAME"

(Note - SEABASE_LIBMGR_SCHEMA is set to "_LIBMGR_" instead of DB__LIBMGR.  This 
name was chosen to meet current architecture standards for Trafodion.  Any 
schema beginning and ending with an underscore is considered system system.  
System schemas are treated special – for example, a person cannot drop the 
schema or create their own private objects in the schema.  We want this schema 
to be considered a system schema.)

If authorization is enabled, then role DB__LIBMGRROLE is granted execute 
privilege with the WITH GRANT OPTION on all procedures.

INITIALIZE TRAFODION, DROP LIBRARY MANAGEMENT:

This command drops the SEABASE_LIBMGR_SCHEMA.

INITIALIZE TRAFODION, UPGRADE LIBRARY MANAGEMENT:

This command verifies that the SEABASE_LIBMGR_LIBRARY exists and adds any new 
procedures.  It will not drop or alter existing procedures.  

Once we externalize these procedures, we cannot drop or alter them without some 
kind of upgrade operation.  For example, if a user is actively using one of 
these procedures, dropping or changing them could cause the customer's 
application to fail.  If you do need to change something like their signatures, 
it might be easier to add a new procedure.  If you want to drop them, then we 
need some mechanism to "obsolete" them for a release or two before actually 
removing them.







--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to