@@ -49,7 +49,7 @@ function executeBeginTransaction(db, resolve, reject) {
4949 db . run ( 'BEGIN TRANSACTION' , [ ] , function ( err ) {
5050 if ( err ) {
5151 env . logError ( 'Failed to BEGIN TRANSACTION' )
52- reject ( err )
52+ reject ( util . toErrorObject ( err ) )
5353 } else {
5454 env . logSql ( 'Executed BEGIN TRANSACTION' )
5555 resolve ( )
@@ -69,7 +69,11 @@ function delayBeginTransaction(db, resolve, reject) {
6969 if ( inTransaction ) {
7070 cnt ++
7171 if ( cnt > 100 ) {
72- reject ( 'Waited for 10s for transaction to relinquish, but it did not.' )
72+ reject (
73+ util . toErrorObject (
74+ 'Waited for 10s for transaction to relinquish, but it did not.'
75+ )
76+ )
7377 }
7478 } else {
7579 clearInterval ( interval )
@@ -117,7 +121,7 @@ async function dbCommit(db) {
117121 db . run ( 'COMMIT' , [ ] , function ( err ) {
118122 if ( err ) {
119123 env . logError ( 'Failed to COMMIT' )
120- reject ( err )
124+ reject ( util . toErrorObject ( err ) )
121125 } else {
122126 env . logSql ( 'Executed COMMIT' )
123127 inTransaction = false
@@ -149,7 +153,7 @@ async function dbRollback(db) {
149153 db . run ( 'ROLLBACK' , [ ] , function ( err ) {
150154 if ( err ) {
151155 env . logError ( 'Failed to ROLLBACK' )
152- reject ( err )
156+ reject ( util . toErrorObject ( err ) )
153157 } else {
154158 env . logSql ( 'Executed ROLLBACK' )
155159 inTransaction = false
@@ -173,7 +177,7 @@ async function dbRemove(db, query, args) {
173177 db . run ( query , args , function ( err ) {
174178 if ( err ) {
175179 env . logError ( `Failed remove: ${ query } : ${ args } ` )
176- reject ( err )
180+ reject ( util . toErrorObject ( err ) )
177181 } else {
178182 env . logSql ( 'Executed remove' , query , args )
179183 resolve ( this . changes )
@@ -196,7 +200,7 @@ async function dbUpdate(db, query, args) {
196200 db . run ( query , args , function ( err ) {
197201 if ( err ) {
198202 env . logError ( `Failed update: ${ query } : ${ args } ` )
199- reject ( err )
203+ reject ( util . toErrorObject ( err ) )
200204 } else {
201205 env . logSql ( 'Executed update' , query , args )
202206 resolve ( this . changes )
@@ -219,7 +223,7 @@ async function dbInsert(db, query, args) {
219223 db . run ( query , args , function ( err ) {
220224 if ( err ) {
221225 env . logError ( `Failed insert: ${ query } : ${ args } : ${ err } ` )
222- reject ( err )
226+ reject ( util . toErrorObject ( err ) )
223227 } else {
224228 env . logSql ( 'Executed insert' , query , args )
225229 resolve ( this . lastID )
@@ -242,7 +246,7 @@ async function dbAll(db, query, args) {
242246 db . all ( query , args , ( err , rows ) => {
243247 if ( err ) {
244248 env . logError ( `Failed all: ${ query } : ${ args } : ${ err } ` )
245- reject ( err )
249+ reject ( util . toErrorObject ( err ) )
246250 } else {
247251 env . logSql ( 'Executed all' , query , args )
248252 resolve ( rows )
@@ -265,7 +269,7 @@ async function dbGet(db, query, args, reportError = true) {
265269 db . get ( query , args , ( err , row ) => {
266270 if ( err ) {
267271 if ( reportError ) env . logError ( `Failed get: ${ query } : ${ args } : ${ err } ` )
268- reject ( err )
272+ reject ( util . toErrorObject ( err ) )
269273 } else {
270274 env . logSql ( 'Executed get' , query , args )
271275 resolve ( row )
@@ -287,19 +291,19 @@ async function dbMultiSelect(db, sql, arrayOfArrays) {
287291 env . logSql ( 'Preparing select' , sql , arrayOfArrays . length )
288292 let rows = [ ]
289293 let statement = db . prepare ( sql , function ( err ) {
290- if ( err ) reject ( err )
294+ if ( err ) reject ( util . toErrorObject ( err ) )
291295 for ( const singleArray of arrayOfArrays ) {
292296 statement . get ( singleArray , ( err2 , row ) => {
293297 if ( err2 ) {
294- reject ( err2 )
298+ reject ( util . toErrorObject ( err2 ) )
295299 } else {
296300 rows . push ( row )
297301 }
298302 } )
299303 }
300304 statement . finalize ( ( err3 ) => {
301305 if ( err3 ) {
302- reject ( err3 )
306+ reject ( util . toErrorObject ( err3 ) )
303307 } else {
304308 resolve ( rows )
305309 }
@@ -323,25 +327,32 @@ async function dbMultiInsert(db, sql, arrayOfArrays) {
323327 env . logSql ( 'Preparing insert' , sql , arrayOfArrays . length )
324328 let lastIds = [ ]
325329 let statement = db . prepare ( sql , function ( err ) {
326- if ( err )
327- reject ( 'Error while preparing sql statement: ' + sql + ', ' + err )
330+ if ( err ) {
331+ let errMessage =
332+ 'Error while preparing sql statement: ' + sql + ', ' + err
333+ reject ( util . toErrorObject ( err , errMessage ) )
334+ }
328335 for ( const singleArray of arrayOfArrays ) {
329336 statement . run ( singleArray , ( err2 ) => {
330- if ( err2 )
331- reject (
337+ if ( err2 ) {
338+ let err2Message =
332339 'Error while running sql statement: ' +
333- sql +
334- ', values: ' +
335- singleArray +
336- ', ' +
337- err2
338- )
340+ sql +
341+ ', values: ' +
342+ singleArray +
343+ ', ' +
344+ err2
345+ reject ( util . toErrorObject ( err2 , err2Message ) )
346+ }
339347 lastIds . push ( this . lastID )
340348 } )
341349 }
342350 statement . finalize ( ( err3 ) => {
343- if ( err3 )
344- reject ( 'Error while finalizing sql statement: ' + sql + ', ' + err3 )
351+ if ( err3 ) {
352+ let err3Message =
353+ 'Error while finalizing sql statement: ' + sql + ', ' + err3
354+ reject ( util . toErrorObject ( err3 , err3Message ) )
355+ }
345356 resolve ( lastIds )
346357 } )
347358 } )
@@ -362,7 +373,7 @@ async function closeDatabase(database) {
362373 return new Promise ( ( resolve , reject ) => {
363374 env . logSql ( 'About to close database.' )
364375 database . close ( ( err ) => {
365- if ( err ) return reject ( err )
376+ if ( err ) return reject ( util . toErrorObject ( err ) )
366377 env . logSql ( 'Database is closed.' )
367378 resolve ( )
368379 } )
@@ -395,7 +406,7 @@ async function initRamDatabase() {
395406 return new Promise ( ( resolve , reject ) => {
396407 let db = new sqlite . Database ( ':memory:' , ( err ) => {
397408 if ( err ) {
398- reject ( err )
409+ reject ( util . toErrorObject ( err ) )
399410 } else {
400411 env . logSql ( `Connected to the RAM database.` )
401412 resolve ( db )
@@ -416,7 +427,7 @@ async function initDatabase(sqlitePath) {
416427 return new Promise ( ( resolve , reject ) => {
417428 let db = new sqlite . Database ( sqlitePath , ( err ) => {
418429 if ( err ) {
419- reject ( err )
430+ reject ( util . toErrorObject ( err ) )
420431 } else {
421432 env . logSql ( `Connected to the database at: ${ sqlitePath } ` )
422433 resolve ( db )
@@ -531,7 +542,7 @@ async function performSchemaLoad(db, schemaContent) {
531542 if ( err ) {
532543 env . logError ( 'Failed to populate schema' )
533544 env . logError ( err )
534- reject ( err )
545+ reject ( util . toErrorObject ( err ) )
535546 }
536547 resolve ( )
537548 } )
0 commit comments