[ 
http://jira.nuxeo.org/browse/NXP-1979?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thierry Delprat resolved NXP-1979.
----------------------------------

    Resolution: Fixed

> FileManagerService unicity API should not load the complete content of a 
> streaming blob into memory
> ---------------------------------------------------------------------------------------------------
>
>                 Key: NXP-1979
>                 URL: http://jira.nuxeo.org/browse/NXP-1979
>             Project: Nuxeo Enterprise Platform 5
>          Issue Type: Bug
>          Components: Web Foundations
>    Affects Versions: 5.1.2, 5.1.3
>            Reporter: Olivier Grisel
>            Assignee: Laurent Doguin
>             Fix For: 5.1.4
>
>   Original Estimate: 4 hours
>  Remaining Estimate: 4 hours
>
> The offending code lives in FileManagerService:
>     public String computeDigest(Blob blob) {
>         try {
>             MessageDigest md = MessageDigest.getInstance(algo);
>             // XXX: OG: why load the content of a complete blob in memory 
> here,
>             // this will exhaust heap space with huge Blobs?
>             md.update(blob.getByteArray());
>             byte[] b = md.digest();
>             StringBuffer sb = new StringBuffer();
>             for (int i = 0; i < b.length; i++) {
>                 sb.append(b[i]);
>             }
>             return sb.toString();
>         } catch (NoSuchAlgorithmException e) {
>             log.error("Digest Algortihm " + algo + " doesn't exist.");
>         } catch (IOException e) {
>             log.error(e);
>         }
> blob.getByteArray() will exhaust heap space on big streaming blobs.
> Furthermore this method should not catch unexpected exceptions.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.nuxeo.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
ECM-tickets mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm-tickets

Reply via email to