Documentation ¶
Index ¶
- Variables
- func EVMProvider(db *sqlx.DB, chain evm.Chain, lggr logger.Logger, spec job.Job, ...) (evmrelay.OCR2KeeperProvider, error)
- func FilterNamesFromSpec20(spec *job.OCR2OracleSpec) (names []string, err error)
- func FilterNamesFromSpec21(spec *job.OCR2OracleSpec) (names []string, err error)
- func ValidatePluginConfig(cfg PluginConfig) error
- type Duration
- type Encoder20
- type Encoder21
- type PluginConfig
Constants ¶
This section is empty.
Variables ¶
View Source
var (
ErrNoChainFromSpec = fmt.Errorf("could not create chain from spec")
)
Functions ¶
func EVMProvider ¶
func FilterNamesFromSpec20 ¶ added in v2.3.0
func FilterNamesFromSpec20(spec *job.OCR2OracleSpec) (names []string, err error)
func FilterNamesFromSpec21 ¶ added in v2.3.0
func FilterNamesFromSpec21(spec *job.OCR2OracleSpec) (names []string, err error)
func ValidatePluginConfig ¶
func ValidatePluginConfig(cfg PluginConfig) error
Types ¶
type Encoder20 ¶ added in v2.5.0
type Encoder20 interface { ocr2keepers20.Encoder ocr2keepers20coordinator.Encoder ocr2keepers20polling.Encoder ocr2keepers20runner.Encoder ocr2keepers20coordinator.Encoder }
func EVMDependencies20 ¶ added in v2.3.0
type Encoder21 ¶ added in v2.4.0
type Encoder21 interface { ocr2keepers21.Encoder }
func EVMDependencies21 ¶ added in v2.3.0
func EVMDependencies21( spec job.Job, db *sqlx.DB, lggr logger.Logger, chain evm.Chain, pr pipeline.Runner, mc *models.MercuryCredentials, keyring ocrtypes.OnchainKeyring, ) (evmrelay.OCR2KeeperProvider, *kevm21.EvmRegistry, Encoder21, *kevm21.TransmitEventProvider, ocr2keepers21.LogEventProvider, ocr3types.OnchainKeyring[ocr2keepers21plugin.AutomationReportInfo], *kevm21.BlockSubscriber, ocr2keepers21.PayloadBuilder, ocr2keepers21.UpkeepStateUpdater, ocr2keepers21.ConditionalUpkeepProvider, error)
type PluginConfig ¶
type PluginConfig struct { // CacheExpiration is the duration of time a cached key is available. Use // this value to balance memory usage and RPC calls. A new set of keys is // generated with every block so a good setting might come from block time // times number of blocks of history to support not replaying reports. CacheExpiration Duration `json:"cacheExpiration"` // CacheEvictionInterval is a parameter for how often the cache attempts to // evict expired keys. This value should be short enough to ensure key // eviction doesn't block for too long, and long enough that it doesn't // cause frequent blocking. CacheEvictionInterval Duration `json:"cacheEvictionInterval"` // MaxServiceWorkers is the total number of go-routines allowed to make RPC // simultaneous calls on behalf of the sampling operation. This parameter // is 10x the number of available CPUs by default. The RPC calls are memory // heavy as opposed to CPU heavy as most of the work involves waiting on // network responses. MaxServiceWorkers int `json:"maxServiceWorkers"` // ServiceQueueLength is the buffer size for the RPC service queue. Fewer // workers or slower RPC responses will cause this queue to build up. // Adding new items to the queue will block if the queue becomes full. ServiceQueueLength int `json:"serviceQueueLength"` // ContractVersion is the contract version ContractVersion string `json:"contractVersion"` }
Click to show internal directories.
Click to hide internal directories.