storage: addres review around nonces in sector states

This commit is contained in:
Łukasz Magiera 2019-12-08 17:06:08 +01:00
parent 1766987be5
commit ef0d45e406
2 changed files with 32 additions and 31 deletions

View File

@ -4,7 +4,6 @@ import (
"context"
"encoding/json"
"io"
"math"
"mime"
"net/http"
"os"
@ -204,7 +203,7 @@ func (sm *StorageMinerAPI) SectorsRefs(context.Context) (map[string][]api.Sealed
}
func (sm *StorageMinerAPI) SectorsUpdate(ctx context.Context, id uint64, state api.SectorState) error {
return sm.Miner.UpdateSectorState(ctx, id, math.MaxUint64, state)
return sm.Miner.UpdateSectorState(ctx, id, storage.NonceIncrement, state)
}
func (sm *StorageMinerAPI) WorkerQueue(ctx context.Context, cfg sectorbuilder.WorkerCfg) (<-chan sectorbuilder.WorkerTask, error) {

View File

@ -13,6 +13,8 @@ import (
"github.com/filecoin-project/lotus/lib/sectorbuilder"
)
const NonceIncrement = math.MaxUint64
type sectorUpdate struct {
newState api.SectorState
id uint64
@ -164,7 +166,7 @@ func (m *Miner) onSectorUpdated(ctx context.Context, update sectorUpdate) {
return xerrors.Errorf("update nonce too low, ignoring (%d < %d)", update.nonce, s.Nonce)
}
if update.nonce != math.MaxUint64 {
if update.nonce != NonceIncrement {
s.Nonce = update.nonce
} else {
s.Nonce++ // forced update
@ -193,35 +195,35 @@ func (m *Miner) onSectorUpdated(ctx context.Context, update sectorUpdate) {
/*
* Empty
| |
| v
*<- Packing <- incoming
| |
| v
*<- Unsealed <--> SealFailed
| |
| v
* PreCommitting <--> PreCommitFailed
| | ^
| v |
*<- PreCommitted ------/
| |||
| vvv v--> SealCommitFailed
*<- Committing
| | ^--> CommitFailed
| v ^
*<- CommitWait ---/
| |
| v
*<- Proving
|
v
FailedUnrecoverable
* Empty
| |
| v
*<- Packing <- incoming
| |
| v
*<- Unsealed <--> SealFailed
| |
| v
* PreCommitting <--> PreCommitFailed
| | ^
| v |
*<- PreCommitted ------/
| |||
| vvv v--> SealCommitFailed
*<- Committing
| | ^--> CommitFailed
| v ^
*<- CommitWait ---/
| |
| v
*<- Proving
|
v
FailedUnrecoverable
UndefinedSectorState <- ¯\_()_/¯
| ^
*---------------------/
UndefinedSectorState <- ¯\_()_/¯
| ^
*---------------------/
*/