lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Walter Underwood <wun...@wunderwood.org>
Subject Re: Performing DIH on predefined list of IDS
Date Sun, 22 Feb 2015 01:33:14 GMT
Am an expert? Not sure, but I worked on an enterprise search spider and search engine for about
a decade (Ultraseek Server) and I’ve done customer-facing search for another 6+ years.

Let the server reject URLs it cannot handle. Great servers will return a 414, good servers
will return a 400, broken servers will return a 500, and crapulous servers will hang. In nearly
all cases, you’ll get a fast fail which won’t hurt other users of the site.

Manage your site for zero errors, so you can fix the queries that are too long.

At Chegg, we have people paste entire homework problems into the search for homework solutions,
and, yes, we have a few queries longer than 8K. But we deal with it gracefully.

Never do POST for a read-only request. Never. That only guarantees that you cannot reproduce
the problem by looking at the logs.

If your design requires extremely long GET requests, you may need to re-think your design.

wunder
Walter Underwood
wunder@wunderwood.org
http://observer.wunderwood.org/  (my blog)

On Feb 21, 2015, at 4:45 PM, Shawn Heisey <apache@elyograg.org> wrote:

> On 2/21/2015 1:46 AM, steve wrote:
>> Careful with the GETs! There is a real, hard limit on the length of a GET url (in
the low hundreds of characters). That's why a POST is so much better for complex queries;
the limit is in the hundreds of MegaBytes.
> 
> The limit on a GET command (including the GET itself and the protocol
> specifier (usually HTTP/1.1) is normally 8K, or 8192 bytes.  That's the
> default value in Jetty, at least.
> 
> A question for the experts:  Would it be a good idea to force a POST
> request in SolrEntityProcessor?  It may be dealing with parameters that
> have been sent via POST and may exceed the header size limit.
> 
> Thanks,
> Shawn
> 


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message