lnwallet+htlcswitch: define expanded NumPendingUpdates
This commit squashes the below operations for a net result where we have an expanded capability of assessing pending updates. This is made possible by packing the components into Duals in the prior commits. We squash the operations to simplify review. htlcswitch+lnwallet: rename PendingLocalUpdateCount lnwallet: complete pending update queries API for LightningChannel lnwallet+htlcswitch: consolidate NumPendingUpdates using ChannelParty This commit makes the observation that we can cleanly define the NumPendingUpdates function using a single expression by taking advantage of the relevant fields being properly packed into Duals.
This commit is contained in:
2 files changed
+22
-16
No files matched your search
+8
-6
@@ -5357,16 +5357,18 @@ func (lc *LightningChannel) oweCommitment(issuer lntypes.ChannelParty) bool {
|
||||
return oweCommitment
|
||||
}
|
||||
|
||||
// PendingLocalUpdateCount returns the number of local updates that still need
|
||||
// to be applied to the remote commitment tx.
|
||||
func (lc *LightningChannel) PendingLocalUpdateCount() uint64 {
|
||||
// NumPendingUpdates returns the number of updates originated by whoseUpdates
|
||||
// that have not been committed to the *tip* of whoseCommit's commitment chain.
|
||||
func (lc *LightningChannel) NumPendingUpdates(whoseUpdates lntypes.ChannelParty,
|
||||
whoseCommit lntypes.ChannelParty) uint64 {
|
||||
|
||||
lc.RLock()
|
||||
defer lc.RUnlock()
|
||||
|
||||
lastRemoteCommit := lc.commitChains.Remote.tip()
|
||||
lastCommit := lc.commitChains.GetForParty(whoseCommit).tip()
|
||||
updateIndex := lc.updateLogs.GetForParty(whoseUpdates).logIndex
|
||||
|
||||
return lc.updateLogs.Local.logIndex -
|
||||
lastRemoteCommit.messageIndices.Local
|
||||
return updateIndex - lastCommit.messageIndices.GetForParty(whoseUpdates)
|
||||
}
|
||||
|
||||
// RevokeCurrentCommitment revokes the next lowest unrevoked commitment
|
||||
|
||||
Reference in new issue
Block a user