Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
plugin
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
link33
plugin
Commits
e8bec742
Commit
e8bec742
authored
Nov 19, 2018
by
张振华
Committed by
vipwzw
Nov 20, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix lint
parent
66412ba2
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
13 additions
and
15 deletions
+13
-15
errors.go
plugin/store/kvmvcc/errors.go
+1
-1
kvmvccdb.go
plugin/store/kvmvcc/kvmvccdb.go
+9
-9
kvmvccdb_test.go
plugin/store/kvmvcc/kvmvccdb_test.go
+3
-5
No files found.
plugin/store/kvmvcc/errors.go
View file @
e8bec742
...
...
@@ -7,6 +7,6 @@ package kvmvccdb
import
"errors"
var
(
//Err
for StateHash lost
//Err
StateHashLost means err happened when query with StateHash
ErrStateHashLost
=
errors
.
New
(
"ErrStateHashLost"
)
)
plugin/store/kvmvcc/kvmvccdb.go
View file @
e8bec742
...
...
@@ -18,12 +18,12 @@ import (
var
klog
=
log
.
New
(
"module"
,
"kvmvccdb"
)
var
maxRollbackNum
=
200
// Set log level
// Set
LogLevel set
log level
func
SetLogLevel
(
level
string
)
{
clog
.
SetLogLevel
(
level
)
}
// disable log output
//
DisableLog
disable log output
func
DisableLog
()
{
klog
.
SetHandler
(
log
.
DiscardHandler
())
}
...
...
@@ -32,7 +32,7 @@ func init() {
drivers
.
Reg
(
"kvmvcc"
,
New
)
}
// KV
MVCC Store
// KV
MVCCStore provide kvmvcc store interface implementation
type
KVMVCCStore
struct
{
*
drivers
.
BaseStore
mvcc
dbm
.
MVCC
...
...
@@ -44,7 +44,7 @@ type subConfig struct {
EnableMVCCIter
bool
`json:"enableMVCCIter"`
}
//
new
KVMVCCStore module
//
New construct
KVMVCCStore module
func
New
(
cfg
*
types
.
Store
,
sub
[]
byte
)
queue
.
Module
{
bs
:=
drivers
.
NewBaseStore
(
cfg
)
var
kvs
*
KVMVCCStore
...
...
@@ -69,7 +69,7 @@ func (mvccs *KVMVCCStore) Close() {
klog
.
Info
(
"store kvdb closed"
)
}
//
s
et kvs with statehash to KVMVCCStore
//
S
et kvs with statehash to KVMVCCStore
func
(
mvccs
*
KVMVCCStore
)
Set
(
datas
*
types
.
StoreSet
,
sync
bool
)
([]
byte
,
error
)
{
hash
:=
calcHash
(
datas
)
kvlist
,
err
:=
mvccs
.
mvcc
.
AddMVCC
(
datas
.
KV
,
hash
,
datas
.
StateHash
,
datas
.
Height
)
...
...
@@ -99,7 +99,7 @@ func (mvccs *KVMVCCStore) Get(datas *types.StoreGet) [][]byte {
return
values
}
//
S
et kvs to the mem of KVMVCCStore module and return the StateHash
//
MemSet s
et kvs to the mem of KVMVCCStore module and return the StateHash
func
(
mvccs
*
KVMVCCStore
)
MemSet
(
datas
*
types
.
StoreSet
,
sync
bool
)
([]
byte
,
error
)
{
kvset
,
err
:=
mvccs
.
checkVersion
(
datas
.
Height
)
if
err
!=
nil
{
...
...
@@ -145,7 +145,7 @@ func (mvccs *KVMVCCStore) Rollback(req *types.ReqHash) ([]byte, error) {
return
req
.
Hash
,
nil
}
// Iterate
range
with Prefix by StateHash to get the latest version kvs.
// Iterate
RangeByStateHash travel
with Prefix by StateHash to get the latest version kvs.
func
(
mvccs
*
KVMVCCStore
)
IterateRangeByStateHash
(
statehash
[]
byte
,
start
[]
byte
,
end
[]
byte
,
ascending
bool
,
fn
func
(
key
,
value
[]
byte
)
bool
)
{
if
!
mvccs
.
enableMVCCIter
{
panic
(
"call IterateRangeByStateHash when disable mvcc iter"
)
...
...
@@ -173,12 +173,12 @@ func (mvccs *KVMVCCStore) IterateRangeByStateHash(statehash []byte, start []byte
listhelper
.
IteratorCallback
(
start
,
end
,
0
,
1
,
fn
)
}
// Proc supported events
// Proc
Event handles
supported events
func
(
mvccs
*
KVMVCCStore
)
ProcEvent
(
msg
queue
.
Message
)
{
msg
.
ReplyErr
(
"KVStore"
,
types
.
ErrActionNotSupport
)
}
//
S
et kvs to nil with StateHash
//
Del s
et kvs to nil with StateHash
func
(
mvccs
*
KVMVCCStore
)
Del
(
req
*
types
.
StoreDel
)
([]
byte
,
error
)
{
kvset
,
err
:=
mvccs
.
mvcc
.
DelMVCC
(
req
.
StateHash
,
req
.
Height
,
true
)
if
err
!=
nil
{
...
...
plugin/store/kvmvcc/kvmvccdb_test.go
View file @
e8bec742
...
...
@@ -260,7 +260,7 @@ func TestIterateRangeByStateHash(t *testing.T) {
assert
.
Nil
(
t
,
err
)
defer
os
.
RemoveAll
(
dir
)
// clean up
os
.
RemoveAll
(
dir
)
//删除已存在目录
store
_c
fg
,
sub
:=
newStoreCfgIter
(
dir
)
store
C
fg
,
sub
:=
newStoreCfgIter
(
dir
)
store
:=
New
(
storeCfg
,
sub
)
.
(
*
KVMVCCStore
)
assert
.
NotNil
(
t
,
store
)
...
...
@@ -771,11 +771,9 @@ func isDirExists(path string) bool {
if
err
!=
nil
{
return
os
.
IsExist
(
err
)
}
else
{
return
fi
.
IsDir
()
}
panic
(
"not reached"
)
return
fi
.
IsDir
(
)
}
//一次设定多对kv,测试一次的时间/多少对kv,来算平均一对kv的耗时。
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment