mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
Revert "database/sql: Use Tx.ctx in Tx non-context methods"
This reverts commit ef0f7fb92b.
Reason for revert: Altered behavior of Queries prior to Tx commit. See #20631.
Change-Id: I2548507c2935a7c60b92aae377dcc8e9aca66331
Reviewed-on: https://go-review.googlesource.com/45231
Run-TryBot: Daniel Theophanes <kardianos@gmail.com>
Reviewed-by: Bulat Gaifullin <gaifullinbf@gmail.com>
Reviewed-by: Michael Hudson-Doyle <michael.hudson@canonical.com>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
parent
0e9d293db7
commit
3820191839
2 changed files with 5 additions and 34 deletions
|
|
@ -439,35 +439,6 @@ func TestTxContextWait(t *testing.T) {
|
|||
waitForFree(t, db, 5*time.Second, 0)
|
||||
}
|
||||
|
||||
// TestTxUsesContext tests the transaction behavior when the tx was created by context,
|
||||
// but for query execution used methods without context
|
||||
func TestTxUsesContext(t *testing.T) {
|
||||
db := newTestDB(t, "people")
|
||||
defer closeDB(t, db)
|
||||
|
||||
ctx, cancel := context.WithTimeout(context.Background(), 15*time.Millisecond)
|
||||
defer cancel()
|
||||
|
||||
tx, err := db.BeginTx(ctx, nil)
|
||||
if err != nil {
|
||||
// Guard against the context being canceled before BeginTx completes.
|
||||
if err == context.DeadlineExceeded {
|
||||
t.Skip("tx context canceled prior to first use")
|
||||
}
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
// This will trigger the *fakeConn.Prepare method which will take time
|
||||
// performing the query. The ctxDriverPrepare func will check the context
|
||||
// after this and close the rows and return an error.
|
||||
_, err = tx.Query("WAIT|1s|SELECT|people|age,name|")
|
||||
if err != context.DeadlineExceeded {
|
||||
t.Fatalf("expected QueryContext to error with context deadline exceeded but returned %v", err)
|
||||
}
|
||||
|
||||
waitForFree(t, db, 5*time.Second, 0)
|
||||
}
|
||||
|
||||
func TestMultiResultSetQuery(t *testing.T) {
|
||||
db := newTestDB(t, "people")
|
||||
defer closeDB(t, db)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue