Merge branch 'master' into coocood/new-plan
This commit is contained in:
30
bench_test.go
Normal file
30
bench_test.go
Normal file
@ -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()
|
||||
}
|
||||
}
|
||||
@ -36,5 +36,5 @@ type Compactor interface {
|
||||
// OnDelete is the hook point on Txn.Delete.
|
||||
OnDelete(k Key)
|
||||
// Compact is the function removes the given key.
|
||||
Compact(ctx interface{}, k Key) error
|
||||
Compact(k Key) error
|
||||
}
|
||||
|
||||
@ -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") {
|
||||
|
||||
@ -125,7 +125,7 @@ func (gc *localstoreCompactor) checkExpiredKeysWorker() {
|
||||
gc.mu.Unlock()
|
||||
log.Info("GC trigger")
|
||||
for k := range m {
|
||||
err := gc.Compact(nil, []byte(k))
|
||||
err := gc.Compact([]byte(k))
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
@ -159,7 +159,7 @@ func (gc *localstoreCompactor) filterExpiredKeys(keys []kv.EncodedKey) []kv.Enco
|
||||
return ret
|
||||
}
|
||||
|
||||
func (gc *localstoreCompactor) Compact(ctx interface{}, k kv.Key) error {
|
||||
func (gc *localstoreCompactor) Compact(k kv.Key) error {
|
||||
keys, err := gc.getAllVersions(k)
|
||||
if err != nil {
|
||||
return errors.Trace(err)
|
||||
|
||||
Reference in New Issue
Block a user