From 83421e2742d41b8b71dc0b68cbafa534d6028518 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Magiera?= Date: Fri, 5 Apr 2024 18:39:49 +0200 Subject: [PATCH] fix: lmcli: make 'sectors list' DDO-aware (#11839) * fix: lmcli: make 'sectors list' DDO-aware * lmcli: Add ddo info to sectors status --- cli/spcli/sectors.go | 22 ++++++++++++++++++++++ cmd/lotus-miner/sectors.go | 9 +++++++++ 2 files changed, 31 insertions(+) diff --git a/cli/spcli/sectors.go b/cli/spcli/sectors.go index 5b8bf4139..1b230ce04 100644 --- a/cli/spcli/sectors.go +++ b/cli/spcli/sectors.go @@ -11,6 +11,7 @@ import ( "sort" "strconv" "strings" + "sync" "time" "github.com/fatih/color" @@ -109,6 +110,27 @@ func SectorsStatusCmd(getActorAddress ActorAddressGetter, getOnDiskInfo OnDiskIn fmt.Printf("OnTime:\t\t%v\n", status.OnTime) fmt.Printf("Early:\t\t%v\n", status.Early) + var pamsHeaderOnce sync.Once + + for pi, piece := range status.Pieces { + if piece.DealInfo == nil { + continue + } + if piece.DealInfo.PieceActivationManifest == nil { + continue + } + pamsHeaderOnce.Do(func() { + fmt.Printf("\nPiece Activation Manifests\n") + }) + + pam := piece.DealInfo.PieceActivationManifest + + fmt.Printf("Piece %d: %s %s verif-alloc:%+v\n", pi, pam.CID, types.SizeStr(types.NewInt(uint64(pam.Size))), pam.VerifiedAllocationKey) + for ni, notification := range pam.Notify { + fmt.Printf("\tNotify %d: %s (%x)\n", ni, notification.Address, notification.Payload) + } + } + } else { onChainInfo = true } diff --git a/cmd/lotus-miner/sectors.go b/cmd/lotus-miner/sectors.go index a3ffb8335..d0c13d333 100644 --- a/cmd/lotus-miner/sectors.go +++ b/cmd/lotus-miner/sectors.go @@ -310,6 +310,13 @@ var sectorsListCmd = &cli.Command{ } } + var pams int + for _, p := range st.Pieces { + if p.DealInfo != nil && p.DealInfo.PieceActivationManifest != nil { + pams++ + } + } + exp := st.Expiration if st.OnTime > 0 && st.OnTime < exp { exp = st.OnTime // Can be different when the sector was CC upgraded @@ -324,6 +331,8 @@ var sectorsListCmd = &cli.Command{ if deals > 0 { m["Deals"] = color.GreenString("%d", deals) + } else if pams > 0 { + m["Deals"] = color.MagentaString("DDO:%d", pams) } else { m["Deals"] = color.BlueString("CC") if st.ToUpgrade {