TeamAmaze / TeamAmaze/AmazeFileManager
`OutOfMemoryError` on `AbstractCommonsArchiveHelperCallable#addElements`
Open
Nobody has claimed this yet.
From-Email
Issue-Bug
- Dominant language
- Kotlin
- Stars
- 6.4k
- Forks
- 1.7k
- Avg merge
- 3d 9h
- Merged PRs (30d)
- 1
Description
Issue explanation (write below this line)
Exception
- App Name: Amaze File Manager
- Package: com.amaze.filemanager
- Version: 3.8.5
- User Action: UI Error
- Request: Application crash
- OS: Linux
Cellution/IRIS/IRIS:11/RP1A.200720.011/sy20210513:user/release-keys 11 - 30 - Device: IRIS
- Model: IRIS
- Product: IRIS
Crash log
io.reactivex.exceptions.UndeliverableException: The exception could not be
delivered to the consumer because it has already canceled/disposed the flow
or the exception has nowhere to go to begin with. Further reading:
https://github.com/ReactiveX/RxJava/wiki/What's-different-in-2.0#error-handling
| java.lang.OutOfMemoryError: Failed to allocate a 67108880 byte allocation
with 6291456 free bytes and 58MB until OOM, target footprint 79284696,
growth limit 134217728
at io.reactivex.plugins.RxJavaPlugins.onError(RxJavaPlugins.java:367)
at
io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:69)
at
io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
Caused by: java.lang.OutOfMemoryError: Failed to allocate a 67108880 byte
allocation with 6291456 free bytes and 58MB until OOM, target footprint
79284696, growth limit 134217728
at org.tukaani.xz.ArrayCache.getByteArray(Unknown Source:0)
at org.tukaani.xz.lz.LZDecoder.<init>(Unknown Source:18)
at org.tukaani.xz.LZMA2InputStream.<init>(Unknown Source:49)
at org.tukaani.xz.LZMA2Decoder.getInputStream(Unknown Source:5)
at org.tukaani.xz.BlockInputStream.<init>(Unknown Source:436)
at org.tukaani.xz.SingleXZInputStream.read(Unknown Source:63)
at
org.apache.commons.compress.compressors.xz.XZCompressorInputStream.read(XZCompressorInputStream.java:156)
at org.apache.commons.compress.utils.IOUtils.readFully(IOUtils.java:189)
at org.apache.commons.compress.utils.IOUtils.readFully(IOUtils.java:163)
at
org.apache.commons.compress.archivers.tar.TarArchiveInputStream.readRecord(TarArchiveInputStream.java:514)
at
org.apache.commons.compress.archivers.tar.TarArchiveInputStream.getRecord(TarArchiveInputStream.java:483)
at
org.apache.commons.compress.archivers.tar.TarArchiveInputStream.getNextTarEntry(TarArchiveInputStream.java:360)
at
org.apache.commons.compress.archivers.tar.TarArchiveInputStream.getNextEntry(TarArchiveInputStream.java:799)
at
com.amaze.filemanager.asynchronous.asynctasks.compress.AbstractCommonsArchiveHelperCallable.addElements(AbstractCommonsArchiveHelperCallable.kt:60)
at
com.amaze.filemanager.asynchronous.asynctasks.compress.CompressedHelperCallable.call(CompressedHelperCallable.kt:42)
at
com.amaze.filemanager.asynchronous.asynctasks.compress.CompressedHelperCallable.call(CompressedHelperCallable.kt:29)
at
io.reactivex.internal.operators.flowable.FlowableFromCallable.subscribeActual(FlowableFromCallable.java:39)
at io.reactivex.Flowable.subscribe(Flowable.java:14826)
at io.reactivex.Flowable.subscribe(Flowable.java:14773)
at
io.reactivex.internal.operators.flowable.FlowableSubscribeOn$SubscribeOnSubscriber.run(FlowableSubscribeOn.java:82)
at
io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
... 6 more
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with AbstractCommonsArchiveHelperCallable.kt at line 60 and trace the archive-reading path shown in the crash log. The report provides no reproduction steps, expected behavior, named test, or proposed fix, so completion criteria require clarification before implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100