pilgr / Paper

Paper is a fast NoSQL-like storage for Java/Kotlin objects on Android with automatic schema migration support.
Apache License 2.0
2.35k stars 234 forks source link

PaperDbException in Android O #80

Closed SennaGehenna closed 7 years ago

SennaGehenna commented 7 years ago

I updated my Nexus 5X to Android O today and found that some of my stuff doesn't work. I found out that I get a io.paperdb.PaperDbException: Couldn't read/deserialize file /data/user/0/at.schneider_holding.candidate/files/LookmodePersistence/INVOLVED.pt for table INVOLVED

(I have several Books open for different List-Objects)

full stacktrace here: at.schneider_holding.candidate_issue_1651_error_59649C08039B00012897608726AF1FFD_9b898de9661c11e7bc1556847afe9799_7_v2.txt

pilgr commented 7 years ago

Which Paper version do you use?

SennaGehenna commented 7 years ago

I'm using version 2.1

SennaGehenna commented 7 years ago

It's especially weird, because it works in both our non-production buildtypes, but in production it doesn't work

pilgr commented 7 years ago

Which targetSDK is used for both buildtypes?

SennaGehenna commented 7 years ago

targetSdk 25 for every buildType

the only thing that differentiates the three would be applicationIdSuffix and versionNameSuffix

SennaGehenna commented 7 years ago

whoops, seems like I was still using Paper v2.0, I'll go back to that commit, update and check again

sorry for the commotion

pilgr commented 7 years ago

ok let me know

SennaGehenna commented 7 years ago

yeah, it works on v2.1, my bad for not getting that sooner :/

ghost commented 7 years ago

Have the same problem. Tested on Pixel and android emulator with SDK26. Tried 2.1 and 2.5 paper version.

10-05 11:45:07.612 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter: io.paperdb.PaperDbException: Couldn't read/deserialize file /data/user/0/se.euroaccident.appear.dev/files/io.paperdb/session_id_key.pt for table session_id_key
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.paperdb.DbStoragePlainFile.readTableFile(DbStoragePlainFile.java:281)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.paperdb.DbStoragePlainFile.readTableFile(DbStoragePlainFile.java:270)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.paperdb.DbStoragePlainFile.readTableFile(DbStoragePlainFile.java:248)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.paperdb.DbStoragePlainFile.select(DbStoragePlainFile.java:147)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.paperdb.Book.read(Book.java:68)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at se.euroaccident.appear.data.storage.PersistentStorage.lambda$read$1(PersistentStorage.java:51)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at se.euroaccident.appear.data.storage.PersistentStorage$$Lambda$2.call(Unknown Source:6)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.internal.operators.maybe.MaybeFromCallable.subscribeActual(MaybeFromCallable.java:46)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Maybe.subscribe(Maybe.java:3726)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at hu.akarnokd.rxjava2.debug.MaybeOnAssemblyCallable.subscribeActual(MaybeOnAssemblyCallable.java:43)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Maybe.subscribe(Maybe.java:3726)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.internal.operators.maybe.MaybeFlatMapSingle.subscribeActual(MaybeFlatMapSingle.java:47)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Single.subscribe(Single.java:2702)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at hu.akarnokd.rxjava2.debug.SingleOnAssembly.subscribeActual(SingleOnAssembly.java:41)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Single.subscribe(Single.java:2702)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.internal.operators.single.SingleFlatMapCompletable.subscribeActual(SingleFlatMapCompletable.java:44)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Completable.subscribe(Completable.java:1635)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at hu.akarnokd.rxjava2.debug.CompletableOnAssembly.subscribeActual(CompletableOnAssembly.java:39)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Completable.subscribe(Completable.java:1635)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.internal.operators.maybe.MaybeFlatMapCompletable$FlatMapCompletableObserver.onSuccess(MaybeFlatMapCompletable.java:91)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at hu.akarnokd.rxjava2.debug.MaybeOnAssembly$OnAssemblyMaybeObserver.onSuccess(MaybeOnAssembly.java:68)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.internal.operators.maybe.MaybeFromCallable.subscribeActual(MaybeFromCallable.java:61)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Maybe.subscribe(Maybe.java:3726)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at hu.akarnokd.rxjava2.debug.MaybeOnAssemblyCallable.subscribeActual(MaybeOnAssemblyCallable.java:43)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Maybe.subscribe(Maybe.java:3726)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.internal.operators.maybe.MaybeFlatMapCompletable.subscribeActual(MaybeFlatMapCompletable.java:44)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Completable.subscribe(Completable.java:1635)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at hu.akarnokd.rxjava2.debug.CompletableOnAssembly.subscribeActual(CompletableOnAssembly.java:39)
10-05 11:45:07.613 7371-7371/se.euroaccident.appear.dev E/BaseLoginPresenter:     at io.reactivex.Completable.subscribe(Completable.java:1635)