good morning!!!!

Skip to content
Snippets Groups Projects
Commit 7bb5ac04 authored by Jeffrey Wilcke's avatar Jeffrey Wilcke
Browse files

xeth: added a transact mu

Added a transact mutex. The transact mutex will fix an issue where
transactions were created with the same nonce resulting in some
transactions being dropped. This happened when two concurrent calls
would call the `Transact` method (which is OK) which would both call
`GetNonce`. While the managed is thread safe it does not help us in this
case.
parent cd81356a
No related branches found
No related tags found
No related merge requests found
......@@ -89,8 +89,7 @@ type XEth struct {
messagesMu sync.RWMutex
messages map[int]*whisperFilter
// regmut sync.Mutex
// register map[string][]*interface{} // TODO improve return type
transactMu sync.Mutex
agent *miner.RemoteAgent
......@@ -952,8 +951,9 @@ func (self *XEth) Transact(fromStr, toStr, nonceStr, valueStr, gasStr, gasPriceS
}
*/
// TODO: align default values to have the same type, e.g. not depend on
// common.Value conversions later on
self.transactMu.Lock()
defer self.transactMu.Unlock()
var nonce uint64
if len(nonceStr) != 0 {
nonce = common.Big(nonceStr).Uint64()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment