-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Foreign key constraint breaks transaction state #364
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
As you can see in the upper example, |
seem to be fixed by #407 |
This PR here: #300 addresses a similar issue, but the fix is limited to cases where the error condition is
EDIT: Last paragraph rendered invalid. |
Compile Section Closes mattn#175 Compile Section Closes mattn#201 Compile Section Closes mattn#206 Compile Section Closes mattn#404 Compile Section Closes mattn#217 Compile Section Closes mattn#224 Compile Section Closes mattn#234 Compile Section Closes mattn#242 Feature table Closes mattn#255 Description Section Closes mattn#232 Golang:1.6 not supported Closes mattn#272 Golang:1.5 not supported + compilation section Closes mattn#283 usleep Implemented Closes mattn#285 FAQ Section Closes mattn#289 Compile Section closes mattn#295 FAQ Section Closes mattn#305 PR339 Closes mattn#318 mattn#321 Compilation Section Closes mattn#341 PR407 Closes mattn#364 Feature `sqlite_vtable` Closes mattn#393 Compile Section Closes mattn#416 sqlite_trace feature Closes mattn#433 Compilation Section Closes mattn#435 Compilation Section Closes mattn#443 Golang:1.6 Not Supported Closes mattn#445 Compilation Section Closes mattn#451 Compilation Section Closes mattn#467 Compilation Section Closes mattn#491 Compilation Section Closes mattn#495 Compilation Section Closes mattn#505 Compilation Section Closes mattn#557 Compilation Section Closes mattn#560
A foreign key constraint that's classified as deferred (see SQLite docs here) breaks the transaction state.
Example program:
For a more profound example with proper error checking:
fk_constraint_transaction.go.txt
According to the semantics of
database/sql
, a transaction must be finished after a call totx.Commit()
.However, according to SQLite documentation of deferred foreign key constraints:
A very similar issue was reported here: #184
The text was updated successfully, but these errors were encountered: