commit 4115ed541f8a90a7abf32905ca59267f738eeff3 parent 554c1569079082d461018410101d5143b887c120 Author: Florian Dold <florian@dold.me> Date: Fri, 27 Jan 2023 13:18:47 +0100 -DD34 additions Diffstat:
| M | design-documents/034-wallet-db-migration.rst | | | 6 | +++++- |
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/design-documents/034-wallet-db-migration.rst b/design-documents/034-wallet-db-migration.rst @@ -34,7 +34,11 @@ In IndexedDB terminology, the wallet has two databases: 2. The major-version database (currently ``"taler-wallet-main-v9"`` stores the actual data of the wallet. -This indirection allows major database migrations to be safe despite the limitations of IndexedDB. +This indirection allows major database migrations to be safe despite the +limitations of IndexedDB. The computation that is allowed during an IndexedDB +migration is very limited. By migrating to a completely new database, we can +keep around the old database until we're sure that the migration has succeeded +and, if required, push new code to fix migration errors. We have three different mechanisms to introduce changes to the database: