Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
validator
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
Odysseus
validator
Commits
2a731941
Commit
2a731941
authored
Feb 02, 2024
by
贾浩@五瓣科技
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update: add global workload response
parent
4eb077d6
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
8 additions
and
7 deletions
+8
-7
rpc.go
api/rpc.go
+3
-3
witness.go
core/witness.go
+5
-4
No files found.
api/rpc.go
View file @
2a731941
...
...
@@ -129,10 +129,10 @@ func getPendingWorkload(params []byte, resp *jsonrpcMessage) {
return
}
workload
:=
witness
.
GetPendingWorkload
(
common
.
HexToAddress
(
addressList
[
0
]))
workload
,
globalWorkload
:=
witness
.
GetPendingWorkload
(
common
.
HexToAddress
(
addressList
[
0
]))
temp
:=
map
[
string
]
interface
{}{
"workload"
:
workload
,
"workload"
:
workload
,
"global_workload"
:
globalWorkload
,
}
resp
.
Result
,
_
=
json
.
Marshal
(
temp
)
...
...
core/witness.go
View file @
2a731941
...
...
@@ -23,6 +23,7 @@ type Witness struct {
db
*
trie
.
Database
state
*
StateDB
pendingProof
map
[
common
.
Address
]
*
witnessv1
.
ValidatedProof
pendingWorkload
uint64
mtTreeCache
map
[
string
]
*
tree
.
MerkleTree
date
string
rpc
*
ChainRPC
...
...
@@ -89,9 +90,9 @@ func (w *Witness) AddPendingProof(miner common.Address, proofs []*witnessv1.Vali
}
for
_
,
proof
:=
range
proofs
{
workload
+=
proof
.
Workload
w
.
pendingWorkload
+=
proof
.
Workload
}
w
.
pendingProof
[
miner
]
=
&
witnessv1
.
ValidatedProof
{
Workload
:
workload
}
log
.
WithFields
(
log
.
Fields
{
"miner"
:
miner
.
Hex
(),
"proof_count"
:
len
(
proofs
),
...
...
@@ -382,14 +383,14 @@ func (w *Witness) GetMerkleProof(address common.Address) (workload uint64, proof
return
object
.
Workload
,
proofs
}
func
(
w
*
Witness
)
GetPendingWorkload
(
address
common
.
Address
)
(
workload
uint64
)
{
func
(
w
*
Witness
)
GetPendingWorkload
(
address
common
.
Address
)
(
workload
,
globalWorkload
uint64
)
{
w
.
Lock
()
proof
,
ok
:=
w
.
pendingProof
[
address
]
w
.
Unlock
()
if
!
ok
{
return
0
return
0
,
w
.
pendingWorkload
}
return
proof
.
Workload
return
proof
.
Workload
,
w
.
pendingWorkload
}
func
(
w
*
Witness
)
LoadMerkleProof
(
date
string
)
{
...
...
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