IndexOutOfBoundsException in BaseFeature - DisposableCollection
- Dominant language
- Kotlin
- Stars
- 1.3k
- Forks
- 88
- PR merge metrics
- No merged PRs in 30d
Description
Happens rarely on a Bootstrapper Wish emit and leads to crash
Caused by java.lang.IndexOutOfBoundsException
Index: 2, Size: 2
`java.util.ArrayList.remove (ArrayList.java:503)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt (MutableCollections.kt:295)
kotlin.collections.CollectionsKt__MutableCollectionsKt.removeAll (MutableCollections.kt:269)
kotlin.collections.CollectionsKt.removeAll (CollectionsKt.java)
com.badoo.mvicore.feature.internal.DisposableCollection.add (DisposableCollection.kt:19)
com.badoo.mvicore.feature.internal.DisposableCollection.plusAssign (DisposableCollection.kt:25)
com.badoo.mvicore.feature.BaseFeature$ActorWrapper.processAction (BaseFeature.kt:140)
com.badoo.mvicore.feature.BaseFeature.invokeActor (BaseFeature.kt:115)
com.badoo.mvicore.feature.BaseFeature.access$invokeActor (BaseFeature.kt:20)
com.badoo.mvicore.feature.BaseFeature$1.accept (BaseFeature.kt:70)
io.reactivex.internal.observers.LambdaObserver.onNext (LambdaObserver.java:63)
io.reactivex.subjects.PublishSubject$PublishDisposable.onNext (PublishSubject.java:308)
io.reactivex.subjects.PublishSubject.onNext (PublishSubject.java:228)
com.badoo.mvicore.extension.RxKt$asConsumer$1.accept (Rx.kt:21)
com.badoo.mvicore.feature.BaseFeature$2$1$1.accept (BaseFeature.kt:81)
io.reactivex.internal.observers.LambdaObserver.onNext (LambdaObserver.java:63)
io.reactivex.internal.operators.observable.ObservableMap$MapObserver.onNext (ObservableMap.java:62)
io.reactivex.internal.operators.observable.ObservableDistinctUntilChanged$DistinctUntilChangedObserver.onNext (ObservableDistinctUntilChanged.java:85)
io.reactivex.internal.util.NotificationLite.accept (NotificationLite.java:246)
io.reactivex.subjects.BehaviorSubject$BehaviorDisposable.test (BehaviorSubject.java:569)
io.reactivex.subjects.BehaviorSubject$BehaviorDisposable.emitNext (BehaviorSubject.java:564)
io.reactivex.subjects.BehaviorSubject.onNext (BehaviorSubject.java:268) `
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with DisposableCollection.kt at line 19 and follow its use from BaseFeature.kt lines 115 and 140 during a Bootstrapper Wish emission. Investigate the reported intermittent ArrayList IndexOutOfBoundsException and verify the reported crash no longer occurs for that action flow.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100