Christoph Kaser created LUCENE-5599:
---------------------------------------

             Summary: HttpReplicator uses a lot of CPU for large files
                 Key: LUCENE-5599
                 URL: https://issues.apache.org/jira/browse/LUCENE-5599
             Project: Lucene - Core
          Issue Type: Bug
          Components: modules/replicator
    Affects Versions: 4.7.1
            Reporter: Christoph Kaser
            Priority: Minor
         Attachments: HttpClientBase.java.patch

The method responseInputStream of HttpClientBase wraps an InputStream in order 
to close it when it is done reading. However, the wrapper only overwrites the 
single-byte read() method, every other method is delegated to its parent 
(java.io.InputStream). Therefore, the more efficient read-methods like 
read(byte[] b) are all implemented by reading one byte after the other.

In my test, it took 20 minutes to copy  an index of 38 GB. With the provided 
small patch, this was reduced to less than 10 minutes.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to