Skip to content

Commit

Permalink
Update group checksums when combining multiple deltas. (#5394)
Browse files Browse the repository at this point in the history
The function processing the oracle delta stream combines multiple deltas
into one to reduce the number of proposal. However, the group checksums
were not being updated, causing some group checksums update to be lost.

gRPC guarantees that the ordering of the deltas coming from the stream
so overwriting the group checksums is safe.

Tested by following the steps in #5368.

Fixes #5368
  • Loading branch information
martinmr committed May 8, 2020
1 parent 6900844 commit 025d14f
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions worker/groups.go
Expand Up @@ -947,6 +947,9 @@ func (g *groupi) processOracleDeltaStream() {
batch++
delta.Txns = append(delta.Txns, more.Txns...)
delta.MaxAssigned = x.Max(delta.MaxAssigned, more.MaxAssigned)
for gid, checksum := range more.GroupChecksums {
delta.GroupChecksums[gid] = checksum
}
default:
break SLURP
}
Expand Down

0 comments on commit 025d14f

Please sign in to comment.