Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Geth-Modification
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
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
张蕾
Geth-Modification
Commits
580145e9
Commit
580145e9
authored
Sep 06, 2018
by
Elad
Committed by
Balint Gabor
Sep 06, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
swarm/storage: added metrics for db entry count (#17589)
parent
4c15ffff
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
25 additions
and
20 deletions
+25
-20
server_test.go
swarm/api/http/server_test.go
+19
-20
ldbstore.go
swarm/storage/ldbstore.go
+6
-0
No files found.
swarm/api/http/server_test.go
View file @
580145e9
...
...
@@ -893,14 +893,14 @@ func TestMethodsNotAllowed(t *testing.T) {
}{
{
url
:
fmt
.
Sprintf
(
"%s/bzz-list:/"
,
srv
.
URL
),
code
:
405
,
code
:
http
.
StatusMethodNotAllowed
,
},
{
url
:
fmt
.
Sprintf
(
"%s/bzz-hash:/"
,
srv
.
URL
),
code
:
405
,
code
:
http
.
StatusMethodNotAllowed
,
},
{
url
:
fmt
.
Sprintf
(
"%s/bzz-immutable:/"
,
srv
.
URL
),
code
:
405
,
code
:
http
.
StatusMethodNotAllowed
,
},
}
{
res
,
_
:=
http
.
Post
(
c
.
url
,
"text/plain"
,
bytes
.
NewReader
([]
byte
(
databytes
)))
...
...
@@ -958,7 +958,7 @@ func TestGet(t *testing.T) {
uri
:
fmt
.
Sprintf
(
"%s/"
,
srv
.
URL
),
method
:
"GET"
,
headers
:
map
[
string
]
string
{
"Accept"
:
"text/html"
},
expectedStatusCode
:
200
,
expectedStatusCode
:
http
.
StatusOK
,
assertResponseBody
:
"Swarm: Serverless Hosting Incentivised Peer-To-Peer Storage And Content Distribution"
,
verbose
:
false
,
},
...
...
@@ -966,7 +966,7 @@ func TestGet(t *testing.T) {
uri
:
fmt
.
Sprintf
(
"%s/"
,
srv
.
URL
),
method
:
"GET"
,
headers
:
map
[
string
]
string
{
"Accept"
:
"application/json"
},
expectedStatusCode
:
200
,
expectedStatusCode
:
http
.
StatusOK
,
assertResponseBody
:
"Swarm: Please request a valid ENS or swarm hash with the appropriate bzz scheme"
,
verbose
:
false
,
},
...
...
@@ -974,7 +974,7 @@ func TestGet(t *testing.T) {
uri
:
fmt
.
Sprintf
(
"%s/robots.txt"
,
srv
.
URL
),
method
:
"GET"
,
headers
:
map
[
string
]
string
{
"Accept"
:
"text/html"
},
expectedStatusCode
:
200
,
expectedStatusCode
:
http
.
StatusOK
,
assertResponseBody
:
"User-agent: *
\n
Disallow: /"
,
verbose
:
false
,
},
...
...
@@ -982,38 +982,37 @@ func TestGet(t *testing.T) {
uri
:
fmt
.
Sprintf
(
"%s/nonexistent_path"
,
srv
.
URL
),
method
:
"GET"
,
headers
:
map
[
string
]
string
{},
expectedStatusCode
:
404
,
expectedStatusCode
:
http
.
StatusNotFound
,
verbose
:
false
,
},
{
uri
:
fmt
.
Sprintf
(
"%s/bzz:asdf/"
,
srv
.
URL
),
method
:
"GET"
,
headers
:
map
[
string
]
string
{},
expectedStatusCode
:
404
,
expectedStatusCode
:
http
.
StatusNotFound
,
verbose
:
false
,
},
{
uri
:
fmt
.
Sprintf
(
"%s/tbz2/"
,
srv
.
URL
),
method
:
"GET"
,
headers
:
map
[
string
]
string
{},
expectedStatusCode
:
404
,
expectedStatusCode
:
http
.
StatusNotFound
,
verbose
:
false
,
},
{
uri
:
fmt
.
Sprintf
(
"%s/bzz-rack:/"
,
srv
.
URL
),
method
:
"GET"
,
headers
:
map
[
string
]
string
{},
expectedStatusCode
:
404
,
expectedStatusCode
:
http
.
StatusNotFound
,
verbose
:
false
,
},
{
uri
:
fmt
.
Sprintf
(
"%s/bzz-ls"
,
srv
.
URL
),
method
:
"GET"
,
headers
:
map
[
string
]
string
{},
expectedStatusCode
:
404
,
expectedStatusCode
:
http
.
StatusNotFound
,
verbose
:
false
,
},
}
{
}}
{
t
.
Run
(
"GET "
+
testCase
.
uri
,
func
(
t
*
testing
.
T
)
{
res
,
body
:=
httpDo
(
testCase
.
method
,
testCase
.
uri
,
nil
,
testCase
.
headers
,
testCase
.
verbose
,
t
)
if
res
.
StatusCode
!=
testCase
.
expectedStatusCode
{
...
...
@@ -1060,7 +1059,7 @@ func TestModify(t *testing.T) {
uri
:
fmt
.
Sprintf
(
"%s/bzz:/%s"
,
srv
.
URL
,
hash
),
method
:
"DELETE"
,
headers
:
map
[
string
]
string
{},
expectedStatusCode
:
200
,
expectedStatusCode
:
http
.
StatusOK
,
assertResponseBody
:
"8b634aea26eec353ac0ecbec20c94f44d6f8d11f38d4578a4c207a84c74ef731"
,
verbose
:
false
,
},
...
...
@@ -1068,21 +1067,21 @@ func TestModify(t *testing.T) {
uri
:
fmt
.
Sprintf
(
"%s/bzz:/%s"
,
srv
.
URL
,
hash
),
method
:
"PUT"
,
headers
:
map
[
string
]
string
{},
expectedStatusCode
:
405
,
expectedStatusCode
:
http
.
StatusMethodNotAllowed
,
verbose
:
false
,
},
{
uri
:
fmt
.
Sprintf
(
"%s/bzz-raw:/%s"
,
srv
.
URL
,
hash
),
method
:
"PUT"
,
headers
:
map
[
string
]
string
{},
expectedStatusCode
:
405
,
expectedStatusCode
:
http
.
StatusMethodNotAllowed
,
verbose
:
false
,
},
{
uri
:
fmt
.
Sprintf
(
"%s/bzz:/%s"
,
srv
.
URL
,
hash
),
method
:
"PATCH"
,
headers
:
map
[
string
]
string
{},
expectedStatusCode
:
405
,
expectedStatusCode
:
http
.
StatusMethodNotAllowed
,
verbose
:
false
,
},
{
...
...
@@ -1090,7 +1089,7 @@ func TestModify(t *testing.T) {
method
:
"POST"
,
headers
:
map
[
string
]
string
{},
requestBody
:
[]
byte
(
"POSTdata"
),
expectedStatusCode
:
200
,
expectedStatusCode
:
http
.
StatusOK
,
assertResponseHeaders
:
map
[
string
]
string
{
"Content-Length"
:
"64"
},
verbose
:
false
,
},
...
...
@@ -1099,7 +1098,7 @@ func TestModify(t *testing.T) {
method
:
"POST"
,
headers
:
map
[
string
]
string
{},
requestBody
:
[]
byte
(
"POSTdata"
),
expectedStatusCode
:
200
,
expectedStatusCode
:
http
.
StatusOK
,
assertResponseHeaders
:
map
[
string
]
string
{
"Content-Length"
:
"128"
},
verbose
:
false
,
},
...
...
@@ -1148,7 +1147,7 @@ func TestMultiPartUpload(t *testing.T) {
}
res
,
body
:=
httpDo
(
"POST"
,
url
,
buf
,
headers
,
verbose
,
t
)
if
res
.
StatusCode
!=
200
{
if
res
.
StatusCode
!=
http
.
StatusOK
{
t
.
Fatalf
(
"expected POST multipart/form-data to return 200, but it returned %d"
,
res
.
StatusCode
)
}
if
len
(
body
)
!=
64
{
...
...
swarm/storage/ldbstore.go
View file @
580145e9
...
...
@@ -48,6 +48,10 @@ const (
maxGCitems
=
5000
// max number of items to be gc'd per call to collectGarbage()
)
var
(
dbEntryCount
=
metrics
.
NewRegisteredCounter
(
"ldbstore.entryCnt"
,
nil
)
)
var
(
keyIndex
=
byte
(
0
)
keyOldData
=
byte
(
1
)
...
...
@@ -495,6 +499,7 @@ func (s *LDBStore) delete(idx uint64, idxKey []byte, po uint8) {
batch
.
Delete
(
idxKey
)
batch
.
Delete
(
getDataKey
(
idx
,
po
))
s
.
entryCnt
--
dbEntryCount
.
Dec
(
1
)
s
.
bucketCnt
[
po
]
--
cntKey
:=
make
([]
byte
,
2
)
cntKey
[
0
]
=
keyDistanceCnt
...
...
@@ -566,6 +571,7 @@ func (s *LDBStore) doPut(chunk *Chunk, index *dpaDBIndex, po uint8) {
index
.
Idx
=
s
.
dataIdx
s
.
bucketCnt
[
po
]
=
s
.
dataIdx
s
.
entryCnt
++
dbEntryCount
.
Inc
(
1
)
s
.
dataIdx
++
cntKey
:=
make
([]
byte
,
2
)
...
...
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