You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Michael McCandless (JIRA)" <ji...@apache.org> on 2014/05/05 19:46:16 UTC

[jira] [Updated] (LUCENE-5599) HttpReplicator uses a lot of CPU for large files

     [ https://issues.apache.org/jira/browse/LUCENE-5599?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael McCandless updated LUCENE-5599:
---------------------------------------

    Fix Version/s:     (was: 4.9)
                   4.8.1

> 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
>            Assignee: Shai Erera
>            Priority: Minor
>             Fix For: 4.8.1, 4.9, 5.0
>
>         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: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org