InterMineR icon indicating copy to clipboard operation
InterMineR copied to clipboard

HTTP 414 error from doEnrichment function

Open vondoRishi opened this issue 6 years ago • 3 comments

doEnrichment functions returns "HTTP 414" error when number of gene is 300, there are no problem when this number is less than 100.

vondoRishi avatar Jul 04 '19 11:07 vondoRishi

Hmmm, this shouldn't be happening! Thanks @vondoRishi for reporting this.

When we investigate this: MDN suggests we're accidentally sending a GET instead of a POST: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/414

yochannah avatar Jul 04 '19 12:07 yochannah

Looking for a solution, I was just following the manuals of InterMiner.

vondoRishi avatar Jul 04 '19 12:07 vondoRishi

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.

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.

linehammer avatar Nov 25 '20 05:11 linehammer