From 8098cc2748e4f9425d4ba8ff2a166576e2aadc67 Mon Sep 17 00:00:00 2001 From: v Date: Wed, 28 Nov 2018 18:33:33 +0300 Subject: [PATCH] UNIQUE paths --- wikizimmer.js | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/wikizimmer.js b/wikizimmer.js index d000d94..0664267 100755 --- a/wikizimmer.js +++ b/wikizimmer.js @@ -454,23 +454,28 @@ class WikiItem { .then( () => this.localPath() ) } - storeMetadata ( ) { + async storeMetadata ( ) { const row = [ this.urlKey(), this.titleKey(), this.revision, this.mimeId(), ] - return wiki.db.run( - 'INSERT INTO articles ( urlKey, titleKey, revision, mimeId ) VALUES ( ?,?,?,? )', - row - ) - .then( res => { - //~ log( 'storeMetadata res', res ) + try { + const res = await wiki.db.run( + 'INSERT INTO articles ( urlKey, titleKey, revision, mimeId ) VALUES ( ?,?,?,? )', + row + ) + //~ log( 'storeMetadata res', row, res ) this.id = res.stmt.lastID ++ articleCount return this.id - }) + } catch ( err ) { + if ( err.code == "SQLITE_CONSTRAINT" ) + return null + fatal( 'storeMetadata error', err ) + } + } save () {