ARK-Builders / ARK-Builders/Navigator
Attempt to use methods of MonoidIsNotUsed
- Dominant language
- Kotlin
- Stars
- 16
- Forks
- 14
- PR merge metrics
- No merged PRs in 30d
Description
```
java.lang.IllegalStateException: Metadata is generated and always must be the same for same ids
at space.taran.arklib.domain.storage.MonoidIsNotUsed.combine(MonoidIsNotUsed.kt:28)
at space.taran.arklib.domain.storage.BaseStorage$syncWithDisk$2.invoke(BaseStorage.kt:119)
at space.taran.arklib.domain.storage.BaseStorage$syncWithDisk$2.invoke(BaseStorage.kt:105)
at space.taran.arklib.domain.storage.FolderStorage.readFromDisk(FolderStorage.kt:110)
at space.taran.arklib.domain.storage.BaseStorage.syncWithDisk(BaseStorage.kt:105)
at space.taran.arklib.domain.storage.BaseStorage.actualPersist(BaseStorage.kt:80)
at space.taran.arklib.domain.storage.BaseStorage.access$actualPersist(BaseStorage.kt:17)
at space.taran.arklib.domain.storage.BaseStorage$persistRequestFlow$1$1.invokeSuspend(BaseStorage.kt:32)
at space.taran.arklib.domain.storage.BaseStorage$persistRequestFlow$1$1.invoke(Unknown Source:8)
at space.taran.arklib.domain.storage.BaseStorage$persistRequestFlow$1$1.invoke(Unknown Source:4)
at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit(Emitters.kt:223)
at kotlinx.coroutines.flow.FlowKt__DelayKt$debounceInternal$1$3$1.invokeSuspend(Delay.kt:233)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42)
at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@3a6e020, Dispatchers.IO]
```
Contributor guide
Research direction
Start at MonoidIsNotUsed.kt:28, where the exception is raised, then trace the storage-sync call chain through BaseStorage.kt:105 and :119 and FolderStorage.kt:110. Reproduce the persistence operation and determine why combine receives metadata that violates its invariant; done means the reported storage flow no longer throws this exception.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100