v1.1.12
Highlights
- Complete redesign of the progress messages:
- Tier2 internal stats are aggregated on Tier1 and sent out every 500ms (no more bursts)
- No need to collect events on client: a single message now represents the current state
- Message now includes list of running jobs and information about execution stages
- Performance metrics has been added to show which modules are executing slowly and where the time is spent (eth calls, store operations, etc.)
Upgrading client and server
Important
The client and servers will both need to be upgraded at the same time for the new progress messages to be parsed:
- The new Substreams servers will NOT send the old
modules
field as part of itsprogress
message, only the newrunning_jobs
,modules_stats
,stages
. - The new Substreams clients will NOT be able to decode the old progress information when connecting to older servers.
However, the actual data (and cursor) will work correctly between versions. Only incompatible progress information will be ignored.
CLI
Changed
-
Bumped
substreams
andsubstreams-ethereum
to latest insubstreams alpha init
. -
Improved error message when
<module_name>
is not received, previously this would lead to weird error message, now, if the input is likely a manifest, the error message will be super clear.
Fixed
- Fixed compilation errors when tracking some contracts when using
substreams alpha init
.
Added
substreams info
now takes an optional second parameter<output-module>
to show how the substreams modules can be divided into stages- Pack command: added
-c
flag to allow overriding of certain substreams.yaml values by passing in the path of a yaml file.
example yaml contents:package: name: my_custom_package_name network: arbitrum-one initialBlocks: module_name_1: 123123123 params: mod1: "custom_parameter"
Backend
Removed
- Removed
Config.RequestStats
, stats are now always enabled.