You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// Don't start an explicit transaction, we do this internally
53
+
// Don't start an explicit transaction, we do this internally.
54
54
let(result, updates)=tryawait pool.writeWithoutTransaction{ database in
55
+
// This installs a temporary update hook, which breaks if GRDB had its own. Currently, we rely on
56
+
// GRDB only installing update hooks for statements that need it (see https://github.com/groue/GRDB.swift/blob/36e30a6f1ef10e4194f6af0cff90888526f0c115/GRDB/Core/TransactionObserver.swift#L266-L275),
57
+
// note that `statementObservations` is set in `statementWillExecute` and cleared after a statement
58
+
// has completed or failed.
59
+
// So since we have exclusive access to the write connection here, no GRDB-active statement can run and we
60
+
// can safely install our own hooks.
61
+
// In the future, we would like to use high-level GRDB APIs for this instead. However, we're blocked
62
+
// by https://github.com/groue/GRDB.swift/issues/1863 on that.
0 commit comments