【问题标题】:MQRC_OBJECT_ALREADY_EXISTS when WMQ FTE transfer is invoked via ANT script通过 ANT 脚本调用 WMQ FTE 传输时的 MQRC_OBJECT_ALREADY_EXISTS
【发布时间】:2011-04-26 05:39:19
【问题描述】:

在尝试使用 ANT 脚本调用传输时,我收到以下错误:

“发生内部错误。产品故障数据已在文件“FFDC.FTE.log”中捕获。”

“尝试创建回复队列以接收传输结果失败。”

请问是什么原因造成的?

com.ibm.wmqfte.wmqiface.WMQApiFailureException: 
  cc=2 rc=2100 op=openTemporaryQueue - MQOPEN (Queue Manager: QUEUEK, 
  Temporary Queue Model: SYSTEM.DEFAULT.MODEL.QUEUE, 
  Dynamic Queue Prefix: REPLY., 
  Open Options: 8196) 

【问题讨论】:

  • "你能找出这是什么原因吗?" - 是的,还有更多信息。也许如果你用……日志文件的内容来取悦我们?
  • 原因:com.ibm.wmqfte.wmqiface.WMQApiFailureException:cc=2 rc=2100 op=openTemporaryQueue - MQOPEN(队列管理器:QUEUEK,临时队列模型:SYSTEM.DEFAULT.MODEL.QUEUE,动态队列前缀:REPLY.,打开选项:8196)com.ibm.wmqfte.wmqiface.WMQApiFailureException:cc=2 rc=2100 op=openTemporaryQueue - MQOPEN(队列管理器:QUEUEK,临时队列模型:SYSTEM.DEFAULT.MODEL.QUEUE,动态队列前缀:REPLY.,打开选项:8196)
  • @Taspeotis 。以上是日志文件中显示的错误信息。

标签: ant websphere ibm-mq websphere-mq-fte


【解决方案1】:

错误的助记符是MQRC=2100 MQRC_OBJECT_ALREADY_EXISTS,这意味着当模型队列打开时,解析的名称是已经定义的队列。这里有几种可能性。

第一个问题是,当您尝试打开回复队列时,您连接的是哪个队列管理器?如果您没有连接到名为 QUEUEK 的 QMgr,则打开将解析到发送到 QUEUEK 的传输队列,并且该队列已经存在。

另一种可能性是SYSTEM.DEFULT.MODEL.QUEUE 已设置为DEFTYPE(PERMDYN),在这种情况下,队列可能不会被删除,并且由于可能的临时队列名称数量有限并且命名空间会不断缩小,因此会发生冲突发生了。

另一种可能性,与前两种相比远远落后,是 WMQ 中的一个错误导致两个临时队列的名称发生冲突。

为了弄清楚这一点,有必要知道当此事件发生时您正在连接到哪个 QMgr。此外,DIS Q(SYSTEM.DEFAULT.MODEL.QUEUE 在同一个 QMgr 上。然后,DIS Q(REPLY*) 看看有多少永久动态队列(如果有的话)正在铺设。最后,查看被剪切的 FDC 文件,找出动态队列的名称,看看它是否存在于上一步的输出中。如果在所有这些之后您仍然没有根本原因,那么是时候向 IBM 开具支持票了。

【讨论】:

  • 在通过 Ant 脚本调用 fte 取消任务时出现上述错误。取消任务也失败了。尽管发送了 fte 取消请求,但 ftecopy 任务复制了所有文件。
  • @Rob 您能否提供一些链接以了解有关 mq 架构的更多信息....
  • 完成。请参阅对您先前问题的回复。我推迟回答这个问题,因为所有链接都指向 IBM 文档,除了指向我自己的网站和文章的链接。希望其他人能提供其他链接或信息。
猜你喜欢
  • 1970-01-01
  • 2011-10-10
  • 1970-01-01
  • 2015-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多