fix vbtkey bug
This commit is contained in:
parent
c8af06bbab
commit
246b811818
|
@ -569,7 +569,7 @@ func BenchmarkGet(b *testing.B) {
|
|||
b.ResetTimer()
|
||||
b.StartTimer()
|
||||
|
||||
execCount := 50
|
||||
execCount := 10
|
||||
b.N = len(l) * execCount
|
||||
|
||||
for i := 0; i < execCount; i++ {
|
||||
|
|
|
@ -393,10 +393,10 @@ func (tree *Tree) getArountNode(key interface{}) (result [3]*Node) {
|
|||
return
|
||||
}
|
||||
|
||||
func (tree *Tree) GetNode(value interface{}) (*Node, bool) {
|
||||
func (tree *Tree) GetNode(key interface{}) (*Node, bool) {
|
||||
|
||||
for n := tree.root; n != nil; {
|
||||
switch c := tree.Compare(value, n.value); c {
|
||||
switch c := tree.Compare(key, n.key); c {
|
||||
case -1:
|
||||
n = n.children[0]
|
||||
case 1:
|
||||
|
@ -407,7 +407,7 @@ func (tree *Tree) GetNode(value interface{}) (*Node, bool) {
|
|||
iter := tree.iter
|
||||
iter.Prev()
|
||||
for iter.Prev() {
|
||||
if tree.Compare(iter.cur.value, n.value) == 0 {
|
||||
if tree.Compare(iter.cur.key, n.key) == 0 {
|
||||
n = iter.cur
|
||||
} else {
|
||||
break
|
||||
|
|
|
@ -391,33 +391,6 @@ ALL:
|
|||
}
|
||||
}
|
||||
|
||||
func BenchmarkSkipListGet(b *testing.B) {
|
||||
sl := skiplist.New(skiplist.Int)
|
||||
l := loadTestData()
|
||||
b.N = len(l)
|
||||
|
||||
for _, v := range l {
|
||||
sl.Set(v, v)
|
||||
}
|
||||
|
||||
b.ResetTimer()
|
||||
b.StartTimer()
|
||||
|
||||
execCount := 5
|
||||
b.N = len(l) * execCount
|
||||
|
||||
for i := 0; i < execCount; i++ {
|
||||
for _, v := range l {
|
||||
e := sl.Get(v)
|
||||
var result [50]interface{}
|
||||
for i := 0; i < 50 && e != nil; i++ {
|
||||
result[i] = e.Value
|
||||
e = e.Next()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkGetRange(b *testing.B) {
|
||||
|
||||
}
|
||||
|
@ -444,6 +417,34 @@ func BenchmarkIndexRange(b *testing.B) {
|
|||
}
|
||||
}
|
||||
|
||||
func BenchmarkSkipListGet(b *testing.B) {
|
||||
sl := skiplist.New(skiplist.Int)
|
||||
l := loadTestData()
|
||||
b.N = len(l)
|
||||
|
||||
for _, v := range l {
|
||||
sl.Set(v, v)
|
||||
}
|
||||
|
||||
b.ResetTimer()
|
||||
b.StartTimer()
|
||||
|
||||
execCount := 5
|
||||
b.N = len(l) * execCount
|
||||
|
||||
for i := 0; i < execCount; i++ {
|
||||
for _, v := range l {
|
||||
sl.Get(v)
|
||||
// e := sl.Get(v)
|
||||
// var result [50]interface{}
|
||||
// for i := 0; i < 50 && e != nil; i++ {
|
||||
// result[i] = e.Value
|
||||
// e = e.Next()
|
||||
// }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func BenchmarkSkipListSet(b *testing.B) {
|
||||
|
||||
l := loadTestData()
|
||||
|
|
Loading…
Reference in New Issue
Block a user