Deadlock in com.bumptech.glide.load.engine.EngineJob$CallResourceReady.EngineJob$CallResourceReady$ar$run,com.bumptech.glide.request.SingleRequest.clear
- Dominant language
- Java
- Stars
- 35k
- Forks
- 6.2k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 8
Description
```
main (tid=1) Blocked
Triggered ANR
Deadlocked
Waiting for jha (0x046c2e19) held by
glide-source-thread-3
at com.bumptech.glide.load.engine.EngineJob.h(EngineJob.java:1)
at com.bumptech.glide.load.engine.Engine$LoadStatus.cancel(Engine.java:438)
at com.bumptech.glide.request.SingleRequest.cancel(SingleRequest.java:297)
at com.bumptech.glide.request.SingleRequest.clear(SingleRequest.java:331)
- locked @addr=0x2676370 (a java.lang.Object)
- locked 0x08716ede (a jgw)
Threads waiting for this lock:
glide-source-thread-0
glide-source-thread-1
glide-source-thread-3
at com.bumptech.glide.request.ThumbnailRequestCoordinator.clear(ThumbnailRequestCoordinator.java:163)
- locked @addr=0x2676370 (a java.lang.Object)
at com.bumptech.glide.request.ThumbnailRequestCoordinator.onRequestSuccess(ThumbnailRequestCoordinator.java:107)
- locked @addr=0x2676370 (a java.lang.Object)
at com.bumptech.glide.request.SingleRequest.notifyRequestCoordinatorLoadSucceeded(SingleRequest.java:529)
at com.bumptech.glide.request.SingleRequest.onResourceReady(SingleRequest.java:643)
at com.bumptech.glide.request.SingleRequest.onResourceReady(SingleRequest.java:597)
- locked @addr=0x2676370 (a java.lang.Object)
at com.bumptech.glide.load.engine.EngineJob.callCallbackOnResourceReady(EngineJob.java:159)
at com.bumptech.glide.load.engine.EngineJob$CallResourceReady.run(EngineJob.java:428)
at com.bumptech.glide.load.engine.EngineJob$CallResourceReady.EngineJob$CallResourceReady$ar$run(EngineJob.java:0)
- locked @addr=0x2676370 (a java.lang.Object)
- locked @addr=0x3da2fd8 (a jha)
at android.os.Handler.handleCallback(Handler.java:984)
at android.os.Handler.dispatchMessage(Handler.java:104)
at android.os.Looper.loopOnce(Looper.java:238)
at android.os.Looper.loop(Looper.java:357)
at android.app.ActivityThread.main(ActivityThread.java:8088)
at java.lang.reflect.Method.invoke(Native method:0)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:957)
glide-source-thread-1 (tid=69) Blocked
Waiting for jgw (0x08716ede) held by
main
at com.bumptech.glide.load.engine.Engine.b(Engine.java:1)
at com.bumptech.glide.load.engine.EngineJob.notifyCallbacksOfResult(EngineJob.java:259)
at com.bumptech.glide.load.engine.EngineJob.onResourceReady(EngineJob.java:324)
at com.bumptech.glide.load.engine.DecodeJob.notifyComplete(DecodeJob.java:396)
at com.bumptech.glide.load.engine.DecodeJob.notifyEncodeAndRelease(DecodeJob.java:533)
at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:512)
at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:456)
at com.bumptech.glide.load.engine.SourceGenerator.onDataReadyInternal(SourceGenerator.java:211)
at com.bumptech.glide.load.engine.SourceGenerator$1.onDataReady(SourceGenerator.java:101)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:145)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:145)
at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:63)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:147)
at com.bumptech.glide.load.data.mediastore.ThumbFetcher.loadData(ThumbFetcher.java:62)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)
at com.bumptech.glide.load.model.stream.QMediaStoreUriLoader$QMediaStoreUriFetcher.loadData(QMediaStoreUriLoader.java:141)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:147)
at com.bumptech.glide.load.data.mediastore.ThumbFetcher.loadData(ThumbFetcher.java:62)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)
at com.bumptech.glide.load.engine.SourceGenerator.startNextLoad(SourceGenerator.java:95)
at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:88)
at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:339)
at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:308)
at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:263)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:429)
at android.support.v4.app.SpecialEffectsController$$ExternalSyntheticLambda1.SpecialEffectsController$$ExternalSyntheticLambda1$ar$run(D8$$SyntheticClass:0)
at java.lang.Thread.run(Thread.java:1119)
at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultPriorityThreadFactory$1.run(GlideExecutor.java:388)
```
```
glide-source-thread-3 (tid=76) Blocked
Deadlocked
Waiting for jgw (0x08716ede) held by
main
at com.bumptech.glide.load.engine.Engine$LoadStatus.cancel(Engine.java:437)
at com.bumptech.glide.request.SingleRequest.cancel(SingleRequest.java:297)
at com.bumptech.glide.request.SingleRequest.clear(SingleRequest.java:331)
- locked @addr=0x2674688 (a java.lang.Object)
at com.bumptech.glide.request.ThumbnailRequestCoordinator.onRequestSuccess(ThumbnailRequestCoordinator.java:107)
- locked @addr=0x2674688 (a java.lang.Object)
at com.bumptech.glide.request.SingleRequest.notifyRequestCoordinatorLoadSucceeded(SingleRequest.java:529)
at com.bumptech.glide.request.SingleRequest.onResourceReady(SingleRequest.java:643)
at com.bumptech.glide.request.SingleRequest.onResourceReady(SingleRequest.java:597)
- locked @addr=0x2674688 (a java.lang.Object)
at com.bumptech.glide.load.engine.EngineJob.callCallbackOnResourceReady(EngineJob.java:159)
at com.bumptech.glide.load.engine.EngineJob$CallResourceReady.run(EngineJob.java:428)
at com.bumptech.glide.load.engine.EngineJob$CallResourceReady.EngineJob$CallResourceReady$ar$run(EngineJob.java:0)
- locked @addr=0x2674688 (a java.lang.Object)
- locked 0x046c2e19 (a jha)
Threads waiting for this lock:
main
at com.bumptech.glide.util.Executors$3.execute(Executors.java:33)
at com.bumptech.glide.load.engine.EngineJob.notifyCallbacksOfResult(EngineJob.java:262)
at com.bumptech.glide.load.engine.EngineJob.onResourceReady(EngineJob.java:324)
at com.bumptech.glide.load.engine.DecodeJob.notifyComplete(DecodeJob.java:396)
at com.bumptech.glide.load.engine.DecodeJob.notifyEncodeAndRelease(DecodeJob.java:533)
at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:512)
at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:456)
at com.bumptech.glide.load.engine.SourceGenerator.onDataReadyInternal(SourceGenerator.java:211)
at com.bumptech.glide.load.engine.SourceGenerator$1.onDataReady(SourceGenerator.java:101)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:145)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:145)
at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:63)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:147)
at com.bumptech.glide.load.data.mediastore.ThumbFetcher.loadData(ThumbFetcher.java:62)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)
at com.bumptech.glide.load.model.stream.QMediaStoreUriLoader$QMediaStoreUriFetcher.loadData(QMediaStoreUriLoader.java:141)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:147)
at com.bumptech.glide.load.data.mediastore.ThumbFetcher.loadData(ThumbFetcher.java:62)
at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)
at com.bumptech.glide.load.engine.SourceGenerator.startNextLoad(SourceGenerator.java:95)
at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:88)
at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:339)
at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:308)
at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:263)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:429)
at android.support.v4.app.SpecialEffectsController$$ExternalSyntheticLambda1.SpecialEffectsController$$ExternalSyntheticLambda1$ar$run(D8$$SyntheticClass:0)
at java.lang.Thread.run(Thread.java:1119)
at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultPriorityThreadFactory$1.run(GlideExecutor.java:388)
```
Contributor guide
Assessment
This issue has not been assessed yet.