dba72


It is clear to me that in order to be able to use certain SSIS components (for example the Excel jet provider) I must launch my packages using the 32bit DTEXEC located at Program Files (x86)\Microsoft SQL Server\90\DTS\Binn. However, when I do this it seems that there are other components of the package that no longer work as expected.

To test this I have created a simple package with two tasks (Run64BitRuntime is set to False):

1. Data flow task importing data from Excel

2. Execute SQL Task which does a simple select (select 1) from a Native OLE DB SQL data source (same SQL Server on which packages are stored). This task contains no input or output parameter.

When I try to execute the package using the 64bit DTEXEC, task 1 fails with the following error (as expected):

Code: 0xC0202009
Source: connection1 Connection manager "SourceConnectionExcel"
Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040154.
An OLE DB record is available. Source: "Microsoft OLE DB Service Components" Hresult: 0x80040154 Description: "Class not registered".

When I execute the package with the 32bit DTEXEC, task 2 fails with the following error

Code: 0xC002F210
Source: Execute SQL Task Execute SQL Task
Description: Executing the query "" failed with the following error: "Attempted to read or write protected memory. This is often an indication that other memory is corrupt.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.

Now here is the confusing part: When I change task 2 to use the .Net provider instead of the OLE DB the package works fine. According to the MS documentation, both of these providers are supported on 32 and 64 bit so am I missing something One more thing to note: before I was able to use the 32 bit DTEXEC I had to re-register it as described in this KB article: http://support.microsoft.com/kb/919224





Re: Cloud of Confusion: Running SSIS packages on 64 Bit SQL Server

Rafael Salas


You may have a problem with your installation. Connecting to SQL Server via OLE DB should work fine in either 32 or 64 bit.

For Excel, you right, it only works in 32 bit mode as there is not 64 bit driver available.






Re: Cloud of Confusion: Running SSIS packages on 64 Bit SQL Server

Haijie

I got exactly the same error message when running an SSIS "Execute SQL Task" on a 64bit server.

The package is created on a 32bit PC, and it can run without problem.

But it fails once it gets deployed to a 64bit server.






Re: Cloud of Confusion: Running SSIS packages on 64 Bit SQL Server

jwelch

What type of data source is the Execute SQL Task pointed at






Re: Cloud of Confusion: Running SSIS packages on 64 Bit SQL Server

dba72

The problem disapeared after I upgraded to build 3175 (update 2 for SP2).