In Microsoft BizTalk Server 2006 R2, after you run a Business Activity Monitoring (BAM) activity for a long time, you receive an arithmetic overflow exception that resembles the following:
Microsoft.BizTalk.Bam.EventObservation.BAMTraceException: Failed to execute event. ---> System.Data.SqlClient.SqlException: Arithmetic overflow error converting expression to data type int.
This problem usually occurs when you have not implemented regular maintenance on completed activity instances in a BAM Primary Import database.
Note Regular maintenance includes activities such as archiving or deleting.
This problem occurs because the recordID variant is defined as the INT data type in several BAM-related stored procedures. However, in BAM Tables, the recordID field is defined as the BigINT data type. Therefore, when the number of records exceeds the upper limit of the INT data type, you receive an arithmetic overflow exception.
Note The upper limit of the INT data type is 2,147,483,647.
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem.
If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, submit a request to Microsoft Customer Service and Support to obtain the hotfix.
Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.
You must have Microsoft BizTalk Server 2006 R2 installed to apply this hotfix.
You do not have to restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
To apply this hotfix, extract the hotfix package, and then run the Setup.exe file. This file makes sure that the recordID variant is defined as a BigINT data type in the stored procedures for new activities. You must also run the UpsertProc.exe file to update the stored procedures for existing activities.
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
For more information about BAM activities in BizTalk Server, visit the following Microsoft Web site:
Microsoft BizTalk Server 2006 R2 Developer Edition, Microsoft BizTalk Server 2006 R2 Enterprise Edition, Microsoft BizTalk Server 2006 R2 Standard Edition, Microsoft BizTalk Server 2006 R2 Branch Edition