laurent22 / joplin

Joplin - the privacy-focused note taking app with sync capabilities for Windows, macOS, Linux, Android and iOS.
https://joplinapp.org
Other
46.11k stars 5.02k forks source link

Too many master keys slowing down iOS/iPadOS app startup tremendously #10856

Closed th closed 2 months ago

th commented 3 months ago

Operating system

iOS

Joplin version

13.0.7

Desktop version info

No response

Current behaviour

Starting Joplin on iPhone or iPad it only shows a white screen for about ten seconds. Then the notes show up.

That is much too long to make it viable for quick notes.

It turns out (from the logs) that Joplin is loading 14 master keys, in about ten seconds. All of that long startup is just key management.

I haven't found a way to get rid of the keys. I can deactivate them on Desktop, but not on iOS. I then re-encrypted on Desktop Joplin and synchronized to the iOS devices, they just added all the keys back, it seems.

Four or five master keys per device. Shouldn't it be one key per device, after re-encryption?

How do I expunge the old keys?

Expected behaviour

Open up within a second or so.

Logs

08-10T15:49:09: PluginAssetsLoader: Assets are up to date. Hash: d7216e17c44aad8a0b1c3cf2e01a0135

08-10T15:49:09: e2ee/utils: Loaded master keys: 14

08-1015:49:09: autodetectTheme: Theme autodetect disabled, not switching theme to match system.

08-10T15:49:09: e2ee/utils: findMasterKeyPassword: Using master password

08-10115:49:09: EncryptionService: Loading master key: e90d51b686e94bbebaf260437d396a08. Make active:

08-10T15:49:08: e2ee/utils: findMasterKeyPassword: Using master password

08-10115:49:08: EncryptionService: Loading master key: 9f8d835cd57f4018ad2243182a575a35. Make active:

08-10T15:49:07: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:07: EncryptionService: Loading master key: e816e46dedd94375a0b7168c4274a785. Make active:

08-10T15:49:07: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:07: EncryptionService: Loading master key: ce8126d2d14545659997b559768e54e3. Make active:

08-10T15:49:06: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:06: EncryptionService: Loading master key: 4b8b538fc57d4e57a607d02d4bd91d29. Make active:

08-10T15:49:05: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:05: EncryptionService: Loading master key: b3ed362d15ca4c1da8478c4790f78a54. Make active:

08-10T15:49:05: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:05: EncryptionService: Loading master key: 235799282cf64afc8c53474624b6f088. Make active: < false>

08-10T15:49:04: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:04: EncryptionService: Loading master key: 1bda0f33a63149eaaecf28daefea9983. Make active: < false>

08-10T15:49:04: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:04: EncryptionService: Loading master key: ab9df1338ee54e68953c30294f94250a. Make active:

08-10T15:49:03: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:03: EncryptionService: Loading master key: 109695dffadf4d7799d0def6f16476ff. Make active:

08-10T15:49:02: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:02: EncryptionService: Loading master key: efe4b9225b714429c4fbe31908500ea. Make active:

08-10T15:49:02: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:02: EncryptionService: Loading master key: cbc523f91ddf43c8851a244c14b51987. Make active:

08-10T15:49:01: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:01: EncryptionService: Loading master key: 8bdece75f6234ea1b82f2196516ff3cb. Make active: < false>

08-10T15:49:01: KeychainService: checking if keychain supported

08-10T15:49:01: KeychainService: check was already done - skipping. Supported: 0

08-10T15:49:01: e2ee/utils: findMasterKeyPassword: Using master password

08-10T15:49:01: Client ID: 8dbe4b7ea6c5496187a3c5116befed70

08-10T15:49:01: models/Setting: Applying default migrations..

08-10T15:49:01: EncryptionService: Loading master key: 70093461d8f463bb3a4749c4d3f92f. Make active: < false>

08-10T15:49:00: e2ee/utils: activeMasterKeySanityCheck: Active key is an enabled key - nothing to do

08-10T15:49:00: e2ee/utils: Trying to load 14 master keys...

08-10T15:49:00: Database is ready.

08-10T15:49:00: Loading settings...

08-10115:49:00: Database was open successfully

08-10T15:49:00: Checking for database schema update...

08-10T15:49:00: Current database version {"version":47,"table_fields_version":47}

08-10T15:49:00: Upgrading database from version 47

08-10T15:49:00: New version: 47. Previously recorded version: 47

08-10T15:49:00: ====================================

08-10T15:49:00: Starting application net.cozic.joplin-mobile v13.0.7 (prod)

th commented 2 months ago

Thank you very much, @laurent22 and @personalizedrefrigerator!