SSIS Package Inoperable After Upgrade of Visual Studio - sql-server

I am having an issue with one of my SSIS projects. I developed this package over a year ago and it has run flawlessly until I upgraded Visual Studio. The original project was in VS Shell 2010. My new version is VS 2017 Pro.
The setup is pretty basic. I am pulling data from a database file (.db) using an ADO.NET source via SQLite3 ODBC driver. It pulls each table and inserts the data into a MS SQL Server table. The Target Server Version is set to SQL Server 2012. It is encrypted with password. When I say I have tried to execute the package, I'm talking within VS.
Here is the issue:
Upon executing, the package will execute the SQL statements that start the processes, when I get to the first data flow that has a pull from the database, a command window flashed briefly and closes. The package completes in error:
[Assignments [290]] Error: The Assignments was unable to process the data. Object reference not set to an instance of an object.
[Resources [801]] Error: The Resources was unable to process the data. Object reference not set to an instance of an object.
[Entries [657]] Error: The Entries was unable to process the data. Object reference not set to an instance of an object.
[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on Resources returned error code 0xC02090F5. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on Entries returned error code 0xC02090F5. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on Assignments returned error code 0xC02090F5. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
[Projects [711]] Error: The error "Column data type 66203200 is not supported by the PipelineBuffer class." occurred while processing "Projects.Outputs[ADO NET Source Output].Columns[project_id]".
[Projects [711]] Error: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "Projects" failed because error code 0x80131600 occurred, and the error row disposition on "Projects.Outputs[ADO NET Source Output].Columns[project_id]" specifies failure on error. An error occurred on the specified object of the specified component. There may be error messages posted before this with more information about the failure.
[Projects [711]] Error: The Projects was unable to process the data. Pipeline component has returned HRESULT error code 0xC0209029 from a method call.
[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on Projects returned error code 0xC02090F5. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
The odd things is, only some of the data sources in the Data Flow are having issues (3/6).
Here is a list of what I have changed/tired:
- I rebuilt the entire solution using VS 2017 (this worked for ~1 week)
- I tested the ODBC driver(s) (32/64). Both successful.
- I upgraded the project when opening for the first time.
- I recreated the source connection.
- I deleted and recreated the data flow.
- I deleted and recreated each data source. (Preview of data is successful)
- I updated VS to most current patching.
Nothing has worked! Any input would help.

Related

SSIS Error Code DTS_E_OLEDBERROR 0x80004005

I am running an SSIS package that uses OLEDB connections to fetch data from and Oracle 10.2.0.5.0 database and insert it into an SQLServer 2012 (11.0.6260)
I get the following error.
Time: 2021-02-05 01:13:55 AM
Task: Data Flow Task
Error Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.
followed by
Time: 2021-02-05 01:13:55 AM
Task: Data Flow Task
Error Description: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on OLE DB Source returned error code 0xC0202009. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
There are no keys or constraints on the destination table.
Both of the dataflow tasks have CommandTimeout set to 0.
All of the other packages with the same source and destination databases run without any problem.
Edit 2
This particular package runs fine on our test/development environment.
I have sinced run the package several times and noticed that the source query returns about 4500 records but only about 500 are inserted into the destination database.
End Edit 2
Is there anything else that I can check for?
Edit 1
The Error message is as it appears in service manager.
The log files just before the error are below.
The source Query is quite along running query. It takes approximately 9 minutes.
End Edit 1
Logging into the oracle database directly with the user that is used for our integrations and running the query gave the following error.
After increasing the size of the user profile the query returned data and the integrations ran correctly.

Getting SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. Error code 0x80004005 on Sybase DB to File Extraction

I am getting data from Sybase DB (using ODBC Connection) to load into the file using MS-SSIS but in the data flow task while getting from the source its giving the following errors.
:Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The
PrimeOutput method on returned error code 0x80004005.
The component returned a failure code when the pipeline engine called
PrimeOutput(). The meaning of the failure code is defined by the
component, but the error is fatal and the pipeline stopped executing.
There may be error messages posted before this with more information
about the failure.
I have tried with setting MaxConCurrentExecutions=1 as suggested on some web pages as well.
Using the same connection/same DB is working fine for some instances of Table extraction.
The same extraction works totally fine while running on the Debug mode using MS-Visual Studio SSDT.
This error is only showing up while running through MS-SQL Server Job Agent
I need help to solve this issue. Any help would be appreciated.

SSIS dataflow cannot aquire connection even though it did earlier in the control flow

I have a package that connects to two different DBs, does some calculations, and then inserts values into each DB. The package worked great in our old env, but migrating it over to the new one has proven pretty unpleasant. We had to switch from Windows Auth to SQL Auth and the Connection Manager test works fine, but I'm getting the following error when attempting to execute my SSIS package from Visual Studio:
SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.
The AcquireConnection method call to the connection manager "DB1"
failed with error code 0xC0202009. There may be error messages posted
before this with more information on why the AcquireConnection method
call failed.
[SSIS.Pipeline] Error: OLE DB Source failed the pre-execute phase and returned error code 0xC020801C.
What has me really puzzled is the failing task isn't even the first time that connection is used in the package. Just before reaching that Dataflow task, an Execute SQL Task fires against the same connection and is successful. I can also go into the task itself and hit "Preview" and it returns data.
Does anyone have any ideas where else to look?
I've tried:
setting to 32bit Execution
deleting and recreating the task
delay validation = true

SSIS Failed to retrieve long data for column XXXX

I have an SSIS package (SQL 2017) that is importing data from an Access database to SQL Database.
It errors out with the following error:
[Source - MaintenanceDetails [140]] Error: Failed to retrieve long data for column "JobNotes".
[Source - MaintenanceDetails [140]] Error: There was an error with Source - MaintenanceDetails.Outputs[OLE DB Source Output] on Source - MaintenanceDetails. The column status returned was: "DBSTATUS_UNAVAILABLE".
[Source - MaintenanceDetails [140]] Error: SSIS Error Code DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "Source - MaintenanceDetails.Outputs[OLE DB Source Output]" failed because error code 0xC0209071 occurred, and the error row disposition on "Source - MaintenanceDetails" specifies failure on error. An error occurred on the specified object of the specified component. There may be error messages posted before this with more information about the failure.
[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on Source - MaintenanceDetails returned error code 0xC0209029. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
I've tried the following to resolve this based off other Stackoverflow questions which hasn't fixed the problem:
1) Setting a path for "BLOBTempStoragePath" and "BufferTempStoragePath"
2) Setting AutoAdjustBufferSize to False
3) Creating an Error Output to put failed errors into another tab
4) Setting "TypeGuessRows" to 0 for "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\Microsoft\Office\16.0\Access Connectivity Engine\Engines\Excel"
5) I have tried using the Import/Export Wizard within Management Studio and I get the same error message.
The Connections are using:
Native OLE DB\Microsoft Office 12.0 Access Database Engine OLE DB Provider
Native OLE DB\SQL Server Native Client 11.0
Does anyone have any other suggestions for what I could try to resolve this?
What I ended up doing was as ppijnenburg described. Once I exported the Access table to a comma separated TEXT file, SSIS had no issue dealing with it at all.
I suppose the moral of the story is importing from Access to SQL Server is messy.

