diff options
author | Alex Yatskov <FooSoft@users.noreply.github.com> | 2017-07-27 14:28:28 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-27 14:28:28 -0700 |
commit | 9be66c7e7bb8599cabab33f1dcd4843ef32b9b14 (patch) | |
tree | e5cace6db33efe88b3547b5aa426e8f90a65f196 /ext/bg/js/database.js | |
parent | 390cb12896607144fcd1046950f3a2aa680db71b (diff) | |
parent | 1d5bdddfa62438e79384885eaa324c8ec4161229 (diff) |
Merge pull request #66 from lae/fix/bulk-import-failure
Import terms with transactional adds instead of bulkAdd
Diffstat (limited to 'ext/bg/js/database.js')
-rw-r--r-- | ext/bg/js/database.js | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/ext/bg/js/database.js b/ext/bg/js/database.js index 70aeb0d7..4829356c 100644 --- a/ext/bg/js/database.js +++ b/ext/bg/js/database.js @@ -189,20 +189,19 @@ class Database { }; const termsLoaded = (title, entries, total, current) => { - const rows = []; - for (const [expression, reading, tags, rules, score, ...glossary] of entries) { - rows.push({ - expression, - reading, - tags, - rules, - score, - glossary, - dictionary: title - }); - } - - return this.db.terms.bulkAdd(rows).then(() => { + return this.db.transaction('rw', this.db.terms, function() { + for (const [expression, reading, tags, rules, score, ...glossary] of entries) { + this.db.terms.add({ + expression, + reading, + tags, + rules, + score, + glossary, + dictionary: title + }); + } + }).then(() => { if (callback) { callback(total, current); } |