我正在制作一个并行触发几个REST POST调用,然后更新数据库中表的管道。将通过ULTRA任务使用它。我正在使用脚本进行某些转换和映射,而这些脚本和转换不能使用传统捕捉,因为它们大多数都不兼容ULTRA(例如,tail和group by字段)。
我知道我需要维护血统信息,这样的管道才能通过ULTRA任务工作。请参阅以下文档。
每当我将结果写入输出时,我都会使用以下内容。
this.output.write(doc, wrapper);
但是在文档中没有提到在发生错误时维护血统信息的问题。我在catch块中有一个类似的包装,如下所示。
error
我从此脚本中收到以下错误。
this.error.write(wrapper);
以下是相关的代码。
Document created by 'Pre-DB Script[08755fd3-46b0-4f3a-b353-4a0685b649c4 -- 2b2bfab7-18f7-49ab-9a98-41bf0bc694eb]' does not contain lineage information and cannot be used as output from an Ultra pipeline
Resolution:
Use a Join snap to merge static documents into an Ultra input document or request that the snap be made Ultra-compatible
Reason:
The document was not created from an Ultra input document or was created by a Snap that is not Ultra-compatible
那么,在文档被路由到错误路径的情况下,如何解决沿袭信息问题?
答案 0 :(得分:0)
事实证明,您可以在error
中传递与output
类似的沿袭信息。
this.error.write(doc, wrapper);