Missing stuff
This commit is contained in:
parent
05bc399afc
commit
8f70192bf3
24
ffiwrapper/unseal_ranges.go
Normal file
24
ffiwrapper/unseal_ranges.go
Normal file
@ -0,0 +1,24 @@
|
||||
package ffiwrapper
|
||||
|
||||
import (
|
||||
"golang.org/x/xerrors"
|
||||
|
||||
"github.com/filecoin-project/go-bitfield/rle"
|
||||
"github.com/filecoin-project/specs-actors/actors/abi"
|
||||
)
|
||||
|
||||
// merge gaps between ranges which are close to each other
|
||||
// TODO: more benchmarking to come up with more optimal number
|
||||
const mergeGaps = 32 << 20
|
||||
|
||||
// TODO const expandRuns = 16 << 20 // unseal more than requested for future requests
|
||||
|
||||
func computeUnsealRanges(unsealed rlepluslazy.RunIterator, offset UnpaddedByteIndex, size abi.UnpaddedPieceSize) (rlepluslazy.RunIterator, error) {
|
||||
todo := pieceRun(offset, size)
|
||||
todo, err := rlepluslazy.Subtract(todo, unsealed)
|
||||
if err != nil {
|
||||
return nil, xerrors.Errorf("compute todo-unsealed: %w", err)
|
||||
}
|
||||
|
||||
return rlepluslazy.JoinClose(todo, mergeGaps)
|
||||
}
|
5
storiface/ffi.go
Normal file
5
storiface/ffi.go
Normal file
@ -0,0 +1,5 @@
|
||||
package storiface
|
||||
|
||||
import "errors"
|
||||
|
||||
var ErrSectorNotFound = errors.New("sector not found")
|
Loading…
Reference in New Issue
Block a user