本主题包含解决部署消息流时产生的一些常见问题的建议:
如果您不是 UDN 的作者,则删除这些文件。作者或者供应商应该以 Eclipse 功能或插件的形式提供 V6.0 UDN。此插件应该包含图标、翻译、调色板定义、弹出信息、帮助等等。
请参阅编辑器首选项和本地化设置,获取更多信息。
/flow2/schema1/SAMPLE.conxmi 无法装入。报告了下列错误:schema1/SAMPLE.conxmi
此练习是有益的,因为传递的引用支持 ESQL 的内容辅助和验证。消息类型内容属性开放或开放定义未在验证中使用,且假设此属性是关闭。
有一个 ESQL 编辑器首选项,允许您选择忽略消息引用的不匹配,或者将它们作为警告或错误进行报告。缺省情况下,这种类型问题报告为警告,因此您仍可以部署消息流。
此错误导致消息导向到 failure 终端。
BIP2211: (包含属性值 [attribute value] 的无效配置消息, 该属性值对于目标属性 [target attribute name] 和对象 [object name] 无效;有效值为 [valid values])
您可能已经将 MQInput 节点 failure 终端连接到连续的节点而不是 out 终端。out 终端是这三个终端的中间一个。导向到未连接的 out 终端的消息被废弃。
如果 MQInput 节点的 failure 终端已经进行了连接(例如,连接到 MQOutput 节点),则不会出现这些消息。
将节点连接到任何节点的 failure 终端表明您设计的消息流处理所有错误处理。如果您将 failure 终端连接到 MQOutput 节点,则您的消息流会忽略发生的任何错误。
此操作仅从消息访问的节点产生用户跟踪条目。
在分布式系统上,您可以使用 mqsireadlog 命令检索跟踪条目,使用 mqsiformatlog 命令格式化它们,并查看格式化的记录以检查通过消息流的消息的路径。
对于 z/OS,编辑和提交 COMPONENTPDS 中的 BIPJLOG 作业,以执行 mqsireadlog 和 mqsiformatlog 命令来处理跟踪。
将您的消息再次发送到消息流。调试级别跟踪产生有关消息的路由的更多详细信息,然后您可以确定消息流采取的操作的原因。
解决问题后不要忘记关闭跟踪,否则可能会对性能产生不利影响。
一般情况下:
如果消息具有没有故障的路径,但是它们在输出队列(或其他持久存储)中没有结束,则消息流没有失败,并且消息不会回退或者放到另一个目标(例如,catch 终端、死信队列或队列的回退队列)。
SQL0954C 应用程序内存段中没有足够可用的存储量来处理 语句。
在 z/OS 上,可能返回 HY014 的 SQLSTATE 并带有 SQL 代码 -99999,它表明 DataFlowEngine 进程已达到 DB2 z/OS 进程限制 254 准备的 SQL 语句句柄。
出于性能原因,语句准备好之后,语句和句柄保存在高速缓存中以减少对 SQLPrepare 函数的调用次数。如果语句已经在高速缓存中,则返回语句句柄,以便能使用新绑定的参数重新执行它。
语句字符串用于执行高速缓存查询查找。使用每条消息稍有不同的硬编码 SQL 字符串,未在高速缓存中找到此语句,且总是执行 SQLPrepare 函数(并打开新的 ODBC 光标)。使用 PASSTHRU 语句时,请使用参数标记,这样相同的 SQL 准备语句可用于每个处理的消息,且参数在运行时绑定。对于数据库资源,这种方法更有效,对于重复执行的语句,它更快。
但是,不总是有可能使用参数标记,或者您可能想要在运行时动态地构建 SQL 语句字符串。这潜在地导致许多唯一的 SQL 语句被高速缓存。catch 本身不会变大,因为这些语句本身通常不大,但许多小的内存分配可能会导致内存被分解成片段。
一些示例过程帮助您设置填充 LocalEnvironment 树中的 Destination中提供的目标列表。您可以使用这些未更改的过程或者根据您自己的需求进行修改。
如果问题继续存在,清空 wsplugin6.conf,重新启动代理并重新部署消息流。
db2set DB2_RR_TO_RS=YES
重新启动 DB2 数据库管理器,使更改生效。
Video_Test#FCMComposite_1_1 ComIbmMQInputNode , Video_Test.VIDEO_XML_IN
JITC_COMPILEOPT=SKIP{org/eclipse/ui/views/tasklist/TaskListContentProvider} {resourceChanged}