ledger: track visited tx in nested accept() func
@@ -80,8 +80,10 @@ func (ledger *Ledger) updatedAcceptedTransactions() {
ledger.Store.Put(merge(BucketAccepted, writeBytes(popped)), writeBoolean(false))
ledger.Store.ForEachChild(symbol, func(child string) error {
+ if _, seen := visited[child]; !seen {
queue = append(queue, child)
visited[child] = struct{}{}
+ }
return nil
})
