From 33e9be387bbc1748337f8e660f483b9bb98bf735 Mon Sep 17 00:00:00 2001 From: Pavel Djundik Date: Fri, 7 Aug 2020 12:10:32 +0300 Subject: [PATCH] Serialize create --- src/plugins/messageStorage/sqlite.js | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/plugins/messageStorage/sqlite.js b/src/plugins/messageStorage/sqlite.js index 5ba8828b..2679fa57 100644 --- a/src/plugins/messageStorage/sqlite.js +++ b/src/plugins/messageStorage/sqlite.js @@ -202,16 +202,18 @@ class MessageStorage { } // This channel was not found, create it and "recursively" call getChannelId again - this.database.run( - "INSERT INTO channels (network, channel) VALUES (?, ?)", - [network.uuid, channelName], - (err2) => { - if (err2) { - return reject(err2); - } + this.database.serialize(() => + this.database.run( + "INSERT INTO channels (network, channel) VALUES (?, ?)", + [network.uuid, channelName], + (err2) => { + if (err2) { + return reject(err2); + } - this.getChannelId(network, channel).then(resolve).catch(reject); - } + this.getChannelId(network, channel).then(resolve).catch(reject); + } + ) ); } )