Some incidents take considerably longer than other incidents to view, edit, or save. The size of the ticket is not consistently the only reason that this behavior is observed as even new incidents with no history can take a lot longer to process.
The slowdown always occurs when specific contacts or assets are associated to an incident where the specific contacts or assets has a large number (over a 100) of incidents that are associated with the contact and/or asset.
New incidents that do not use any one of these contacts or assets view, edit, and save in normal time.
When a contact or asset loads, it also loads what incidents are associated with that contact/asset. In some cases this list can be very large. This can cause performance issues in four ways.
- The SQL server will take longer to run the code to retrieve the contact because of all the incidents that it has to return in the result set.
- All that data once returned to the application must be stored in memory.
- All data is moved into the view state and sent to the client in a compressed format.
- When the sub page that has all that informaiton in it is opened, it has to be rendered on the page.
Every time an incident is opened in edit or view, all this work is done right away even if the asset sub-page is never opened.
The best resolution is to upgrade helpdesk to SP5 which makes a change to the main new and edit incident pages to no longer load the full incident list when the contact or asset is selected. This saves .NET from having to render such a large grid.
For customers that are still on SP4 and are not going to upgrade to SP5 then a change can be made manually to not load the associated incidents to contact and assets. This would remove the association between assets/contacts to incidents in all interfaces. The change would also remove this list out of other places that list incidents by a contact or asset. The main one is the winuser console which lists the incidents for the contact. In order to restore this functionality to these other Helpdesk areas, updated templates are included in this update to restore the incident list.
Warning: These templates where build for SP4 and are not designed for sp5. Do not attempt to apply this fix to a sp5 installation of Helpdesk. If you have already upgraded to sp5 and still have this issue, it may be due to customizations that are overriding sp5 changes. For customers with customizations it is recommended to reapply those customizations to copies of the sp5 templates instead of trying to apply sp5 changes to the existing customized templates.
The drawback to these changes to sp4 are that when in the incident edit page you go to the contact's or asset's info page, the associated incidents will not be displayed. Of course if you have a contact or asset with several incidents, then the small functionality loss may be worth it.
Installing this hotfix:
- Download the Attached file "ContactAssetIncident.zip."
- Extract the three template files (.ASCX) and one SQL script file (.SQL) to a temporary folder on the Helpdesk server.
- Find the release versions of the extracted template files in the folder \Program Files\Altiris\Helpdesk\AeXHD\templates.
- Make a backup copy of these three files from the templates folder and put them in a new folder under the Helpdesk folder.
- Take the three extracted template files and have them replace the ones currently in the templates folder.
- Using SQL Enterprise Manager, make a backup of your Helpdesk database (Altiris_Incidents).
- Open SQL Query Analyzer and connect to your SQL server that has your Helpdesk database.
- Switch to the Altiris_Incidents database.
- Inside SQL Query Analyzer, open the extracted sql script file and execute it.
- If any of the three templates were customized in your Helpdesk implementation, you will need to identify the differences between the three released templates(backup in step 4) and the hotfix templates. Make the same changes to your customized copy of those templates. Make backups of your custom template first.
The SQL script changes the stored procedures used to populate the data sets used in Helpdesk when a contact or asset is retired. The change makes it so that it will never return any associated incidents to the ContactDataSet or AssetDataSet directly.
The three templates are to replace the ones currently released with Helpdesk in the Templates folder. Basically now that the Contact and Asset Data sets no longer return incidents, these three templates were updated to manually put that data back into them while leaving the incident edit page free from the contact's and asset's associated incident list burden.
Helpdesk Solution 6.0 SP 4
Imported Document Id