繁体   English   中英

SSIS条件性分裂谱系误差

[英]SSIS Conditional Split Lineage Error

我正在尝试通过SSIS包和3个节点运行Excel表,它有一个条件拆分。 我正在使用之前已知的工作电子表格,其中添加了一些数据。

我具体得到的错误是:

条件Split.Inputs [拆分输入] .Columns [ColumnName]具有先前未使用的谱系ID 147。

我试过几个电子表格但没有用。 我最初得到的是ID 105。

我的具体问题是:ID对应的是什么? 我在哪里尝试对它们进行故障排除?

一些额外的日志。

输出:

数据流任务1 [SSIS.Pipeline]出错:条件Split.Inputs [条件拆分输入] .Columns [ColumnName]具有以前未在数据流任务中使用的沿袭ID 147。

数据流任务1 [SSIS.Pipeline]出错:“条件性拆分”验证失败并返回验证状态“VS_NEEDSNEWMETADATA”。

数据流任务1 [SSIS.Pipeline]出错:一个或多个组件验证失败。

数据流错误任务1:任务验证期间出错。

右键单击条件分割 - >高级编辑器 - >输入和输出属性 - >花费这些列,您将看到每列都有一个LineageID。

“Lineage ID是数据流任务中使用的组件或转换的属性。它包含一个整数值,用作缓冲区指针。数据流任务中的每一列都将被分配一个谱系ID。” 请阅读此Microsoft TechNet文章中的lineage ID

LINEAGE ID错误意味着更改了源元数据,只需双击条件拆分重新验证源(连接和组件)并关闭它,然后检查列元数据(使用高级编辑器)。 (注意,当双击包含错误的组件时,它会提示修复它)

或者您可以尝试删除条件拆分并再次添加(如果以前的解决方案不起作用)

我相信SSIS会为连接组件的每个管道中的每个列分配唯一标识符(沿袭ID)。 当组件期望x的沿袭ID时,SSIS会感到困惑,但在输入管道中找不到它。

通常,您尝试查找有问题的管道(在BIDS / SSDT中,使用@ Wendy的方法)。 双击管道或连接的组件有时会生成一个对话框,提供解决问题的选项。 如果没有,那么移除和重新创建管道是最好的机会。

当您在其上游更改内容时,可能会对下游组件产生负面影响。 通常,进行中游修改时唯一的办法是重建整个下游。 SSIS在这方面有点脆弱。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM