none
The version of component "****" (11773) is not compatible with this version of the DataFlow.

    Question

  •  

    I started this thread as the last attempt to sort the issue out.

     

    I have an SSIS package that loads data from a .csv file into my database. It works fine on my developer machine. I start it programmatically or from Management Studio or from Visual Studio, and it works. Then I deploy it to the MSDB database on the computer on which it will have its final place. There again I can start it from Management Studio or from Visual Studio (using the source file), and it works. But when I start it programmatically, it just fails telling me:

     

    Package Warnings:
        Package Errors:
            The version of component "****" (11773) is not compatible with this version of the DataFlow.

            Component "component "Derived Column" (13627)" could not be created and returned error code 0x80070005. Make sure that the component is registered correctly.

            The component is missing, not registered, not upgradeable, or missing required interfaces. The contact information for this component is "Flat File Source;Microsoft Corporation;Microsoft SqlServer v9; (C) 2005 Microsoft Corporation; All Rights Reserved; http://www.microsoft.com/sql/support;1".

            component "Agreement File" (11773) failed validation and returned error code 0xC0048021.

            One or more component failed validation.

            There were errors during task validation.

    Maybe the source of the problem is that this machine is a 64-bit one, while the developer machine is 32-bit one. But why does the package run fine when I start it from Management Studio?

     

    Any help would be appreciated.

     

    FMikee

    Wednesday, December 12, 2007 2:58 PM

Answers

  • Visual Studio is 32-bit only, and your package should not mind which host it is run under. There are however certain dependencies that are not available in 64-bit, so for example JET is not available. Some notes - http://wiki.sqlis.com/default.aspx/SQLISWiki/x64.html

     

    The way I see it, you are either using a component that is not 64-bit compatible, or the 64-bit installation is missing or broken.

    Thursday, December 13, 2007 12:37 PM
    Moderator

All replies

  • When you run through management studio, you are executing the package on your machine, not the server.

    Also, you say you are executing this package programmatically.  How are you doing that?
    Wednesday, December 12, 2007 3:12 PM
    Moderator
  • I already met similiar problem, when i have versioned custom pipeline component. Everything was solved by creating GAC policy for versions of my component. It is only wild guess, but try compre versions of components in GAC, disk and with versions of component in BIDS

     

    Erik

     

    Wednesday, December 12, 2007 3:13 PM
  • "When you run through management studio, you are executing the package on your machine, not the server."

    I connect to the server machine using remote desktop connection, start management studio there and run the package. This way it works.

     

    "Also, you say you are executing this package programmatically.  How are you doing that?"

     

    From the Microsoft.SqlServer.Dts.Runtime namespace I use Application and Package classes. Application loads the Package using LoadFromSqlServer method. And then I run the Package using Execute method.

    Wednesday, December 12, 2007 3:20 PM
  • Sure seems something is out of sync.

    What service pack level (if any) for SQL Server 2005 do you have installed?
    Wednesday, December 12, 2007 3:27 PM
    Moderator
  •  

    I do not really understand what you are saying, maybe because I am new to SSIS.

     

    This component, it complains about is just a simple Flat File DataSource in the dataflow.

     

    Should it appear in GAC?

     

    Maybe this should help: There are two dll's in the GAC named Microsoft.SqlServer.DTSRuntimeWrap.dll. One for x86 and another for AMD64.

     

    I do not really know how the x86 version got there.

    Wednesday, December 12, 2007 3:37 PM
  • I have SP2 on both machines.

     

    Wednesday, December 12, 2007 3:41 PM
  •  FMikee wrote:
    I have SP2 on both machines.

     

     

    What editions (Enterprise, Standard, Workgroup, Express) are installed on each machine?

     

    Wednesday, December 12, 2007 4:47 PM
    Moderator
  •  FMikee wrote:

     

    I do not really understand what you are saying, maybe because I am new to SSIS.

     

    This component, it complains about is just a simple Flat File DataSource in the dataflow.

     

    Should it appear in GAC?

     

    Maybe this should help: There are two dll's in the GAC named Microsoft.SqlServer.DTSRuntimeWrap.dll. One for x86 and another for AMD64.

     

    I do not really know how the x86 version got there.

     

    The poster was referring to custom developed components for the pipeline, I believe. It may not apply in your case.

     

    Can you run the package from a command prompt using DTEXEC on the server?

    Thursday, December 13, 2007 3:01 AM
    Moderator
  • Could you check both 32-bit and 64-bit versions of the product are installed? If you think they are, try running the package using both 32-bit and 64-bit version of  dtexec tool.

     

    Thanks,

    Bob

    Thursday, December 13, 2007 7:23 AM
    Owner
  •  Bob Bojanic - MSFT wrote:

    Could you check both 32-bit and 64-bit versions of the product are installed? If you think they are, try running the package using both 32-bit and 64-bit version of  dtexec tool.

     

    Thanks,

    Bob

     

    This was really helpful. Thank you, Bob.

     

    Using the 64-bit dtexec the package throws the error, but using the 32-bit one it just runs fine. And I found the answer why it runs from VS and SSMS:

     

    "Executing packages through SQL Server Management Studio (SSMS) on x64 or I64 machines will use a 32-bit execution host. So executing packages from within the object explorer may not be ideal. "

     

     

    Now, the only question that hangs around is: How to develop a package that runs fine with 64-bit dtexec? Is there a 64-bit VS? Do I have to develop packages on the kind of machine they will be used on? Or should I search for some setting among the solution's properties to build for 64-bit machine?

    Thursday, December 13, 2007 11:56 AM
  • Visual Studio is 32-bit only, and your package should not mind which host it is run under. There are however certain dependencies that are not available in 64-bit, so for example JET is not available. Some notes - http://wiki.sqlis.com/default.aspx/SQLISWiki/x64.html

     

    The way I see it, you are either using a component that is not 64-bit compatible, or the 64-bit installation is missing or broken.

    Thursday, December 13, 2007 12:37 PM
    Moderator
  •  

    Thank you all for the replies.

     

    After much trying to make my package work on a 64-bit machine I decided not to use Integration Services in my project. At the end it seems to me, that the 64-bit version cannot read data from a flat file data source, I don't know why (maybe JET would be responsible for that?). This doesn't seem to me a complicated thing. The time I spent developing and debugging my package is way too much to worth it. A simple BULK INSERT just does everything I need, and it isn't throwing confusing error messages all the time.

     

     

    Monday, December 17, 2007 9:30 AM
  • How do you check if you have both 32 and 64 bit versions installed?

    I'm having a similar problems, except the problem only happens when one of two SQL Cluster nodes is the active node. As far as I know both nodes have everything 64 bit installed. The SSIS package isn't even running from either node as the SSIS server is a third non-clustered server. 

    I've checked that both nodes have SQL SP2 installed and have security set identically.

    One possibly related issue I'm having on the second node is that it does not know what to do with SSIS deployment manifest files.

    Thanks.
    Friday, October 9, 2009 7:53 PM
  • Hi,

    I have encountered the same problem and found http://support.microsoft.com/kb/934653 described exactly the solution needed to solve this issue.

    Good luck!

     

    Friday, June 25, 2010 8:53 AM
  • Both version can be found under different locations here:-

     

    32 bit: C:\Program Files (x86)\Microsoft SQL Server\90\DTS\Binn\DTExec.exe

    64 bit: C:\Program Files\Microsoft SQL Server\90\DTS\Binn\DTExec.exe

    Friday, June 25, 2010 8:54 AM