Arithmetic overflow errors in Event Engine service source

book

Article ID: 155736

calendar_today

Updated On:

Products

Monitor Solution

Issue/Introduction

No alerts are appearing into the Event Console. In the a.logs, we are seeing
hundreds of the following errors:


<event date="Jan 05 16:12:51 +00:00" severity="1" hostName="TXDAL01064"
source="Altiris.EventConsole.DataAccessLayer.BaseDataAccess.BulkInsertTableRows"
 module="EventEngine.exe" process="EventEngine" pid="15372" thread="31"
tickCount="1281899574"><![CDATA[An error occurred during an Event Console
database bulk insert
**CEDUrlStart** :http://entced.symantec.com/entt?
product=SMP&version=7.1.6851.0&language=en&module=IjqmNBs6IBPTb6HWqWweeQvdlW3Gff
BXWbatJdcvdTAQNlvOUVRB79dwZdw8Y2qn&error=-607583177&build=**CEDUrlEnd**


( Exception Details: System.Data.SqlClient.SqlException: Arithmetic overflow
error converting IDENTITY to data type int.
Arithmetic overflow occurred.


Running SQL Profiler reveals errors on the following bulk insert command:

insert bulk [dbo].[ec_alert] ([guid] UniqueIdentifier, [message] NVarChar(512)
COLLATE SQL_Latin1_General_CP1_CI_AS, [resource_guid] UniqueIdentifier,
[hostname] NVarChar(256) COLLATE SQL_Latin1_General_CP1_CI_AS, [product_guid]
UniqueIdentifier, [protocol_guid] UniqueIdentifier, [definition_guid]
UniqueIdentifier, [category_guid] UniqueIdentifier, [severity_guid]
UniqueIdentifier, [timestamp] DateTime) with (FIRE_TRIGGERS)


The error "Arithmetic overflow error converting IDENTITY to data type int"
indicates a value being inserted into an ec_alert column (with data type INT)
that exceeds INT value definition. This is defined to be > 2147483647. The only
column I see that uses data type INT in the ec_alert table is the "id" column. 
 
 

 

Arithmetic overflow error converting IDENTITY to data type int.  Arithmetic overflow occurred.
 

Cause


 This column is declared as Identity is auto incrementremeted. This column is inserted automatically by MSSQL server during table insert.

The error "Arithmetic overflow error converting IDENTITY to data type int" indicates a value being inserted into an ec_alert column (with data type INT)
that exceeds INT value definition. This is defined to be > 2147483647. The only column that uses data type INT in the ec_alert table is the "id" column.
 

Resolution

 

You can reset the Identity starting position by executing following command:

 

DBCC CHECKIDENT ( ec_alert,RESEED,1)

 

After this command will be executed, the next alert will be inserted with id=2

This column is not unique so it shouldn’t affect anything if there will be duplicated values