SQL job fails to execute package, but VS not

When I run package directly from Visual Studio then it doesn't throw error. When I execute the package via SQL Server Agent Job then it throws error:
Source: Fact_Invoice_Item PWBConsolidation [1] 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 Server Native Client 10.0" Hresult: 0x00040EDA Description:
"Warning: Null value is eliminated by an aggregate or other SET
operation.". End Error Error: 2012-02-14 07:17:49.01 Code:
0xC0047038 Source: Fact_Invoice_Item SSIS.Pipeline
Description: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput
method on component "PWBConsolidation" (1) returned error code
0xC0202009. The component returned a failure code when the pipeline
engine called PrimeOutput(). The meaning of the failure code is
defined by the component, but the error is fatal and the pipeline
stopped executing. There may be error messages posted before this
with more information about the failure. End Error DTExec: The
package execution returned DTSER_FAILURE (1). Started: 7:14:35 AM
Finished: 7:17:50 AM Elapsed: 195.094 seconds. The package
execution failed. NOTE: The step was retried the requested number of
times (3) without succeeding. The step failed.
I have isolated a part that is causing the problem. In Ole Db Source I use query to get the data and when I remove the following line then the package is executed successfully via Sql Server Agent Job:
Checksum = Checksum(S.BrokerID, S.TeamID, II.DatabaseName, II.INVOICE, I.Invoice_Date, P.Expiration_Date, P.Effective_Date,
P.Binder_Effective, I.AGENCY, II.MARKET, P.POLICY, CT.LINE_OF_BUSINESS, II.Coverage_Type, SUB.INSURED,
LOB.Description, CT.Description, I.Date_Due, I.Installment, P.Installments, P.ENDORSES, I.Inv_Tdate, Inv_Acctcur,
INS.INDUSTRY, SUB.SUBMISSION
)
EDIT:
I have just checked and looks like part of data gets through data flow and at some point it just throws error. I have manually set Checksum=2 and still doesn't work
Any idea why is this so?
Thanks a lot,
Ilija
This looks like you are running into a constraint issue on your table that you are inserting into or values you are operating on...like aggregate function(max,sum,avg..) exists on a null value.
Try redirecting error rows to a flat file or something of that nature and see if you still get the error.
Also try set ANSI_WARNINGS OFF in your SQL statement
Enjoy and good luck

Resources