Some customers see a slow deployment performance on LTS-8. The validation step takes multiple minutes. This isn't very pleasant and leads to long downtime of the application.
To improve the performance of the validation step the following additional indices in the system database help. Since we do not change the database schema in LTS update versions we will not add these indices in upcoming 8.0.x versions. However, we have added them in LTS-10.
Warning
If you add these indices to a LTS-8 system database, you must remove them again before migrating to LTS-10. Otherwise, the migration of the system database to LTS-10 might fail.
Note, that you might modify the statements slightly depending on the database system you are using. E.g, for Oracle you need to add TABLESPACE <name of your tablespace>
to the end of each CREATE INDEX ...
statement.
Here are the additional indices:
CREATE INDEX IWA_AsyncProcessCaseData_CaseIdIndex ON IWA_AsyncProcessCaseData (CaseId);
CREATE INDEX IWA_ProcessModel_ApplicationIdIndex ON IWA_ProcessModel (ApplicationId);
CREATE INDEX IWA_ProcessModelVersion_ProcessModelIdIndex ON IWA_ProcessModelVersion (ProcessModelId);
CREATE INDEX IWA_Library_ApplicationIdIndex ON IWA_Library (ApplicationId);
CREATE INDEX IWA_LibrarySpecification_LibraryIdIndex ON IWA_LibrarySpecification (LibraryId);
CREATE INDEX IWA_LibraryVersionSpec_LibrarySpecificationIdIndex ON IWA_LibraryVersionSpec (LibrarySpecificationId);
CREATE INDEX IWA_CaseMap_ProcessModelVersionIdIndex ON IWA_CaseMap (ProcessModelVersionId);
CREATE INDEX IWA_CaseMap_ApplicationIdIndex ON IWA_CaseMap (ApplicationId);
CREATE INDEX IWA_TaskElement_ProcessModelVersionIdIndex ON IWA_TaskElement (ProcessModelVersionId);
CREATE INDEX IWA_TaskStart_TaskElementIdIndex ON IWA_TaskStart (TaskElementId);
CREATE INDEX IWA_TaskEnd_TaskElementIdIndex ON IWA_TaskEnd (TaskElementId);
CREATE INDEX IWA_TaskSwitchEvent_TaskElementIdIndex ON IWA_TaskSwitchEvent (TaskElementId);
CREATE INDEX IWA_TaskSwitchEvent_CaseIdIndex ON IWA_TaskSwitchEvent (CaseId);
CREATE INDEX IWA_Task_StartTaskSwitchEventIdIndex ON IWA_Task (StartTaskSwitchEventId);
CREATE INDEX IWA_Task_EndTaskSwitchEventIdIndex ON IWA_Task (EndTaskSwitchEventId);
CREATE INDEX IWA_Task_TaskStartIdIndex ON IWA_Task (TaskStartId);
CREATE INDEX IWA_Task_TaskEndIdIndex ON IWA_Task (TaskEndId);
CREATE INDEX IWA_Task_ExpiredCreatorTaskIdIndex ON IWA_Task (ExpiredCreatorTaskId);
CREATE INDEX IWA_Task_TimeoutedCreatorIntrmdtEventIdIndex ON IWA_Task (TimeoutedCreatorIntrmdtEventId);
CREATE INDEX IWA_CaseMapEvent_ProcessCaseIdIndex ON IWA_CaseMapEvent (ProcessCaseId);
CREATE INDEX IWA_TaskNote_TaskIdIndex ON IWA_TaskNote (TaskId);
CREATE INDEX IWA_TaskNote_NoteIdIndex ON IWA_TaskNote (NoteId);
CREATE INDEX IWA_CaseNote_CaseIdIndex ON IWA_CaseNote (CaseId);
CREATE INDEX IWA_CaseNote_NoteIdIndex ON IWA_CaseNote (NoteId);
CREATE INDEX IWA_TaskCustomStringField_TaskIdIndex ON IWA_TaskCustomStringField (TaskId);
CREATE INDEX IWA_TaskCustomTextField_TaskIdIndex ON IWA_TaskCustomTextField (TaskId);
CREATE INDEX IWA_TaskCustomNumberField_TaskIdIndex ON IWA_TaskCustomNumberField (TaskId);
CREATE INDEX IWA_TaskCustomTimestampField_TaskIdIndex ON IWA_TaskCustomTimestampField (TaskId);
CREATE INDEX IWA_CaseCstmStringFld_CaseIdIndex ON IWA_CaseCustomStringField (CaseId);
CREATE INDEX IWA_CaseCstmTextFld_CaseIdIndex ON IWA_CaseCustomTextField (CaseId);
CREATE INDEX IWA_CaseCstmNumberFld_CaseIdIndex ON IWA_CaseCustomNumberField (CaseId);
CREATE INDEX IWA_CaseCstmTmstmpFld_CaseIdIndex ON IWA_CaseCustomTimestampField (CaseId);
CREATE INDEX IWA_TskSigEvntRcvr_SgTskTskId ON IWA_TaskSignalEventReceiver (SignaledTaskTaskStartId);
CREATE INDEX IWA_SignalEvent_ApplicationId ON IWA_SignalEvent (ApplicationId);
CREATE INDEX IWA_SecurityDescriptor_SecurityDescriptorTypeId ON IWA_SecurityDescriptor (SecurityDescriptorTypeId);
CREATE INDEX IWA_PermissionGroup_ParentPermissionGroupId ON IWA_PermissionGroup (ParentPermissionGroupId);
CREATE INDEX IWA_SecurityDescriptorType_RootPermissionGroupId ON IWA_SecurityDescriptorType (RootPermissionGroupId);
CREATE INDEX IWA_AccessControl_PermissionIdIdx ON IWA_AccessControl (PermissionId);
CREATE INDEX IWA_PermissionGroupPermission_PermissionGroupId ON IWA_PermissionGroupPermission (PermissionGroupId);
CREATE INDEX IWA_PermissionGroupPermission_PermissionId ON IWA_PermissionGroupPermission (PermissionId);
CREATE INDEX IWA_BusinessCaseData_BusinessCaseId ON IWA_BusinessCaseData (BusinessCaseId);
CREATE INDEX IWA_IntermediateEvent_ApplicationId ON IWA_IntermediateEvent (ApplicationId);