<?xml version="1.0" encoding="UTF-8"?>
<EAPatch>
	<EAPatch.content>
		<PatchDescription>This patch will update indexes and columns on an Oracle repository.</PatchDescription>	
		<PatchSQL>				
		    ALTER TABLE t_connector ADD (PDATA2X CLOB, PDATA5X CLOB, StateFlagsX CLOB)
		</PatchSQL>
		<PatchSQL>				
		    UPDATE t_connector SET PDATA2X = PDATA2, PDATA5X = PDATA5, StateFlagsX = StateFlags
		</PatchSQL>
		<PatchSQL>				
		    ALTER TABLE t_connector DROP (PDATA2, PDATA5, StateFlags)
		</PatchSQL>
        <PatchSQL>
		    ALTER TABLE t_connector RENAME COLUMN PDATA2X TO PDATA2
		</PatchSQL>    
		<PatchSQL>				
		    ALTER TABLE t_connector RENAME COLUMN PDATA5X TO PDATA5
		</PatchSQL>
		<PatchSQL>				
		    ALTER TABLE t_connector RENAME COLUMN StateFlagsX TO StateFlags
		</PatchSQL>
		<PatchSQL>				
            ALTER TABLE t_files MODIFY (AppliesTo VARCHAR2(50), Category VARCHAR2(100))
		</PatchSQL>
        <PatchSQL>
            ALTER TABLE t_issues MODIFY (Priority VARCHAR2(50), Status VARCHAR2(50))
		</PatchSQL>    
		<PatchSQL>				
		    ALTER TABLE t_object ADD (PDATA2X CLOB, PDATA3X CLOB, PDATA4X CLOB)
		</PatchSQL>
		<PatchSQL>				
		    UPDATE t_object SET PDATA2X = PDATA2, PDATA3X = PDATA3, PDATA4X = PDATA4
		</PatchSQL>
		<PatchSQL>				
		    ALTER TABLE t_object DROP (PDATA2, PDATA3, PDATA4)
		</PatchSQL>
        <PatchSQL>
		    ALTER TABLE t_object RENAME COLUMN PDATA2X TO PDATA2
		</PatchSQL>    
		<PatchSQL>				
		    ALTER TABLE t_object RENAME COLUMN PDATA3X TO PDATA3
		</PatchSQL>
		<PatchSQL>				
		    ALTER TABLE t_object RENAME COLUMN PDATA4X TO PDATA4
		</PatchSQL>
        <PatchSQL>
            ALTER TABLE t_objectproblems MODIFY (Priority VARCHAR2(50), ProblemType VARCHAR2(255))
		</PatchSQL>   		
        <PatchSQL>
            ALTER TABLE t_objectresource MODIFY (Role VARCHAR2(255))
		</PatchSQL>  		
        <PatchSQL>
            ALTER TABLE t_operation MODIFY (ea_guid VARCHAR2(50))
		</PatchSQL>
        <PatchSQL>
            ALTER TABLE t_operationparams MODIFY (ea_guid VARCHAR2(50))
		</PatchSQL>		
        <PatchSQL>
            ALTER TABLE t_stereotypes MODIFY (AppliesTo VARCHAR2(255), ea_guid VARCHAR2(50))
		</PatchSQL> 
        <PatchSQL>
            ALTER TABLE t_taggedvalue MODIFY (BaseClass VARCHAR2(100))
		</PatchSQL> 		
        <PatchSQL>
            ALTER TABLE t_tasks MODIFY (AssignedTo VARCHAR2(255))
		</PatchSQL>				  		
        <PatchSQL>
            ALTER TABLE t_testplans MODIFY (Name VARCHAR2(150))
		</PatchSQL>		
		<PatchSQL>				
			CREATE INDEX ix_at_classifier ON t_attribute(Classifier)
		</PatchSQL>
        <PatchSQL>				
			CREATE INDEX ix_at_type ON t_attribute(Type)
		</PatchSQL>
        <PatchSQL>				
			CREATE UNIQUE INDEX ux_at_guid ON t_attribute(ea_guid)
		</PatchSQL>		
		<PatchSQL>				
			CREATE INDEX ix_at_tagval ON t_attributetag(Value)
		</PatchSQL>
		<PatchSQL>
		    CREATE INDEX ix_conn_eidconnid ON t_connector(End_Object_ID,Connector_ID)
		</PatchSQL>
		<PatchSQL>
		    CREATE INDEX ix_conn_sidconnid ON t_connector(Start_Object_ID,Connector_ID)
		</PatchSQL>		
		<PatchSQL> 
			CREATE INDEX ix_conntag_property ON t_connectortag(Property)
		</PatchSQL>
		<PatchSQL>	
			CREATE INDEX ix_conntag_value ON t_connectortag(Value)
		</PatchSQL>		
		<PatchSQL>
			CREATE INDEX ix_datatypes_productname ON t_datatypes(ProductName)
		</PatchSQL>
		<PatchSQL>
			CREATE INDEX ix_datatypes_datatype ON t_datatypes(DataType)
		</PatchSQL>		
        <PatchSQL>				
		    CREATE INDEX ix_diag_diagtype ON t_diagram(Diagram_Type)
		</PatchSQL>
        <PatchSQL>				
		    CREATE INDEX ix_diag_parent ON t_diagram(ParentID)
		</PatchSQL>
        <PatchSQL>										
    		ALTER TABLE t_method DROP primary key
		</PatchSQL>
        <PatchSQL>										    		
            ALTER TABLE t_method ADD primary key (Object_ID,Name)
		</PatchSQL>		            
		<PatchSQL>				
			CREATE INDEX ix_ob_classifier_guid ON t_object(Classifier_guid)
		</PatchSQL>		
		<PatchSQL>				
			CREATE INDEX ix_ob_name ON t_object(Name)
		</PatchSQL>
		<PatchSQL>				
			CREATE INDEX ix_ob_ntype ON t_object(NType)
		</PatchSQL>				
		<PatchSQL>				
			CREATE INDEX ix_ob_pacckage ON t_object(Package_ID)
		</PatchSQL>			
		<PatchSQL>				
			CREATE INDEX ix_ob_parent ON t_object(ParentID)
		</PatchSQL>							
		<PatchSQL>				
			CREATE INDEX ix_ob_pdata1 ON t_object(PDATA1)
		</PatchSQL>
		<PatchSQL>				
			CREATE INDEX ix_ob_eventflags ON t_object(EventFlags)
		</PatchSQL>
		<PatchSQL>				
			CREATE INDEX ix_ob_pkg_pd1_class ON t_object(Package_ID,PDATA1,Classifier)
		</PatchSQL>		
		<PatchSQL>				
			CREATE INDEX ix_ob_tagval ON t_objectproperties(Value)
		</PatchSQL>
		<PatchSQL>				
			CREATE INDEX ix_objscen_idevalscen ON t_objectscenarios (Object_ID,EValue,Scenario)
		</PatchSQL>				
		<PatchSQL>				
			CREATE INDEX ix_op_classifier ON t_operation(Classifier)
		</PatchSQL>
		<PatchSQL>				
			CREATE UNIQUE INDEX ix_op_guid ON t_operation(ea_guid)
		</PatchSQL>
		<PatchSQL>				
			CREATE INDEX ix_opparams_classifier ON t_operationparams(Classifier)
		</PatchSQL>
		<PatchSQL>
		    CREATE UNIQUE INDEX ix_opparams_guid ON t_operationparams(ea_guid)
		</PatchSQL>						
		<PatchSQL>				
			CREATE INDEX ix_op_tagval ON t_operationtag(Value)
		</PatchSQL>		
		<PatchSQL>				
			CREATE INDEX ix_package_name ON t_package(Name)
		</PatchSQL>
		<PatchSQL>						
    		ALTER TABLE t_roleconstraint rename column CONSTRAINT_ to "Constraint"
        </PatchSQL>
        <PatchSQL>
	    	CREATE INDEX ix_sterotypes_stereotype ON t_stereotypes (stereotype)
        </PatchSQL>
		<PatchSQL>
		    ALTER TABLE t_tcf ADD primary key (TCFID)
		</PatchSQL>            
        <PatchSQL>				
			CREATE INDEX ix_version_elemid ON t_version(ElementID)
		</PatchSQL>		
	    <PatchSQL>				
			CREATE INDEX ix_xref_name ON t_xref(Name)
		</PatchSQL>        
	</EAPatch.content>
</EAPatch>

