SSIS package creating Hresult: 0x80004005 Descript

2019-04-18 11:44发布

问题:

I have an SSIS package that is being executed by an SQL Job which runs twice a day. I recently updated the SSIS package by removing a where clause of a Select statement in it. Now the results have around 1800 rows compared tot he 650 of before. When I execute the new package on my local machine everything runs fine. But when I put it on the Prod server, it does not run and gives me Hresult: 0x80004005 Description: "Login timeout expired" error.

This error is usually thrown when remote access is not enabled but it is. The Job is running under my account, so the rights should not be a problem. Also, the package was running without problems before and I only changed a where clause that makes the Table larger by a thousand rows, so I should not have a login timeout error for that.

I know it is not the remaining space on the server because if I change the config file of the SSIS package and direct it the the production database, everything works fine.

Again, that problem is bugging me because when I put the old package with the old where clause, everything works fine.

Anyone has any idea what might be causing the problem?

Here is the Log entry:

Executed as user: Services. ...sion 9.00.3042.00 for 32-bit Copyright (C) Microsoft Corp 1984-2005. All rights reserved. Started: 1:49:21 PM Error: 2011-08-04 13:50:12.28 Code: 0xC0202009 Source: Brd Load Connection manager "DataBase" Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005. An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "Login timeout expired". An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections.". An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "TCP Provider: A connection att... Process Exit Code 1. The step failed.

回答1:

I finally found the problem. The error was not the good one.

Apparently, Ole DB source have a bug that might make it crash and throw that error. I replaced the OLE DB destination with a OLE DB Command with the insert statement in it and it fixed it.

The link the got me there: http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/fab0e3bf-4adf-4f17-b9f6-7b7f9db6523c/

Strange Bug, Hope it will help other people.



回答2:

The answer here is not clear, so I wanted to add more detail.

Using the link provided above, I performed the following step.

In my XML config manager I changed the "Provider" to SQLOLEDB.1 rather than SQLNCLI.1. This got me past this error.

This information is available at the link the OP posted in the Answer.

The link the got me there: http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/fab0e3bf-4adf-4f17-b9f6-7b7f9db6523c/



回答3:

I had a similar error..This might be due to two reasons. a)If you have used variables,Re-eavluevate the expressions in which variables are used and make sure the exoression is evaluevated without errors. b) If you are deleting the excel sheet and creating excel sheet on th e fly in your package.