I recently migrated from standard solr server to multicore implementation. I observed that wt=javabin is failing with this error
java.lang.RuntimeException: This is a binary writer , Cannot write to a characterstream at org.apache.solr.request.BinaryResponseWriter.write(BinaryResponseWriter.java:48) I found that in org.apache.solr.servlet.SolrServlet.java, always PrintWriter object is sent as input parameter. This would fail if the ResponseWriter is of type BinaryResponseWriter. {code} QueryResponseWriter responseWriter = core.getQueryResponseWriter(solrReq); response.setContentType(responseWriter.getContentType(solrReq, solrRsp)); PrintWriter out = response.getWriter(); responseWriter.write(out, solrReq, solrRsp); {code} Suggested change would be similar to as implemented in SolrDispatchFilter {code} response.setContentType(responseWriter.getContentType(solrReq, solrRsp)); QueryResponseWriter responseWriter = core.getQueryResponseWriter(solrReq); if (Method.HEAD != reqMethod) { if (responseWriter instanceof BinaryQueryResponseWriter) { BinaryQueryResponseWriter binWriter = (BinaryQueryResponseWriter) responseWriter; binWriter.write(response.getOutputStream(), solrReq, solrRsp); }else{ PrintWriter out = response.getWriter(); responseWriter.write(out, solrReq, solrRsp); } } {code} Any thoughts on this will be very valuable. Thanks Kalyan