@@ -187,6 +187,9 @@ defmodule Exqlite.Connection do
187187 :deferred when transaction_status == :idle ->
188188 handle_transaction ( :begin , "BEGIN TRANSACTION" , state )
189189
190+ :transaction when transaction_status == :idle ->
191+ handle_transaction ( :begin , "BEGIN TRANSACTION" , state )
192+
190193 :immediate when transaction_status == :idle ->
191194 handle_transaction ( :begin , "BEGIN IMMEDIATE TRANSACTION" , state )
192195
@@ -207,7 +210,7 @@ defmodule Exqlite.Connection do
207210 handle_transaction ( :commit , "RELEASE SAVEPOINT exqlite_savepoint" , state )
208211
209212 mode
210- when mode in [ :deferred , :immediate , :exclusive ] and
213+ when mode in [ :deferred , :immediate , :exclusive , :transaction ] and
211214 transaction_status == :transaction ->
212215 handle_transaction ( :commit , "COMMIT" , state )
213216 end
@@ -227,7 +230,7 @@ defmodule Exqlite.Connection do
227230 end
228231
229232 mode
230- when mode in [ :deferred , :immediate , :exclusive ] and
233+ when mode in [ :deferred , :immediate , :exclusive , :transaction ] and
231234 transaction_status == :transaction ->
232235 handle_transaction ( :rollback , "ROLLBACK TRANSACTION" , state )
233236 end
0 commit comments