SSIS Overflowed Disk I/O Buffer

This morning I had a wake up call from a colleague saying that there had been a problem with one of the processes and could I take a look at it. So out comes the laptop, on goes the router, hunt around for my code fob and off we go (even though I’m not on call, someone owes me a pint). The reason I am blogging about this particular error is that it is one I had not come across before this morning, so thought it might help out other’s if they came across the same thing.

Below is an edited extract of the step of the job that failed:

 Date                      07/11/2009 07:20:24

Log                         Job History (An Import)

Step ID                 1

Duration                              00:00:09

Message
 
Started:  07:20:25  Error: 2009-11-07 07:20:32.52     Code: 0xC020209C    
Source: “ImportPackage – name changed.”    
Description: The column data for column “Column0″ overflowed the disk I/O buffer.  End Error 
Error: 2009-11-07 07:20:32.53     Code: 0xC0202092    
Source: “ImportPackage – name changed.”
Description: An error occurred while processing file “3rdPartyFile.txt” on data row 1.  End Error 
Error: 2009-11-07 07:20:32.53     Code: 0xC0047038    
Source: “ImportPackage – name changed.”
Description: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED.  The PrimeOutput method on component “Original File” (1) returned error code 0xC0202092. 
The component returned a failure code when the pipeline engine called PrimeOutput().
The meaning of the failure code is defined by the component… 
The package execution fa…  The step failed.

 The key things to note here are:

  1. The failure occured on row 1
  2. The failure occured on the first column (It wasn’t really called Column0, but the real attribute name would mean little to the casual reader, so I changed it).
  3. The error states an overflow on the disk I/O buffer.

So what does all this mean?
In this instance these three clues meant I didn’t have to google for the error codes. All the data from the file had been attempted to be inserted into the first attribute of the first row!
Having looked at the input file my suspicions were proved correct the attribute delimiter had been changed. SSIS continued to put as much data in the destintation as possible as it never received the information it needed to move on to the next attribute.

I hope this helps someone out!

You must be logged in to post a comment.