Error converting data type timestamp to numeric or incorrect syntax near "*"

Article:TECH136198  |  Created: 2010-01-15  |  Updated: 2012-06-20  |  Article URL http://www.symantec.com/docs/TECH136198
NOTE: If you are experiencing this particular known issue, we recommend that you Subscribe to receive email notification each time this article is updated. Subscribers will be the first to learn about any releases, status changes, workarounds or decisions made.
Article Type
Technical Solution

Product(s)

Environment

Problem



Error converting data type timestamp to numeric or "Incorrect syntax near "*"" thrown when attempting to modify Compliance Accelerator or Discovery Accelerator settings such as role assignments.


Error



- Pop-up error in CA or DA Client:

Incorrect syntax near "*"

- Symantec Enterprise Vault Event Log:

Event Type: Error
Event Source: EV Accelerator Manager
Event Category: None
Event ID: 100
Description:
APP AS - Customer ID: 2 - An error has occured when initializing the Cases. System.Data.SqlClient.SqlException: Error converting data type timestamp to numeric

Event Type: Error
Event Source: Accelerator Service Processor
Event Category: None
Event ID: 100
Description:
APP AS - Customer ID: 2 - An error has occured when initializing the Cases. System.Data.SqlClient.SqlException: Incorrect syntax near '*'.
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()
   at System.Data.SqlClient.SqlDataReader.get_MetaData()
   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
   at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
   at KVS.Accelerator.Case.Case.GetBaseDS(Int32 CaseID, CaseType aCaseType, String StatusID, String PrincipalLogin, Int64 RowVersion)
 


Environment



- Enterprise Vault 8.x, 9.x or 10.x on Microsoft Windows Server 2003 or 2008

- Compliance Accelerator or Discovery Accelerator 8.x, 9.x or 10.xon Microsoft Windows Server 2003 or 2008

- Microsoft SQL Server 2005 or 2008

 


Cause



When the database timestamp (RowVersion) exceeds 10 integer characters or the hex value of 0x000000007FFFFFFFF, one of nine stored procedures fails to properly convert the RowVersion to a BIGINT value.  This failure causes the Permission Cache in the Accelerator memory to not update properly.

 


Solution



This issue has been resolved in the following releases: 

Enterprise Vault 9.0.2 Hotfix
http://www.symantec.com/docs/TECH181411 

Enterprise Vault 9.0.4
http://www.symantec.com/docs/TECH147785

Enterprise Vault 10.0.1
http://www.symantec.com/docs/TECH147787
 
 
WORKAROUND for all versions:
Objective of the workaround is to prevent the end user and housekeeping routines from accessing the Permissions Cache.

1. Open the Accelerator Client
2. Configure the end users to not use the Permission Cache by modifying the Permission Cache Option to 0
Configuration | Settings | Security | (hidden setting) Permission Cache Option = 0
(Display hidden settings by holding the Ctrl key while selecting the words Configuration Settings with the mouse)

3. Configure housekeeping routines to not update the Permission Cache by modifying the Cache Policies File.
Configuration | Settings | System | (hidden setting) Cache Policies File
a. Save as...  (save file to a location for modification)
b. Access the saved file via Note Pad
c. Modify the file depicted in Bold

<Policies

Cache="0"
UseDatabaseNotification="0"
SlidingExpirationDelay="5"
AbsoluteExpirationDelay="0"
CacheItemPriority="3"
UseUSN = "0"
EnableNotificationPolling = "0"
IntermediaryExpirationDelay="10"
UsePolling="0"
   PollingInterval="2"
NotificationSQLCMD="select NotificationKey from dbo.tblCacheNotification where NotificationKey='{0.EN_US}'" >
   <!--SlidingExpirationDelay should be set to a low value when using database notifications-->
<!-- this section allows to overide some of the default settings for specific object.
e.g. <Policy Key="BO_LegalCases" Cache="1" UseDatabaseNotification="1" />
in this case BO_LegalCases will be cache and will use database notification.
all the none specified attributes will de default to the values defined in Policies

