question

JesseMikkola-4099 avatar image
0 Votes"
JesseMikkola-4099 asked ·

Data factory Hubspot connector returns "414 Request-URI Too Large" on some endpoint(s)

Hey,

we started getting an error with Data factory utilizing the Hubspot connector.
"
Operation on target Copy_7eo failed: Failure happened on 'Source' side. ErrorCode=UserErrorOdbcOperationFailed,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=ERROR [HY000] [Microsoft][Hubspot] (100) Error parsing JSON: Invalid value. while parsing string <html>
<head><title>414 Request-URI Too Large</title></head>
<body>
<center><h1>414 Request-URI Too Large</h1></center>
</body>
</html>
.,Source=Microsoft.DataTransfer.ClientLibrary.Odbc.OdbcConnector,''Type=System.Data.Odbc.OdbcException,Message=ERROR [HY000] [Microsoft][Hubspot] (100) Error parsing JSON: Invalid value. while parsing string <html>
<head><title>414 Request-URI Too Large</title></head>
<body>
<center><h1>414 Request-URI Too Large</h1></center>
</body>
</html>
.,Source=HubspotODBC_sb64.dll,'
"

The linked service connection to the API works, but fetching records from Contact_properties_values endpoint for us seems to make the copy activity crash with the error above.

As it is a linked service, the connector. I can't change the request from GET to POST if that would solve it, any ideas on how to proceed with debugging and solving this?
It had worked for months before this started happening.



azure-data-factory
· 9
10 |1000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

For now it seems to only affect Contact properties values, nothing else.

0 Votes 0 ·

@JesseMikkola-4099 Thanks for reaching out to us on Microsoft Q&A. Sorry for your trouble. You may be getting this error if any new contacts coming to your system has more properties than expected which is making length of the request exceed the allowed length of the URL as discussed in these other issues- GET all contacts endpoint returning 414 SOLVE and Deals endpoint returning 414. I request you to please check once with Hubspot team if there are any limitations or any recent changes in the API.
Please let us know if anything needs to be done from Azure Data Factory end and I will help creating a free support ticket for you as this require more investigation.

Thank you,
Saurabh


0 Votes 0 ·

Hey,

I've been in contact with Hubspot and they discussed this internally and said there has been no changes on the API side.
However something similar has happened before and that was due to too many properties being called.

The connector gathers all properties defined in HubSpot and appends to the request url.
The guess is that a new property was defined in HubSpot and that was the straw that broke the camel's back.

Is this something that can be fixed on the connector?

0 Votes 0 ·
Show more comments

1 Answer

EvanChatter-2929 avatar image
0 Votes"
EvanChatter-2929 answered ·

Under Apache, the limit is a configurable value, LimitRequestLine. Change this value to something larger than its default of 8190 if you want to support a longer request URI. Extremely long URLs are usually a mistake. If you keep URLs under 2000 characters , they'll work in virtually any combination of client and server software. URI actually have a character limit depending on several things. Chrome limits url length of 2MB for practical reasons and to avoid causing denial-of-service problems in inter-process communication. On most platforms, Chrome's omnibox limits URL display to 32kB ( kMaxURLDisplayChars ) although a 1kB limit is used on VR platforms. IE - 2083 characters, Firefox - 2047 characters, Safari 80000 characters and Opera 190,000 characters.

To resolve the problem :

  • By POST request: Convert query string to json object and sent to API request with POST


  • By GET request: Max length of request is depend on sever side as well as client side. Most webserver have limit 8k which is configurable. On the client side the different browser has different limit. The browser IE and Safari limit to 2k, Opera 4k and Firefox 8k. means the max length for the GET request is 8k and min request length is 2k.

If exceed the request max length then the request truncated outside the limit by web server or browser without any warning. Some server truncated request data but the some server reject it because of data lose and they will return with response code 414.


·
10 |1000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.