ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 49326] OutOfMemoryError: Map failed
Date Sat, 22 May 2010 22:03:15 GMT
https://issues.apache.org/bugzilla/show_bug.cgi?id=49326

J.M. (Martijn) Kruithof <jkf@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #8 from J.M. (Martijn) Kruithof <jkf@apache.org> 2010-05-22 18:03:13 EDT
---
Hmm giving this another thought.
If the leakage problem is solved in the JVM, still the memory-mapped size
allocated together with the VM size could go over the limit, and this problem
may still be present in the standard SUN libraries.
I have performed some tests with java 1.6.0_20, and it seems that if the
transfer size requested, combined with the JVM size remains below a certain
limit, no problems occur.

In order to allow more efficient transfer, while avoiding to hit the limit I
propose 16 MB chunk sizes instead of 8192 byte chunck sizes. The optimal chunk
size varies with machines, and seems to be dependent on the amount of data the
IO controller / disk cache can process at once.

This after testing the effect of different chunk sizes on my machine. Too small
a size apparently causes too many operations to allow efficient copying a 
Time to copy a single file of 1.8 gig from one drive to the other with a
limiting size of:
64 MiB -> 1:08
32 MiB -> 1:08
16 MiB -> 1:18
8 Mib -> 1:12
4 Mib -> 1:55
1 MiB -> 3:31
8 KiB -> 3:31

Committing a version limiting the maximal request size to 16 MiB, trying to
strike balance between the needed memory space and limiting the number of
operations needed.

Fix applied in
http://svn.apache.org/viewvc?rev=947339&view=rev

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

Mime
View raw message