Documentation ¶
Index ¶
- func NewWrapper(cfg *config.Boost) ...
- type DisabledIndexProvider
- func (d DisabledIndexProvider) GetAdv(ctx context.Context, cid cid.Cid) (*schema.Advertisement, error)
- func (d DisabledIndexProvider) GetLatestAdv(ctx context.Context) (cid.Cid, *schema.Advertisement, error)
- func (d DisabledIndexProvider) NotifyPut(ctx context.Context, provider *peer.AddrInfo, contextID []byte, ...) (cid.Cid, error)
- func (d DisabledIndexProvider) NotifyRemove(ctx context.Context, providerID peer.ID, contextID []byte) (cid.Cid, error)
- func (d DisabledIndexProvider) Publish(ctx context.Context, advertisement schema.Advertisement) (cid.Cid, error)
- func (d DisabledIndexProvider) PublishLocal(ctx context.Context, advertisement schema.Advertisement) (cid.Cid, error)
- func (d DisabledIndexProvider) RegisterMultihashLister(lister provider.MultihashLister)
- func (d DisabledIndexProvider) Shutdown() error
- type Wrapper
- func (w *Wrapper) AnnounceBoostDeal(ctx context.Context, pds *types.ProviderDealState) (cid.Cid, error)
- func (w *Wrapper) AnnounceExtendedProviders(ctx context.Context) error
- func (w *Wrapper) DagstoreReinitBoostDeals(ctx context.Context) (bool, error)
- func (w *Wrapper) Enabled() bool
- func (w *Wrapper) IndexerAnnounceAllDeals(ctx context.Context) error
- func (w *Wrapper) Start(ctx context.Context)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewWrapper ¶
func NewWrapper(cfg *config.Boost) func(lc fx.Lifecycle, h host.Host, r repo.LockedRepo, dealsDB *db.DealsDB, legacyProv lotus_storagemarket.StorageProvider, prov provider.Interface, dagStore *dagstore.Wrapper, meshCreator idxprov.MeshCreator) (*Wrapper, error)
Types ¶
type DisabledIndexProvider ¶
type DisabledIndexProvider struct { }
func NewDisabledIndexProvider ¶
func NewDisabledIndexProvider() *DisabledIndexProvider
func (DisabledIndexProvider) GetAdv ¶
func (d DisabledIndexProvider) GetAdv(ctx context.Context, cid cid.Cid) (*schema.Advertisement, error)
func (DisabledIndexProvider) GetLatestAdv ¶
func (d DisabledIndexProvider) GetLatestAdv(ctx context.Context) (cid.Cid, *schema.Advertisement, error)
func (DisabledIndexProvider) NotifyRemove ¶
func (DisabledIndexProvider) Publish ¶
func (d DisabledIndexProvider) Publish(ctx context.Context, advertisement schema.Advertisement) (cid.Cid, error)
func (DisabledIndexProvider) PublishLocal ¶
func (d DisabledIndexProvider) PublishLocal(ctx context.Context, advertisement schema.Advertisement) (cid.Cid, error)
func (DisabledIndexProvider) RegisterMultihashLister ¶
func (d DisabledIndexProvider) RegisterMultihashLister(lister provider.MultihashLister)
func (DisabledIndexProvider) Shutdown ¶
func (d DisabledIndexProvider) Shutdown() error
type Wrapper ¶
type Wrapper struct {
// contains filtered or unexported fields
}
func (*Wrapper) AnnounceBoostDeal ¶
func (*Wrapper) AnnounceExtendedProviders ¶ added in v1.5.1
AnnounceExtendedProviders announces changes to Boost configuration in the context of retrieval methods.
The advertisement published by this function covers 3 cases:
1. bitswap is completely disabled: in which case an advertisement is published with empty extended providers that should wipe previous support on indexer side.
2. bitswap is enabled with public addresses: in which case publish an advertisement with extended providers records corresponding to the public addresses. Note, according the the IPNI spec, the host ID will also be added to the extended providers for signing reasons with empty metadata making a total of 2 extended provider records.
3. bitswap with boostd address: in which case public an advertisement with one extended provider record that just adds bitswap metadata.
Note that in any case one advertisement is published by boost on startup to reflect on bitswap configuration, even if the config remains the same. Future work should detect config change and only publish ads when config changes.