<?xml version="1.0" encoding="UTF-8"?>
<EAPatch>
	<EAPatch.content>
		<PatchDescription>This patch will update indexes and columns on a PostgreSQL repository.</PatchDescription>	
        <PatchSQL>
            ALTER TABLE t_connector ALTER COLUMN DestRole TYPE varchar(255)
        </PatchSQL>        
        <PatchSQL>
            ALTER TABLE t_connector ALTER COLUMN PDATA2 TYPE text
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_connector ALTER COLUMN PDATA5 TYPE text
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_connector ALTER COLUMN SourceRole TYPE varchar(255)
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_connector ALTER COLUMN StateFlags TYPE text
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_files ALTER COLUMN AppliesTo TYPE varchar(50)
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_files ALTER COLUMN Category TYPE varchar(100)
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_issues ALTER COLUMN Priority TYPE varchar(50)
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_issues ALTER COLUMN Status TYPE varchar(50)
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_object ALTER COLUMN PDATA2 TYPE text
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_object ALTER COLUMN PDATA3 TYPE text
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_object ALTER COLUMN PDATA4 TYPE text
        </PatchSQL>
        <PatchSQL>
            ALTER TABLE t_objectproblems ALTER COLUMN Priority TYPE varchar(50)
        </PatchSQL>    
        <PatchSQL>
            ALTER TABLE t_objectproblems ALTER COLUMN ProblemType TYPE varchar(255) 
        </PatchSQL>        
        <PatchSQL>
            ALTER TABLE t_objectresource ALTER COLUMN Role TYPE varchar(255) 
        </PatchSQL>          
        <PatchSQL>
            ALTER TABLE t_operation ALTER COLUMN ea_guid TYPE varchar(50) 
        </PatchSQL>   
        <PatchSQL>
            ALTER TABLE t_operationparams ALTER COLUMN ea_guid TYPE varchar(50) 
        </PatchSQL>  
        <PatchSQL>
            ALTER TABLE t_stereotypes ALTER COLUMN AppliesTo TYPE varchar(255) 
        </PatchSQL>  
        <PatchSQL>
            ALTER TABLE t_stereotypes ALTER COLUMN ea_guid TYPE varchar(50) 
        </PatchSQL>  
        <PatchSQL>
            ALTER TABLE t_taggedvalue ALTER COLUMN BaseClass TYPE varchar(100) 
        </PatchSQL>          
        <PatchSQL>
            ALTER TABLE t_tasks ALTER COLUMN AssignedTo TYPE varchar(100) 
        </PatchSQL>    
        <PatchSQL>
            ALTER TABLE t_xrefuser ADD COLUMN Visibility varchar(255) 
        </PatchSQL>          
        <PatchSQL>
            ALTER TABLE t_testplans ALTER COLUMN Name TYPE varchar(150) 
        </PatchSQL>     
        <PatchSQL>				
			CREATE INDEX ix_at_classifier ON t_attribute(Classifier)
		</PatchSQL>
		<PatchSQL>				
			CREATE UNIQUE INDEX ix_at_guid ON t_attribute(ea_guid)
		</PatchSQL>
        <PatchSQL>				
			CREATE INDEX ix_at_type ON t_attribute(Type)
		</PatchSQL>		
		<PatchSQL>				
			CREATE INDEX ix_at_tagval ON t_attributetag(VALUE)
		</PatchSQL>
        <PatchSQL>
            CREATE INDEX ix_conn_seqno ON t_connector(SeqNo)
        </PatchSQL>
		<PatchSQL> 
		    CREATE INDEX ix_conn_end_connid ON t_connector(End_Object_ID,Connector_ID)
		</PatchSQL> 
		<PatchSQL> 
		    CREATE INDEX ix_conn_start_connid 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>			
		    DROP INDEX idx_diagram_diagram_id
		</PatchSQL>		
		<PatchSQL>			
		    DROP INDEX idx_glossary_glossaryid
		</PatchSQL>			
		<PatchSQL>			
		    DROP INDEX idx_image_imageid
		</PatchSQL>			
		<PatchSQL>			
		    DROP INDEX idx_object_object_id
		</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_eventflags ON t_object(EventFlags)
		</PatchSQL>			
	    <PatchSQL>
            CREATE INDEX ix_ob_pkgpd1class ON t_object(Package_ID,PDATA1,Classifier)
		</PatchSQL>            
		<PatchSQL>				
			CREATE INDEX ix_ob_tagval ON t_objectproperties(Value)
		</PatchSQL>
		<PatchSQL>			
		    DROP INDEX idx_objectrequires_reqid
		</PatchSQL>					
		<PatchSQL>				
			CREATE INDEX ix_objscen_idevalscen ON t_objectscenarios(Object_ID,EValue,Scenario)
		</PatchSQL>				
		<PatchSQL>			
		    DROP INDEX idx_operation_operationid
		</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_opparm_classifier ON t_operationparams(Classifier)
		</PatchSQL>						
		<PatchSQL>				
			CREATE UNIQUE INDEX ix_opparm_guid ON t_operationparams(ea_guid)
		</PatchSQL>		
		<PatchSQL>				
			CREATE INDEX ix_op_tagval ON t_operationtag(VALUE)
		</PatchSQL>
		<PatchSQL>			
		    DROP INDEX idx_package_package_id
		</PatchSQL>			
		<PatchSQL>			
		    DROP INDEX idx_rtfreport_templateid
		</PatchSQL>			
		<PatchSQL>			
		    DROP INDEX idx_secuser_userid
		</PatchSQL>					
		<PatchSQL>				
			CREATE INDEX ix_tagval_elemid ON t_taggedvalue(ElementID)
		</PatchSQL>	
		<PatchSQL>				
		    ALTER TABLE t_tcf ADD CONSTRAINT pk_tcf 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>