NOTE: BO_Principal and BO_Target cannot use notifications without updates to the notification
triggers.
-->

   <Policy Key="BO_LegalHolds" Cache="0" UseDatabaseNotification="0" UseUSN="0" EnableNotificationPolling="0" AbsoluteExpirationDelay="3000"/>
   <Policy Key="BO_Cases" Cache="0"  UseDatabaseNotification="0" UseUSN="0" EnableNotificationPolling="0" AbsoluteExpirationDelay="3000" />
   <Policy Key="BO_Principals" Cache="0"  UseDatabaseNotification="0" UseUSN="0" EnableNotificationPolling="0" AbsoluteExpirationDelay="3000"/>
   <Policy Key="BO_Searches" Cache="0"  UseDatabaseNotification="0" UseUSN="0" EnableNotificationPolling="0" AbsoluteExpirationDelay="3000" />

   <Policy Key="BO_ProductionRuns" Cache="0"  UseDatabaseNotification="0" UseUSN="0" EnableNotificationPolling="0" AbsoluteExpirationDelay="3000"/>
   <Policy Key="BO_Targets" Cache="0"  UseDatabaseNotification="0" UseUSN="0" EnableNotificationPolling="0" AbsoluteExpirationDelay="3000"/>
   <Policy Key="BO_NTGroup" Cache="0"  CacheItemPriority="6" UseDatabaseNotification="0" UseUSN="0" EnableNotificationPolling="0" AbsoluteExpirationDelay="3000"  />

   <Policy Key="BO_Customer" Cache="0" />
<Policy Key="BO_Customers" Cache="0" />
<Policy Key="BO_Install" Cache="0" />
<Policy Key="BO_Config" Cache="0"/>

   <Policy Key="BO_User" Cache="0"  UseDatabaseNotification="0" EnableNotificationPolling="0" UseUSN="0" AbsoluteExpirationDelay="3000" />
<Policy Key="BO_CasePrincipalPermission" Cache="0"  UseDatabaseNotification="0" UseUSN="0" AbsoluteExpirationDelay="3000" />

</Policies>
</CachePolicies>


4. Import the modified file back into the Accelerator.
Configuration | Settings | System | (hidden setting) Cache Policies File
a. Browse...  (navigate to the modified file)
b. Open the modified file
c. Press Save in the lower right of the screen

5. Restart Enterprise Vault Accelerator Manager Service
6. (Compliance Accelerator Only) Restart Journal Task on Enterprise Vault Journaling Servers utilizing the Journal Connector
7. Reopen the Accelerator Clients

For CA and DA 9.0 SP3
Symantec Corporation has acknowledged that the above-mentioned issue is present in the current version(s) of the product(s) mentioned at the end of this article. Symantec Corporation is committed to product quality and satisfied customers.
 
There are no plans to address this issue by way of a patch or hotfix in the current or previous versions of the software at the present time. However, the issue is currently scheduled to be addressed in the next major revision of the product. Please be sure to refer back to this document periodically as any changes to the status of the defect will be reflected here.  Please note that Symantec Corporation reserves the right to remove any fix from the targeted release if it does not pass quality assurance tests.  Symantec’s plans are subject to change and any action taken by you based on the above information or your reliance upon the above information is made at your own risk.
 

Supplemental Materials

SourceETrack
Value2066334
Description

Error converting data type to numeric


SourceETrack
Value2438877
Description

An error has occured when initializing the Cases. System.Data.SqlClient.SqlException: Error converting data type timestamp to numeric.


SourceETrack
Value2481431
Description

Error converting data type timestamp to numeric: Clients Cannot Function within or Access the CA Instance.


SourceETrack
Value2677298
Description

CA: Attempting to add roles to Monitored Employees throws error: Incorrect syntax near '*'



Legacy ID



355601


Article URL http://www.symantec.com/docs/TECH136198


Terms of use for this information are found in Legal Notices