Commit Graph

42 Commits

Author SHA1 Message Date
Scott Nonnenberg cd60bdd08a Move conversations to SQLCipher 2018-10-01 18:18:37 -07:00
Scott Nonnenberg 1d7987108b Show and log progress during the SQLCipher migration 2018-08-02 17:25:51 -07:00
Scott Nonnenberg 02675312c5 Introduce mandatary migration on startup, to minimum version 2018-07-27 10:55:10 -07:00
Scott Nonnenberg f39a96bc76 Move to centralized message/cache data layer
Also, ensure that conversation.messageCollection has nothing in it
unless it has an associated ConversationView.
2018-07-27 10:55:10 -07:00
Scott Nonnenberg 5933a34a18 Use window.log in browser context, turn on console eslint rule 2018-07-21 14:52:43 -07:00
Daniel Gasienica 1dd87ad197 Format all source code using Prettier 2018-04-30 16:53:34 -04:00
Daniel Gasienica 24f4ad53bc Use single quotes for identifiers 2018-04-11 15:54:32 -04:00
Daniel Gasienica 12cdeee7ec Rename count to numMessagesPerBatch 2018-04-03 14:43:17 -04:00
Daniel Gasienica 38ac9972e8 Improve termination condition 2018-04-03 13:16:05 -04:00
Daniel Gasienica 5b1a0c45df Replace getAll with cursor
This reduces the likelihood of IPC message size error.
2018-04-03 13:16:05 -04:00
Daniel Gasienica ed77378293 Fix bug in termination condition 2018-04-03 12:30:13 -04:00
Daniel Gasienica f50ac1c99e Reduce excessive logging about database status 2018-04-03 11:06:56 -04:00
Daniel Gasienica 77b1f3c505 Replace startup with attachment background migration
Iterates through `Message::id` index.
2018-04-02 20:07:07 -04:00
Daniel Gasienica 057762806e Add support for attachment background migration without index 2018-04-02 19:41:28 -04:00
Daniel Gasienica 442f5d7295 Use done to match JavaScript iterators
See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Iterators_and_Generators
2018-04-02 17:42:04 -04:00
Daniel Gasienica a4f0c5242f Document why batch size is one 2018-04-02 17:42:04 -04:00
Daniel Gasienica d9be6a0f94 Destructure Lodash requires 2018-04-02 15:12:04 -04:00
Daniel Gasienica 11f98474ba Capture how many messages we have to process 2018-04-02 12:17:36 -04:00
Daniel Gasienica c67c2a858a Remove Backbone references for attachment migration
It has to run without any other migrations interfering.
2018-04-02 12:17:36 -04:00
Daniel Gasienica 0c40f35623 Document disadvantage of fetching messages without index 2018-04-02 12:17:36 -04:00
Daniel Gasienica 30037e5308 Reduce attachment migration batch size to 1
This prevents ‘Maximum IPC message size exceeded’ due to IDB `getAll` operation.

- https://github.com/zincbase/zincdb/issues/17
- https://cs.chromium.org/chromium/src/content/browser/indexed_db/indexed_db_database.cc?q=%22Maximum+IPC+message+size+exceeded%22&sq=package:chromium&l=1160
2018-04-02 12:17:36 -04:00
Daniel Gasienica 08f73b8420 Remove last processed index after attachment migration 2018-04-02 12:17:36 -04:00
Daniel Gasienica efe3cd67fc Allow attachment migration run on higher database version 2018-04-02 12:17:36 -04:00
Daniel Gasienica 016432826b Extract database and settings modules 2018-04-02 12:17:36 -04:00
Daniel Gasienica f50e9ae364 Log closing connection of database 2018-04-02 12:17:36 -04:00
Daniel Gasienica 3720c3f3bb Improve log message 2018-04-02 12:17:36 -04:00
Daniel Gasienica ce5b450fdb Log targetSchemaVersion 2018-04-02 12:17:36 -04:00
Daniel Gasienica f7f24b5822 Log total number of processed messages 2018-04-02 12:17:36 -04:00
Daniel Gasienica eca930770c Remove hard-coded database connection settings 2018-04-02 12:17:36 -04:00
Daniel Gasienica 1df6dc8378 Abort processing if there are no more messages 2018-04-02 12:17:36 -04:00
Daniel Gasienica d5d0eabdfd Remove usage of storage module 2018-04-02 12:17:36 -04:00
Daniel Gasienica 8966e80284 Improve identifier names 2018-04-02 12:17:36 -04:00
Daniel Gasienica 3e2d575506 Document MessageDataMigrator module design 2018-04-02 12:17:36 -04:00
Daniel Gasienica 3c57dbfb56 Extract NUM_MESSAGES_PER_BATCH 2018-04-02 12:17:36 -04:00
Daniel Gasienica 85788d3c4a Match items storage format to Backbone adapter 2018-04-02 12:17:36 -04:00
Daniel Gasienica 7de7fcf561 Avoid no-param-reassign violation 2018-04-02 12:17:36 -04:00
Daniel Gasienica 070235b59b Implement MessageDataMigrator.processAll
Upgrades schema of all messags upon startup.
2018-04-02 12:17:36 -04:00
Daniel Gasienica b6e978f74c Implement MessagesDataMigrator.processAll 2018-04-02 12:17:36 -04:00
Daniel Gasienica 8ea257ad4d Use double quotes for identifiers in error messages 2018-04-02 12:17:36 -04:00
Daniel Gasienica 579b01283e Replace wrapDeferred with deferredToPromise 2018-04-02 12:17:36 -04:00
Daniel Gasienica 40c40c800a Prefer exports 2018-04-02 12:17:36 -04:00
Daniel Gasienica 7c2fde4433 Add Signal.Workflow namespace 2018-03-26 16:49:21 -04:00