diff --git a/bench_test.go b/bench_test.go new file mode 100644 index 0000000000..1c29d54bc7 --- /dev/null +++ b/bench_test.go @@ -0,0 +1,30 @@ +package tidb + +import ( + "testing" + + "github.com/ngaut/log" +) + +func BenchmarkBasic(b *testing.B) { + store, err := NewStore("memory://bench") + if err != nil { + b.Fatal(err) + } + log.SetLevel(log.LOG_LEVEL_ERROR) + se, err := CreateSession(store) + if err != nil { + b.Fatal(err) + } + for i := 0; i < b.N; i++ { + rs, err := se.Execute("select 1") + if err != nil { + b.Fatal(err) + } + row, err := rs[0].Next() + if err != nil || row == nil { + b.Fatal(err) + } + rs[0].Close() + } +} diff --git a/session.go b/session.go index 64c7e57ca9..5906ef7abd 100644 --- a/session.go +++ b/session.go @@ -355,6 +355,7 @@ func (s *session) isAutocommit(ctx context.Context) bool { log.Errorf("Get global sys var error: %v", err) return false } + variable.GetSessionVars(ctx).Systems["autocommit"] = autocommit ok = true } if ok && (autocommit == "ON" || autocommit == "on" || autocommit == "1") {