Removing this unused output column

Discussion of issues, suggestions and bugs of Devart SSIS Data Flow Components, our product line for building SSIS-based ETL solutions, performing data access to popular cloud applications and databases.
Post Reply
gootchick
Posts: 6
Joined: Thu 22 Apr 2010 12:18

Removing this unused output column

Post by gootchick » Mon 03 May 2021 10:10

I'm using the Devart Mysql Destination component. From time to time this component automatically fills output columns property. Manually is possible to remove this property from Output\External Columns, but removing the property from Output\Output columns ends with error message:

Pipeline component has returned HRESULT error code 0xC020800F from a method call.

I try to remove these output properties because of the generation warning message in the SSIS log:

The output column "CF" (27) on output "Output" (26) and component "Devart MySql Destination" (2) is not subsequently used in the Data Flow task. Removing this unused output column can increase Data Flow task performance.

... and all warnings are sent to my email for the fix. So please fix this behavior or at least write me, how can I fix it manually...

Thanx
Jan

Shalex
Site Admin
Posts: 9543
Joined: Thu 14 Aug 2008 12:44

Re: Removing this unused output column

Post by Shalex » Mon 03 May 2021 12:42

Please refer to:
* viewtopic.php?f=60&t=38286
* viewtopic.php?f=60&t=41316

Output columns in Devart MySql Destination are the same as the ones in Devart PostgreSql Destination.

gootchick
Posts: 6
Joined: Thu 22 Apr 2010 12:18

Re: Removing this unused output column

Post by gootchick » Mon 03 May 2021 14:34

Thanks for the reply...

I understand that the behavior is the same as in the PostgreSQL component. But when I have no connection from the Destination component to the next component in the flow, I suppose that I will not receive any similar warning message.

I have quite a lot of tasks build in SSIS and I try to have zero number of warnings. This component generates me full log of these warnings and I can lose another important message.

DmitryGm
Devart Team
Posts: 152
Joined: Fri 11 Dec 2020 10:27

Re: Removing this unused output column

Post by DmitryGm » Wed 05 May 2021 12:35

gootchick wrote: Mon 03 May 2021 10:10 The output column "CF" (27) on output "Output" (26) and component "Devart MySql Destination" (2) is not subsequently used in the Data Flow task. Removing this unused output column can increase Data Flow task performance.
The warning message is produced because some of the Source columns aren't used in the Destination. At the same time, the list of Output Columns in the Source component must match the columns produced by Source Query. We shouldn't and can't remove columns from there.

"Removing this unused output column can increase Data Flow task performance" message means that it is better to edit the Source SQL query in order to include only the columns that will be used after. For this, you can list only necessary fields in the SELECT statement instead of *.

gootchick
Posts: 6
Joined: Thu 22 Apr 2010 12:18

Re: Removing this unused output column

Post by gootchick » Wed 05 May 2021 21:18

Yes, that is true ... for the SOURCE component. But the problem is with the DESTINATION component.

In my case, Dataflow has two components OLE DB Source and Devart MySQL Destination. All fields from the Source output are mapped to destination fields, there is not any unused field. And Destination component is the last component in the flow. Even this fact, the destination component has then output column and this column generate this warning. When I used the integrated OLE DB Destination component (slow, I rather use your Devart component), there is no output column.
In the rare case can be useful to have an output column even on the destination component (eg. chain) but ordinary is the destination final component.
My Source components are optimized for reading only fields, which are necessary for data transfer. I transfer gigabytes and I need high speed. Second important thing is to have validated data, so I regularly (mostly by script) check event logs for problems. That's the reason I need to have logs without warnings.

gootchick
Posts: 6
Joined: Thu 22 Apr 2010 12:18

Re: Removing this unused output column

Post by gootchick » Wed 05 May 2021 21:32

This is an integrated component OLE DB Destination. There is no any Output section:

Image


... and here is the Devart MySQL Destination. There is an Output section (and cannot be manually deleted and because is last in the flow, the system generates the warning).:

Image

DmitryGm
Devart Team
Posts: 152
Joined: Fri 11 Dec 2020 10:27

Re: Removing this unused output column

Post by DmitryGm » Thu 06 May 2021 15:24

This Output Column is a reserved column for the Destination ids. It is added by the design of the Devart Destination components, and currently we don't plan to change it.

"Removing this unused output column can increase Data Flow task performance" is a standard SSIS message. In this case (with Destination ids) it doesn't affect performance.

Post Reply