Skip to content

Speed up horizon integration tests by caching network state #5803

@tamirms

Description

@tamirms

#5795 is a prototype which was able to speed up the horizon integration tests (normally the integration tests run in 65 minutes but the PR reduced the runtime down to 28 minutes). The main idea behind the PR is to cache state for both the validator and captive core so that spinning up a new stand alone network is much faster.

Previously, bootstrapping a stand alone network requires waiting for the following events:

  1. first history archives need to be published
  2. protocol upgrade needs to happen
  3. captive core in horizon needs to catchup and sync to the validator node in the standalone network
  4. captive core in rpc needs to catchup and sync to the validator node in the standalone network

If we cache the history archives, the validator db (both sqlite and bucketlist db), and captive core db (both sqlite and bucketlist db), we can fast forward through all milestones listed above.

We should develop this idea further and figure out the appropriate place for caching this state (maybe a github actions cache?).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    To Do

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions