西煞魄工厂

posts - 193, comments - 278, trackbacks - 0, articles - 0
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

[BTS]5740,10034错误处理?

Posted on 2008-03-04 13:58 西煞魄工人 阅读(152) 评论(2)  编辑 收藏 所属分类: BizTalk



 这又是什么错?

事件类型: 警告
事件来源: BizTalk Server 2006
事件种类: BizTalk Server 2006
事件 ID: 5740
日期:  2008-3-4
事件:  13:46:51
用户:  N/A
计算机: EIAC-TEMP5
描述:
适配器“SQL”返回一条错误消息。详细信息为“HRESULT="0x80040e14" Description="SQLOLEDB Error Description: Ambiguous update, unique identifier required  Transaction aborted "
 <Root xmlns:ns00="urn:schemas-microsoft-com:xml-updategram"><?MSSQLError HResult="0x80040e14" Source="Microsoft OLE DB Provider for SQL Server" Description="SQLOLEDB Error Description: Ambiguous update, unique identifier required  Transaction aborted "?></Root>”。






事件类型: 错误
事件来源: XLANG/s
事件种类: 无
事件 ID: 10034
日期:  2008-3-4
事件:  13:46:52
用户:  N/A
计算机: EIAC-TEMP5
描述:
未捕获的异常(请参阅下面的“内部异常”)已经挂起服务“EIAC.OA.NotificationSystem.Orchestrations.Main(a44769cf-20b3-668b-e434-e1b03b6f84c2)”的一个实例。
在管理性地恢复或终止该服务实例前,它将保持挂起状态。
如果恢复了该服务实例,它将从上次持续的状态继续,这可能再次引发同样的异常。
实例 ID: d9c408b3-57ab-48dd-937c-80dd864c1580
形状名称:
形状 ID:
引发异常的位置: 段 -1,进程 -1
内部异常: 处理消息时出错,有关详细信息,请参阅详细资料部分
消息 ID: {2F367584-1D89-4551-A76A-1223E5BB2F4E}
实例 ID: {FA895E7E-1DBA-4293-A0F5-E6DFD753BB3A}
错误说明: HRESULT="0x80040e14" Description="SQLOLEDB Error Description: Ambiguous update, unique identifier required  Transaction aborted "
 <Root xmlns:ns00="urn:schemas-microsoft-com:xml-updategram"><?MSSQLError HResult="0x80040e14" Source="Microsoft OLE DB Provider for SQL Server" Description="SQLOLEDB Error Description: Ambiguous update, unique identifier required  Transaction aborted "?></Root>

 

       
异常类型: XlangSoapException
源: Microsoft.XLANGs.BizTalk.Engine
目标站点: Void VerifyTransport(Microsoft.XLANGs.Core.Envelope, Int32, Microsoft.XLANGs.Core.Context)
下面是一个堆栈跟踪,用于标识发生异常的位置

   在 Microsoft.BizTalk.XLANGs.BTXEngine.BTXPortBase.VerifyTransport(Envelope env, Int32 operationId, Context ctx)
   在 Microsoft.XLANGs.Core.Subscription.Receive(Segment s, Context ctx, Envelope& env, Boolean topOnly)
   在 Microsoft.XLANGs.Core.PortBase.GetMessageId(Subscription subscription, Segment currentSegment, Context cxt, Envelope& env, CachedObject location)
   在 EIAC.OA.NotificationSystem.Orchestrations.Main.segment17(StopConditions stopOn)
   在 Microsoft.XLANGs.Core.SegmentScheduler.RunASegment(Segment s, StopConditions stopCond, Exception& exp)

    



这几次发现,5470, 5474, 10034 这样的错误,经常会同时出现。10034就不用去管它了。

5470,又是报sqladapter有问题,难道它这么脆弱吗?

测试现象,跟前面的流程一样,主要问题出在当流程有并发执行updategram的update操作时,就会报上面的错误。注意,是并发执行,当并发数>3时,就会引起错误。这是为什么呢?

总之,我还解释不了,但,与以往项目对比发现,主要区别就是定义的数据表ID字段没有设置成PK,改过来,问题就解决了!

 折磨了我一下午,问题就是一个PK。

Feedback

#1楼    回复  引用    

2008-03-07 13:08 by hahahhahahahahh [未注册用户]
问题就是一个PK
你就是一个PIG

#2楼    回复  引用  查看    

2008-04-08 22:21 by BAsil      
楼上有点太缺德了吧

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
博客园首页

新闻频道

社区

小组

博问

网摘

闪存

  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-03-04 20:00 编辑过
成果网帮您增加网站收入


相关链接: