[Cyberduck-trac] [Cyberduck] #10392: Out of memory error when uploading larger files
Cyberduck
trac at cyberduck.io
Fri Nov 16 18:26:56 UTC 2018
#10392: Out of memory error when uploading larger files
------------------------+------------------------------
Reporter: Th3Dan | Owner:
Type: defect | Status: new
Priority: high | Milestone: 7.0
Component: onedrive | Version: Nightly Build
Severity: major | Resolution:
Keywords: | Architecture: Intel
Platform: Windows 10 |
------------------------+------------------------------
Comment (by Th3Dan):
I ran two tests:
Test 1
4 files with 2x7,1GB, 1x1,8GB and 1x1,7GB => total about ~17GB
This upload was done during night without errors. Ram usage between
80-100MB at beginning. When reaching 16 percent, it increased to
~140-160MB. Later I went to bed so no data exists. It was surprising but I
remember that I changed the settings in Filetransfer > General > File
transfers to "Use connection in browser". This was done several months ago
to figure out if may wrong settings are the reason why large uploads
doesn't work.
Test 2
29,5GB total in multiple ISO images from 4 to 7GB
Here the file transfer settings were changed to "Open multiple
connections", which was the default I think. I started the uplad in the
morning before I went to work, today in the evening it was aborted. File
transfer window say "transfer incomplete" at 15,9 from 29,6GB. and in the
line above "Resolve graph.microsoft.com".
The cyberduck.log in appdata folder has an entry near 3PM:
{{{
2018-11-16 14:54:52,405 [background-11] ERROR AsyncController - Unhandled
exception during invoke
cli.System.OutOfMemoryException
2018-11-16 14:54:52,421 [cbafInh0-transfer-2] ERROR
ch.cyberduck.core.Resolver - Waiting for resolving of graph.microsoft.com
java.lang.InterruptedException
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.tryAcquireSharedNanos(AbstractQueuedSynchronizer.java:1324)
at
java.util.concurrent.CountDownLatch.await(CountDownLatch.java:277)
at ch.cyberduck.core.Resolver.resolve(Resolver.java:78)
at
ch.cyberduck.core.LoginConnectionService.connect(LoginConnectionService.java:133)
at
ch.cyberduck.core.LoginConnectionService.check(LoginConnectionService.java:102)
at
ch.cyberduck.core.pool.StatelessSessionPool.borrow(StatelessSessionPool.java:71)
at
ch.cyberduck.core.worker.ConcurrentTransferWorker.borrow(ConcurrentTransferWorker.java:128)
at
ch.cyberduck.core.worker.AbstractTransferWorker$3.call(AbstractTransferWorker.java:381)
at
ch.cyberduck.core.worker.AbstractTransferWorker$3.call(AbstractTransferWorker.java:371)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:512)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:618)
at
ch.cyberduck.core.threading.NamedThreadFactory$1.run(NamedThreadFactory.java:58)
at java.lang.Thread.run(Thread.java:955)
}}}
Again you can see that I got an OutOfMemoryException diretly before the
DNS resolve error. This can't be related to my memory since my machine has
32GB memory. Currently about 22GB of them are usable. BUT since Cyberduck
is a 32 Bit application, it can't allocate more than ~4GB for a single
process.
To be sure, I looked in the logs of my DSL router. There were no entrys in
the hole day, so the WAN connection seems stable. This doesn't
automatically mean that there were no outages by the DNS server from the
ISP. But on the other hand, even if there was a DNS failture: Why does
this abort the hole upload process? Would expect that in this case
Cyberduck wait a minute and re-try the upload process.
And I don't really belive that the DNS issue is the cause since the
OutOfMemoryException was thrown only milliseconds before. It seems that
for some reason the app ran out of memory and the DNS error is some
aftereffect of this.
--
Ticket URL: <https://trac.cyberduck.io/ticket/10392#comment:11>
Cyberduck <https://cyberduck.io>
Libre FTP, SFTP, WebDAV, S3 & OpenStack Swift browser for Mac and Windows
More information about the Cyberduck-trac
mailing list