Documentation ¶
Index ¶
- Variables
- type StartedDeals
- type Store
- func (s *Store) AddStartedDeals(c cid.Cid, proposals []cid.Cid) error
- func (s *Store) Close() error
- func (s *Store) Dequeue() (*ffs.Job, error)
- func (s *Store) Enqueue(j ffs.Job) error
- func (s *Store) Finalize(jid ffs.JobID, st ffs.JobStatus, jobError error, dealErrors []ffs.DealError) error
- func (s *Store) Get(jid ffs.JobID) (ffs.Job, error)
- func (s *Store) GetExecutingJobs() []ffs.JobID
- func (s *Store) GetStartedDeals(c cid.Cid) ([]cid.Cid, error)
- func (s *Store) RemoveStartedDeals(c cid.Cid) error
- func (s *Store) Watch(ctx context.Context, c chan<- ffs.Job, iid ffs.APIID) error
Constants ¶
This section is empty.
Variables ¶
var ( // ErrNotFound indicates the instance doesn't exist. ErrNotFound = errors.New("job not found") )
Functions ¶
This section is empty.
Types ¶
type StartedDeals ¶
type StartedDeals struct { Cid cid.Cid ProposalCids []cid.Cid }
StartedDeals describe deals that are currently waiting to have a final status.
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
Store is a Datastore implementation of JobStore, which saves state of scheduler Jobs.
func (*Store) AddStartedDeals ¶
AddStartedDeals is a temporal storage solution of deals that are started are being watched. It serves as a recovery point to reattach to fired deals when the scheduler was abruptly interrupted.
func (*Store) Dequeue ¶
Dequeue dequeues a Job which doesn't have have another Executing Job for the same Cid. Saying it differently, it's safe to execute. The returned job Status is automatically changed to Executing. If no jobs are available to dequeue it returns a nil *ffs.Job and no-error.
func (*Store) Enqueue ¶
Enqueue queues a new Job. If other Job for the same Cid is in Queued status, it will be automatically marked as Canceled.
func (*Store) Finalize ¶
func (s *Store) Finalize(jid ffs.JobID, st ffs.JobStatus, jobError error, dealErrors []ffs.DealError) error
Finalize sets a Job status to a final state, i.e. Success or Failed, with a list of Deal errors occurred during job execution.
func (*Store) GetExecutingJobs ¶
GetExecutingJobs returns the JobIDs of all Jobs in Executing status.
func (*Store) GetStartedDeals ¶
GetStartedDeals gets all stored started deals from Cid. If no started deals are present, an empty slice is returned.
func (*Store) RemoveStartedDeals ¶
RemoveStartedDeals removes all started deals from Cid.