2242 (08C2) (RC2242): MQRC_INCOMPLETE_MSG

说明

尝试使用逻辑消息不完整的队列句柄,在队列上操作。 在下列情况下,可能会出现此原因码:
  • 在 MQPUT 调用上,应用程序指定 MQPMO_LOGICAL_ORDER 并尝试放置不是分段的消息或者放置其 MQMF_LAST_MSG_IN_GROUP 标记的设置与上一条消息不同的消息时。 在此情况下,完成代码是 MQCC_FAILED。
  • 在 MQPUT 调用中,应用程序没有指定 MQPMO_LOGICAL_ORDER,但是队列句柄的先前 MQPUT 调用指定 MQPMO_LOGICAL_ORDER 时。 在此情况下,完成代码是 MQCC_WARNING。
  • 在 MQGET 调用中,应用程序没有指定 MQGMO_LOGICAL_ORDER,但是队列句柄的先前 MQGET 调用指定 MQGMO_LOGICAL_ORDER 时。 在此情况下,完成代码是 MQCC_WARNING。
  • 在 MQCLOSE 调用中,应用程序尝试关闭逻辑消息不完整的队列时。 在此情况下,完成代码是 MQCC_WARNING。

完成代码

MQCC_WARNING 或 MQCC_FAILED

程序员响应

如果此原因码是预期的,那么无需任何纠正操作。 否则,确保最后一个分段的 MQPUT 调用指定 MQMF_LAST_SEGMENT。