System.OverflowException:即使应用http://support.microsoft.com/kb/2703853后,值太大或太小 [英] System.OverflowException: Value was either too large or too small even after applying http://support.microsoft.com/kb/2703853
问题描述
昨天使用Sync FX 2.1后,我们第一次看到以下错误:
Yesterday after 3 years of using Sync FX 2.1 we've seen for the first time the following error:
2013-10-03 08:53:23.7310 Swiss.CLO.Service.Sync.Commun.LibraryCommunSyncService.GetChanges警告GetChanges Microsoft.Synchronization.Data.DbSyncException:无法枚举表'Documents'的RelationalSyncProvider的更改。 检查内部
异常是否存在任何特定于商店的错误。 ---> System.OverflowException:对于UInt64,值太大或太小。
在System.Int64.System.IConvertible.ToUInt64(IFormatProvider提供商)
在Microsoft.Synchronization.Data.SyncUtil.ParseTimestamp(Object obj,UInt64& timestamp)
在Microsoft.Synchronization.Data.DbDataReaderHandler.BuildCreateVersion()
在Microsoft.Synchronization.Data.RelationalSyncProvider.GetRowEnumerationState(DbDataReaderHandler readerHandler,SyncKnowledge knowledgeToCompare)
在Microsoft.Synchronization.Data.RelationalSyncProvider.EnumerateChangesInBatchesInternal(Object batchProducer)
---内部异常堆栈跟踪结束---
在Microsoft.Synchronization.Data.DbSyncBatchProducer.DequeueBatch()
在Microsoft.Synchronization.Data.RelationalSyncProvider.ConsumeBatchFromProducer(DbSyncScopeMetadata scopeMetadata)
在Microsoft.Synchronization.Data.RelationalSyncProvider.GetChanges(DbSyncScopeMetadata scopeMetadata,DbSyncSession DbSyncSession,UInt32 memoryBatchSize)
在Microsoft.Synchronization.Data.RelationalSyncProvider.GetChangeBatch(UInt32 batchSize,SyncKnowledge destinationKnowledge,Object& changeDataRetriever)
在Swiss.CLO.Service.Sync.Commun.LibraryCommunSyncService.GetChanges(UInt32 batchSize,SyncKnowledge destinationKnowledge)
2013-10-03 08:53:23.7310 Swiss.CLO.Service.Sync.Commun.LibraryCommunSyncService.GetChanges Warn GetChanges Microsoft.Synchronization.Data.DbSyncException: Cannot enumerate changes at the RelationalSyncProvider for table 'Documents'. Check the inner
exception for any store-specific errors. ---> System.OverflowException: Value was either too large or too small for a UInt64.
at System.Int64.System.IConvertible.ToUInt64(IFormatProvider provider)
at Microsoft.Synchronization.Data.SyncUtil.ParseTimestamp(Object obj, UInt64& timestamp)
at Microsoft.Synchronization.Data.DbDataReaderHandler.BuildCreateVersion()
at Microsoft.Synchronization.Data.RelationalSyncProvider.GetRowEnumerationState(DbDataReaderHandler readerHandler, SyncKnowledge knowledgeToCompare)
at Microsoft.Synchronization.Data.RelationalSyncProvider.EnumerateChangesInBatchesInternal(Object batchProducer)
--- End of inner exception stack trace ---
at Microsoft.Synchronization.Data.DbSyncBatchProducer.DequeueBatch()
at Microsoft.Synchronization.Data.RelationalSyncProvider.ConsumeBatchFromProducer(DbSyncScopeMetadata scopeMetadata)
at Microsoft.Synchronization.Data.RelationalSyncProvider.GetChanges(DbSyncScopeMetadata scopeMetadata, DbSyncSession DbSyncSession, UInt32 memoryBatchSize)
at Microsoft.Synchronization.Data.RelationalSyncProvider.GetChangeBatch(UInt32 batchSize, SyncKnowledge destinationKnowledge, Object& changeDataRetriever)
at Swiss.CLO.Service.Sync.Commun.LibraryCommunSyncService.GetChanges(UInt32 batchSize, SyncKnowledge destinationKnowledge)
我们检查了 select @@ dbts 返回a >  2147483647价值。
We've checked the select @@dbts returning a > 2147483647 value.
所以我们安装了相应的HotFix http://support.microsoft.com/kb/ 2703853
So we've installed corresponding HotFix http://support.microsoft.com/kb/2703853
并重新启动服务器
但是我们仍然会出现此错误。
But we still got this error coming up.
补丁似乎是正确应用
有没有人有想法吗?
谢谢
推荐答案
您可以检查您的应用是否确实加载了正确/更新的程序集?也许检查你的bin文件夹,以防旧的程序集被复制到那里......
can you check if your app is indeed loading the correct/updated assemblies? maybe check your bin folder just in case the old assemblies has been copied there...
这篇关于System.OverflowException:即使应用http://support.microsoft.com/kb/2703853后,值太大或太小的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!