You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Chris M. Hostetter (Jira)" <ji...@apache.org> on 2020/09/25 18:32:00 UTC
[jira] [Created] (SOLR-14896) jetty "Bad Message 400" / "Illegal
character" responses to sporadic requests
Chris M. Hostetter created SOLR-14896:
-----------------------------------------
Summary: jetty "Bad Message 400" / "Illegal character" responses to sporadic requests
Key: SOLR-14896
URL: https://issues.apache.org/jira/browse/SOLR-14896
Project: Solr
Issue Type: Bug
Security Level: Public (Default Security Level. Issues are Public)
Reporter: Chris M. Hostetter
I'm getting some offline reports from users who recently upgraded to solr 8.6 of non-reliably reproducing errors from Jetty when doing the HTTP header parsing. these errors result in a jetty response that will typically look something like...
{noformat}
HTTP/1.1 400 Illegal character VCHAR='='
Content-Type: text/html;charset=iso-8859-1
Content-Length: 70
Connection: close
<h1>Bad Message 400</h1><pre>reason: Illegal character VCHAR='='</pre>
{noformat}
...the exact "Illegal character" can vary. Based on some review of the solr/jetty code bases these errors come from Jetty's HttpParser class when unexpected character types are encountered while parsing the HTTP METHOD or Header *NAMES* (VCHAR is a legal token type in Header _VALUES_)
----
These errors sometimes manifest in log files as RemoteSolrExceptions due to intra-node communication, but I've been told they can also be returned directly by solr/jetty when clients make requests -- _even when the client is not using SolrJ_ -- suggesting that whatever is causing the "malformed" request is not specifically a bug in solr/solrj -- this seems like a jetty bug.
I'm suspect that the underlying cause is jetty buffers being re-used/shared between multiple requests, and suspicious that this is caused by / related to [jetty issue#4936|https://github.com/eclipse/jetty.project/issues/4936] / aka [jetty bug#564984|https://bugs.eclipse.org/bugs/show_bug.cgi?id=564984] .. BUT ... that issue suggests that the buffer re-use situation *ONLY* arises due to a prior "500: Response header too large" error -- but i have not been able to confirm that that situation has ever existed on any of the affected servers where this "400 Illegal character" error occurs.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org