DB2 - 导致不确定线程的原因是什么?
问题描述:
在IBM大型机服务器上的(IBM)DB2中,什么原因导致不确定线程发生?DB2 - 导致不确定线程的原因是什么?
我在问这个问题,因为它似乎导致了一个不确定的线程在(IBM)DB2中是非常罕见的事情,一旦调用它,它似乎不容易停止。
更具体的问题吗?
- 挂线是否可以轻松停止?
- 什么会导致线程在大型机上的IBM DB2中挂起?
答
您的问题没有提及您正在使用哪个App-server,您使用的是哪个Db2-operating-system-platform和版本,以及哪个组件用作Transaction-Manager(s )和分布式事务的资源管理器。这些细节可以确定部分答案。所以没有这些细节,答案可能只是通用的。
编辑您的问题以提供缺少的详细信息。
一般而言,如果由于某种原因,至少有一个交易分支未能完成,那么分布式交易就会受到怀疑。这条腿可能会或可能不涉及Db2。如果分布式交易的至少一个分支涉及Db2,并且至少有一个分支未能完成,则Db2可以将该交易显示为有疑问。
根据分布式事务的哪一段失败,错误详细信息将位于不同的位置。例如,如果故障涉及MQ消息,那么您将搜索MQ诊断。如果故障涉及Db2,那么您将搜索失败的相关Db2平台上的诊断。
如果Db2充当资源管理器,并且对Db2的请求未能完成,那么原因可能是由于配置不良,访问计划错误,外部(对于Db2)函数或过程失败返回,锁定问题,超时,回滚和错误以及其他原因。
如果Db2 Linux/Unix/Windows报告存在不确定交易,则根据documentation中的说明,Db2还允许操作员手动解决此类问题。如果参与的Db2在z/OS或i系列上运行,则存在不同的文档页面。
感谢您的回应有点寻找一个通用的答案,但问题编辑了一点更多的细节 – reh