Microsoft.SqlServer.Dts.Pipeline.DoesNotFitBufferException: The value is too large to fit in the column data area of the buffer.

Apr 15, 2011 at 10:42 AM

I get this error regularly and because of that I am missing data from the extract. I think that this is purely down to long pagepaths being pushed to a 255 character string, but then I might be way off and frankly I have no idea where to start.

 

[SSIS GoogleAnalyticsSource] Error: Microsoft.SqlServer.Dts.Pipeline.DoesNotFitBufferException: The value is too large to fit in the column data area of the buffer.
   at Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer.SetString(Int32 columnIndex, String value)
   at Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer.set_Item(Int32 columnIndex, Object value)
   at SSISComponents.GoogleAnalyticsSource.PrimeOutput(Int32 outputs, Int32[] outputIDs, PipelineBuffer[] buffers)

 

Any idea's anyone?

Coordinator
Apr 19, 2011 at 8:20 AM

Can you publish the metrics and dimensions you are using?

Cheers,

Tillmann

Apr 19, 2011 at 8:35 AM

Dimensions

PageTitle

LandingPagePath

Date

 

Metrics

Pageviews

Visits

Visitors.

 

I'm using a for... each loop to run the script for every day between a date range. Nothing else is changed.

Apr 26, 2011 at 7:27 AM

PageTitle and LandingPagePath could be longer than 255 (even longer than 4000). The best way to do this is to 1) make your column larger or 2) trunc your column to 255 chars.

Coordinator
Apr 26, 2011 at 7:35 PM
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.
Apr 27, 2011 at 7:09 AM

When you say make your column larger - I have tried this within the output columns section of the google source adaptor and it complains that I cannot do that. Where and how do I change the column width?

Apr 27, 2011 at 7:49 AM
konjelly wrote:

When you say make your column larger - I have tried this within the output columns section of the google source adaptor and it complains that I cannot do that. Where and how do I change the column width?

At the component in the Advanced Editor (Right click on the component) -> tab Input and Output Properties.

Apr 27, 2011 at 8:41 AM

I cannot change it that way. when I try to change from 255 to say, 256 (or indeed any other number), I get a dialogue box that says Property Value is not Valid with the following message.

 

Error at Fetch GA Data [Google Analytics Source [1]]: The component "Google Analytics Source" (1) does not allow setting output column datatype properties.

Error at Fetch GA Data [Google Analytics Source [1]]: System.Runtime.InteropServices.COMException (0xC020401A): Exception from HRESULT: 0xC020401A
   at Microsoft.SqlServer.Dts.Pipeline.Wrapper.IDTSManagedComponentWrapper100.WrapperSetOutputColumnDataTypeProperties(Int32 lOutputID, Int32 lOutputColumnID, DataType eDataType, Int32 lLength, Int32 lPrecision, Int32 lScale, Int32 lCodePage)
   at Microsoft.SqlServer.Dts.Pipeline.PipelineComponent.SetOutputColumnDataTypeProperties(Int32 iOutputID, Int32 iOutputColumnID, DataType eDataType, Int32 iLength, Int32 iPrecision, Int32 iScale, Int32 iCodePage)
   at Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostSetOutputColumnDataTypeProperties(IDTSManagedComponentWrapper100 wrapper, Int32 iOutputID, Int32 iOutputColumnID, DataType eDataType, Int32 iLength, Int32 iPrecision, Int32 iScale, Int32 iCodePage)

Coordinator
Apr 27, 2011 at 8:47 AM

Please use the latest version 1.0.0.1.
I have changed the column length for all Path-Dimensions to 4000 chars.
Values longer than 4000 chars are truncated now.

Marked as answer by Tillmann on 2/15/2014 at 9:02 AM
May 6, 2011 at 7:59 AM

I have a problem with the new version.

When I go to setup the new adapter, I put the username/pass in, select a dimension, and a metric, and press ok. I get a dialogue box say "there are configuration errors, fix now?" press ok and your returned to the googleanalytics diolgogue. Press cancel and your pushed out of the dialogue but it hasn't saved your settings.

Am I missing something obvious?

May 12, 2011 at 10:57 AM

I was missing something obvious - turns out you need to test and preview before committing changes to the dialogue box.


However, the new MSI appears to be missing a dll file that is in the original MSI. As a result, I am recieving a number of errors on package execution....

[SSIS.Pipeline] Error: The component metadata for "component "GoogleAnalyticsSource" (44)" could not be upgraded to the newer version of the component. The PerformUpgrade method failed.
[GoogleAnalyticsSource [44]] Error: The component is missing, not registered, not upgradeable, or missing required interfaces. The contact information for this component is "".
[SSIS.Pipeline] Error: component "GoogleAnalyticsSource" (44) failed validation and returned error code 0xC0048021.

Coordinator
May 12, 2011 at 2:11 PM

The component or MSI is not missing dll files. At the moment I didn't use the PerformUpgrade method in the component (Using PerformUpgrade).
Please remove the component from your dataflow and from your toolbox. Then install the new component, add the component to your toolbox and upgrade your package manually.

Marked as answer by Tillmann on 2/15/2014 at 9:02 AM
Jun 19, 2012 at 11:11 AM

Hello @all,

I experience the same issue with dimension "Campaign". I cannot change the length of 255 bytes, but apparently there is one campaign which is longer. Should I add an issue into "Issue tracker"?

 

Best regards from Hamburg,

Andrey

Coordinator
Jun 19, 2012 at 3:37 PM
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.
Dec 6, 2012 at 9:50 AM

Hi

I have a similar problem..

I have tried to use these categories

dimensions:

country, date, language, medium and source

metrics:

new visits and visits

and I get this error:

Error: 0x0 at Data Flow Task, SSIS GoogleAnalyticsSource: Microsoft.SqlServer.Dts.Pipeline.DoesNotFitBufferException: The value is too large to fit in the column data area of the buffer.   at Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer.SetString(Int32 columnIndex, String value)   at Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer.set_Item(Int32 columnIndex, Object value)   at SSISComponents.GoogleAnalyticsSource.PrimeOutput(Int32 outputs, Int32[] outputIDs, PipelineBuffer[] buffers)

I see here that you have fixed other categories,

could you fix those too?

thanks,

AnatW