4

I'm trying to run an Excel table through an SSIS Package and 3 nodes in, it has a Conditional Split. I'm using a previously known working spreadsheet with some data added to it.

The error I'm getting specifically is:

Conditional Split.Inputs[Split Input].Columns[ColumnName] has lineage ID 147 that was not previously used.

I've tried a couple spreadsheets with no avail. I was getting ID 105 initially.

My specific questions are: What do the IDs correspond to? Where do I look to try troubleshooting them?

Some additional logs.

Output:

Error at Data Flow Task 1 [SSIS.Pipeline]: Conditional Split.Inputs[Conditional Split Input].Columns[ColumnName] has lineage ID 147 that was not previously used in the Data Flow task.

Error at Data Flow Task 1 [SSIS.Pipeline]: "Conditional Split" failed validation and returned validation status "VS_NEEDSNEWMETADATA".

Error at Data Flow Task 1 [SSIS.Pipeline]: One or more component failed validation.

Error at Data Flow Task 1: There were errors during task validation.

Hadi
  • 36,233
  • 13
  • 65
  • 124
Tyler C
  • 573
  • 5
  • 17

3 Answers3

4

"Lineage ID is a property of the component or transformation used in the data flow task. It contains an integer value that will work as buffer pointer. Each column in the data flow task will be assigned a lineage ID." Read about lineage ID in this Microsoft TechNet article

LINEAGE ID Error implies that a Source metadata was changed, just re-validate source (connection and component) by double click on the the Conditional split and close it , then check the columns metadata (using the advanced editor). (Note that when double-clicking on a component that contains errors it will prompt to fix it)

Or you can try removing Conditional Split and adding it again (if previous solution doesn't works)

Hadi
  • 36,233
  • 13
  • 65
  • 124
  • In my case, it does not seem interested in offering me that. I've gone into the edit tab as well as changed the source entirely with no luck. – Tyler C Apr 27 '17 at 20:19
  • 1
    @TylerC can you show us a snapshot of the `dataflow task` + the `Error Output Tab` in the visual studio (you may find some helpful warnings) – Hadi Apr 27 '17 at 20:20
  • 1
    @TylerC try removing conditional split then adding it again – Hadi Apr 27 '17 at 20:39
  • 1
    @TylerC i was asking for the error list. Go to `View` -> `Error List` – Hadi Apr 27 '17 at 20:41
  • Ah, I didn't include it cause it was empty. Which is the more confusing part – Tyler C Apr 27 '17 at 20:44
  • @TylerC you don't have any warning inside it (on the top of error list it is noticed that you have 0 warnings?) – Hadi Apr 27 '17 at 20:47
  • 0 Errors, 0 Warnings, 0 Messages. I'm at a loss. – Tyler C Apr 27 '17 at 20:47
  • try removing conditional split then adding it again – Hadi Apr 27 '17 at 20:48
  • Ah, that gave me some errors to work off. Not sure if its the same errors since I didn't set this up initially, but it gives me something to go off of. I'll post back if I make headway or a major change – Tyler C Apr 27 '17 at 20:51
2

Right click Conditional Split -> Advanced Editor -> Input and Output Properties -> expend those columns, you will see each column has a LineageID.

Wendy
  • 640
  • 1
  • 4
  • 8
  • This helped get me in the right direction. Am I wrong to assume that every node has Lineage IDs? I saw they were also present in the Excel connection node. – Tyler C Apr 27 '17 at 20:21
2

I believe SSIS assigns unique identifiers (lineage IDs) to each column in each pipe connecting your components. SSIS gets confused when a component is expecting a lineage ID of x, but can't find it in the input pipe.

Generally, you try to find the offending pipe (in BIDS/SSDT, using @Wendy's method). Double-clicking the pipe or connected components will sometimes produce a dialog box offering the option to fix the issue. If not, then removing and recreating the pipe is your best chance.

Downstream components can be adversely affected when you change things upstream of them. Often, the only recourse when doing midstream modifications is to rebuild the entire downstream. SSIS is a bit brittle in this area.

Marc Bernier
  • 2,928
  • 27
  • 45