You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Lance Norskog <go...@gmail.com> on 2010/03/22 04:37:10 UTC

Chunked streaming upload to Solr

I would like to upload data to Solr for indexing, in chunks, in one
HTTP POST request. Is this possible? What exactly should I set as the
client socket parameters?

What I'm getting is that with the default parameters, the first write
adds a Content-Length matching the size of the first chunk. Solr reads
that as the entire upload. Apparently the right way to handle this
with an HTTP request parameter "Transfer-Encoding" set to "chunked".
(I don't know the total size of the upload.) This results in the HTTP
parser blowing up. Here is the stack trace:

Mar 21, 2010 8:35:18 PM sun.reflect.NativeMethodAccessorImpl invoke0
WARNING: handle failed
java.io.IOException: bad chunk char: 115
	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:687)
	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:208)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:378)
	at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:226)
	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
log4j:WARN Detected problem with connection: java.net.SocketException:
Unexpected end of file from server
log4j:WARN Detected problem with connection: java.net.SocketException:
Unexpected end of file from server
log4j:WARN Detected problem with connection: java.net.SocketException:
Unexpected end of file from server


Has anyone made this work?

Thanks,

-- 
Lance Norskog
goksron@gmail.com