<?xml version="1.0" encoding="UTF-8"?>
<EAPatch>
	<EAPatch.content>
		<PatchDescription>This patch will update indexes and columns on a MySQL repository.</PatchDescription>	
        <PatchSQL>
            ALTER TABLE `t_attribute` MODIFY COLUMN `ea_guid` VARCHAR(40) NOT NULL
        </PatchSQL>        
        <PatchSQL>
            ALTER TABLE `t_connector` MODIFY COLUMN `DestRole` VARCHAR(255)
        </PatchSQL>          
        <PatchSQL>
            ALTER TABLE `t_connector` MODIFY COLUMN `PDATA2` TEXT
        </PatchSQL> 
        <PatchSQL>
            ALTER TABLE `t_connector` MODIFY COLUMN `PDATA5` TEXT
        </PatchSQL>    
        <PatchSQL>
            ALTER TABLE `t_connector` MODIFY COLUMN `SourceRole` VARCHAR(255)
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_connector` MODIFY COLUMN `StateFlags` TEXT
        </PatchSQL>                 
        <PatchSQL>
            ALTER TABLE `t_files` MODIFY COLUMN `AppliesTo` VARCHAR(50) NOT NULL
        </PatchSQL>  
        <PatchSQL>
            ALTER TABLE `t_files` MODIFY COLUMN `Category` VARCHAR(100) NOT NULL
        </PatchSQL>                  
        <PatchSQL>
            ALTER TABLE `t_issues` MODIFY COLUMN `Priority` VARCHAR(50)
        </PatchSQL>  
        <PatchSQL>
            ALTER TABLE `t_issues` MODIFY COLUMN `Status` VARCHAR(50)
        </PatchSQL>          
        <PatchSQL>
            ALTER TABLE `t_object` MODIFY COLUMN `PDATA2` TEXT
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_object` MODIFY COLUMN `PDATA3` TEXT
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_object` MODIFY COLUMN `PDATA4` TEXT
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_objectproblems` MODIFY COLUMN `Priority` VARCHAR(50)
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_objectproblems` MODIFY COLUMN `ProblemType` VARCHAR(255) NOT NULL
        </PatchSQL>       
        <PatchSQL>
            ALTER TABLE `t_objectresource` MODIFY COLUMN `Role` VARCHAR(255) NOT NULL
        </PatchSQL>          
        <PatchSQL>
            ALTER TABLE `t_operation` MODIFY COLUMN `ea_guid` VARCHAR(50) NOT NULL
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_operationparams` MODIFY COLUMN `ea_guid` VARCHAR(50) NOT NULL
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_stereotypes` MODIFY COLUMN `AppliesTo` VARCHAR(255) NOT NULL
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_stereotypes` MODIFY COLUMN `ea_guid` VARCHAR(50) NOT NULL
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_taggedvalue` MODIFY COLUMN `BaseClass` VARCHAR(100) NOT NULL
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_tasks` MODIFY COLUMN `AssignedTo` VARCHAR(100)
        </PatchSQL>         
        <PatchSQL>
            ALTER TABLE `t_testplans` MODIFY COLUMN `Name` VARCHAR(150) NOT NULL
        </PatchSQL>          
        <PatchSQL>
            ALTER TABLE `t_xref` MODIFY COLUMN `Client` VARCHAR(255)
        </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_package` 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` CHANGE COLUMN `Constraint_` `Constraint` VARCHAR(255) NOT NULL
        </PatchSQL>
        <PatchSQL>
            CREATE INDEX `ix_sterotypes_stereotype` ON `t_stereotypes`(`Stereotype`)				
        </PatchSQL>           
        <PatchSQL>
            CREATE INDEX `ix_tagval_elemid` ON `t_taggedvalue`(`ElementID`)				
        </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>
