Fix: Wait for busy lock instead of instantly dropping the operation
This commit is contained in:
@@ -48,6 +48,7 @@ class SQLiteDatabase {
|
|||||||
static func open(path: String = URL.internalDB().relativePath) throws -> SQLiteDatabase {
|
static func open(path: String = URL.internalDB().relativePath) throws -> SQLiteDatabase {
|
||||||
var db: OpaquePointer?
|
var db: OpaquePointer?
|
||||||
if sqlite3_open_v2(path, &db, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE | SQLITE_OPEN_FULLMUTEX, nil) == SQLITE_OK {
|
if sqlite3_open_v2(path, &db, SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE | SQLITE_OPEN_FULLMUTEX, nil) == SQLITE_OK {
|
||||||
|
sqlite3_busy_timeout(db, 800)
|
||||||
return SQLiteDatabase(dbPointer: db)
|
return SQLiteDatabase(dbPointer: db)
|
||||||
} else {
|
} else {
|
||||||
defer { sqlite3_close_v2(db) }
|
defer { sqlite3_close_v2(db) }
|
||||||
|
|||||||
Reference in New Issue
Block a user