Closed 2peer closed 1 week ago
Are you sure that just stopping and starting the download won't fix things?
You are right, it does. Didn't occur to me that it might be the case. Maybe put a hint for the user someplace?
I'll add some code to reset things if you manually clear the "disabled" limit, that should work
Try B34
What I see now is the error ("flush fail" notification) being triggered again when trying to switch to "No limit" directly. The stop & resume method still works and in some cases it seems to automatically perform a check first before resuming the download.
Have you got a full stack trace for that subsequent "flush fail" error? I've looked into things and can't reproduce here.
Had to dig it up in my daily backups, but based on the timestamps this could be it (taken from debug_1.log):
[20:23:48] [stderr] DEBUG::Tue Aug 20 20:23:48 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:23:48] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[20:23:48] [stderr]
[20:23:49] [stderr] DEBUG::Tue Aug 20 20:23:49 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:23:49] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[20:23:49] [stderr]
[20:23:50] [stderr] DEBUG::Tue Aug 20 20:23:50 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:23:50] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
And you got that error AFTER ensuring there is enough space on the file system? Because the OS is still reporting "Na zařízení není volné místo" ...
And you got that error AFTER ensuring there is enough space on the file system?
I sure did and the stop/start method did work just after that.
Is it possible that that there were multiple failed syscalls and the result is somehow queued for the next time the torrent is switched to "No limit"? There is a slight possibility I might have miss matched the timestamp (unfortunately I'm just guessing here based on the timestamp of my original Github response), but I find it unlikely since so far as I remember I discovered the "out of space" situation quite a long time after it happened so the timestamp should be far apart from the original event.
Also, would you consider using the full ISO 8601 date+time timestamps in the logs? It would waste a little bit of space but make searching for events much nicer.
Can't see there being any "queued syscalls" - when a write operation fails BiglyBT will attempt the operation again after closing and re-opening the file, so if there was anything queued associated with the previous file open then that should be discarded.
You should however get a
Debug.outNoStack( "Recovered connection to " + getName() + " after access failure" );
log message if the connection is closed + reopened
OK. Unfortunately I no longer remember when I sent the report exactly in relation to when it happend, but found this in a log (day before):
[13:28:22] [stderr]
[13:28:22] DEBUG::Sun Aug 18 13:28:22 CEST 2024 Recovered connection to /same_file_path/same_filename.az! after access failure
[13:28:22] [stderr] DEBUG::Sun Aug 18 13:28:22 CEST 2024::com.biglybt.core.diskmanager.file.impl.FMFileImpl::writeSupport::865:
[13:28:22] [stderr] com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:967)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[13:28:22] [stderr]
[13:28:22] DEBUG::Sun Aug 18 13:28:22 CEST 2024 Recovered connection to /same_file_path/same_filename.az! after access failure
[13:28:22] [stderr] DEBUG::Sun Aug 18 13:28:22 CEST 2024::com.biglybt.core.diskmanager.file.impl.FMFileImpl::writeSupport::865:
[13:28:22] [stderr] com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:967)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[13:28:22] [stderr]
[13:28:22] DEBUG::Sun Aug 18 13:28:22 CEST 2024 Recovered connection to /same_file_path/same_filename.az! after access failure
[13:28:22] [stderr] DEBUG::Sun Aug 18 13:28:22 CEST 2024::com.biglybt.core.diskmanager.file.impl.FMFileImpl::writeSupport::865:
[13:28:22] [stderr] com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:967)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
There are not ms precision timestamps but those are all events on the same file at the same second and there is the "Recovered connection to" line interleaved.
If this is no help, then I might try to recreate the scenario manually later, but I'm starting to suspect this might something to do with OS differences (Linux / Windows).
If you can reproduce it that would definitely help as I can't get it to fail (on Windows)
I ran kubuntu in a virtualbox VM, used veracrypt to create a small volume and tried to reproduce the probem - everytime it ran out of disk space and I made some space then set the download speed limit the download finished ok.
Ok. Tried to do something similar (mounting a small file-backed ext4 file-system over loopback).
At first when I tried with a single torrent and in pretty quick succession after the event it looked like it worked this time as well.
Thinking about what else could be different from the original case I added a second torrent & tried again. Filled the drive again & on my second attempt tried to set both torrents to "no limit" at once & also initially forgot to free the space first. Realizing my mistake I freed it & tried again but now I can reproduce it consistently (setting "No limit" on both torrents or just one), I get notifications:
Download 'Fedora-KDE-Live-x86_64-40' has been switched to upload only due to a disk write error (Disk write error: flush fails, write failed, Na zařízení není volné místo)
&
Download 'Fedora-Workstation-Live-x86_64-40' has been switched to upload only due to a disk write error (Disk write error: flush fails, write failed, Na zařízení není volné místo)
while there is still 600MB free on the virtual drive. Looking into the logs I get:
[20:32:53] [stderr] DEBUG::Sun Aug 25 20:32:53 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:32:53] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[20:32:53] [stderr]
[20:32:53] [stderr] DEBUG::Sun Aug 25 20:32:53 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:32:53] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[20:32:53] [stderr]
[20:32:53] [stderr] DEBUG::Sun Aug 25 20:32:53 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:32:53] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[20:32:53] [stderr]
[20:32:53] [stderr] DEBUG::Sun Aug 25 20:32:53 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:32:53] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[20:32:53] [stderr]
[20:32:53] [stderr] DEBUG::Sun Aug 25 20:32:53 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:32:53] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[20:32:53] [stderr]
[20:32:53] [stderr] DEBUG::Sun Aug 25 20:32:53 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:32:53] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[20:32:53] [stderr]
[20:33:08] DEBUG::Sun Aug 25 20:33:08 CEST 2024 Unable to decode peer correctly - peer ID bytes: 74-82de-aec9d5e14846
[20:33:11] [stderr] DEBUG::Sun Aug 25 20:33:11 CEST 2024::com.biglybt.core.disk.impl.access.impl.DMWriterImpl$3::writeFailed::573:
[20:33:11] [stderr] com.biglybt.core.diskmanager.cache.CacheFileManagerException: flush fails
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1110)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCacheSupport(CacheFileWithCache.java:1030)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:829)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.flushCache(CacheFileWithCache.java:1149)
at com.biglybt.core.diskmanager.cache.impl.CacheFileManagerImpl.allocateCacheSpace(CacheFileManagerImpl.java:400)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.readCache(CacheFileWithCache.java:497)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.read(CacheFileWithCache.java:1804)
at com.biglybt.core.diskmanager.access.impl.DiskAccessRequestImpl.runRequest(DiskAccessRequestImpl.java:102)
at com.biglybt.core.diskmanager.access.impl.DiskAccessControllerInstance$requestDispatcher$1.run(DiskAccessControllerInstance.java:694)
at com.biglybt.core.util.AEThread2$threadWrapper.run(AEThread2.java:334)
Caused by: com.biglybt.core.diskmanager.file.FMFileManagerException: write failed
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:543)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessController.write(FMFileAccessController.java:521)
at com.biglybt.core.diskmanager.file.impl.FMFileImpl.writeSupport(FMFileImpl.java:859)
at com.biglybt.core.diskmanager.file.impl.FMFileLimited.write(FMFileLimited.java:334)
at com.biglybt.core.diskmanager.cache.impl.CacheFileWithCache.multiBlockFlush(CacheFileWithCache.java:1100)
... 9 more
Caused by: java.io.IOException: Na zařízení není volné místo
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev0(Native Method)
at java.base/sun.nio.ch.UnixFileDispatcherImpl.writev(UnixFileDispatcherImpl.java:77)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:165)
at java.base/sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:335)
at java.base/java.nio.channels.FileChannel.write(FileChannel.java:478)
at com.biglybt.core.diskmanager.file.impl.FMFileAccessLinear.write(FMFileAccessLinear.java:482)
... 13 more
[20:33:11] [stderr]
Did you happen to replicate it in the end? Should I expect a fix in the next Beta? Would be nice to mention the commits in the close.
nope, I'm not planning on doing anything more on this
Ok. It seems like a good practice upon open-source projects to close such issues with something like a WONTFIX tag & some (optional) explanation, like:
...to let both users & other devs know
Thanks for your effort.
This relates to the new feature in the Beta channel releases: https://github.com/BiglySoftware/BiglyBT/issues/3303
I happened to notice that if the automatic switch to "upload only" / "Down speed->Disabled" happens because of running out of space on the drive, then when you resolve the issue (free up some space) and try to enable the download again within the same session, in most cases it switches back to "Disabled" immediately. No new notifications in this case, it just switches.
It can be resolved by running "Force Re-check" on the torrent, but maybe it's worth looking into (for convenience)?