Skip to content

Cardano DB Sync 13.1.0.0

Compare
Choose a tag to compare
@LaurenceIO LaurenceIO released this 20 Jan 18:32
· 920 commits to master since this release
13.1.0.0

This release delivers a number of enhancements and fixes, see below for details.

It also introduces a new way to enumerate releases, based on how it affects the db, details can be found here.

There is also a new postgres requirement for users that don't use docker-compose and have to manually config postgres:

It is advised to increase the maintenance_work_mem from Postgres config to 0.5GB - 1GB (default is 64MB).
Also use the default (2) or higher max_parallel_maintenance_workers (this parameter was introduced in postgres 11)

This release is compatible with Cardano Node 1.35.4.

Upgrade instructions

In order to upgrade from 13.0.x to 13.1.0.0 resyncing is not necessary and requires no special flags from the user. DBSync will automatically spawn a fixing procedure, which fixes old values related to plutus data. After that schema migrations will run on top of the existing db.
Full upgrade details can be found here.

The state snapshot files for this release can be found here:

Network Link to snapshot
Mainnet https://update-cardano-mainnet.iohk.io/cardano-db-sync/index.html#13.1/

Documentation for restoring from these files available at state-snapshot.md.

Requires ghc-8.10.x to build.

Static binaries download

Added

  • Added a new reverse_index table to speed up rollbacks
  • Added experimental flags skip-plutus-data-fix, only-plutus-data-fix, force-indexes to cardano-db-sync
  • Added experimental flags force-indexes, mock-fix for cardano-db-tool run-migrations command
  • Added new flag POSTGRES_ARGS (wih reccomended default values) to docker-compose.yml for customization of database settings

Improved

  • Avoids rollbacks on restarts, making them way faster [#1190]
  • Syncing speed is increased
  • Allows to migrate from previous 13.x releases without resync [#1172]
  • Delays the creation of most indexes while syncing. They are created when syncing is almost complete [#1293]
  • Reworked the way that rollback works, using reverse indexes.
  • Snapshot creation no longer rollbacks to the ledger snapshot file, so it's faster

Removed

  • Removed many unique keys that were never used [#1087]
  • Removed all foreign keys [#1082]
  • Columns stake_address.tx_id, cost_model.block_id are removed

Resolved

  • Creates a procedure that fixes old values related to plutus data [#1214] as the first step of migration [#1278]
  • Fixed Stake Pool metadata fetch error exceeded 512 bytes [#1270]
  • Bump iohk-nix to fetch the correct config for preview and preprod respin

Known issues

  • When --disable-ledger flag is enabled, the --state-dir option still needs to be provided, even though db-sync will completely ignore it.
  • Unhandled DCertGenesis certificate #290

Documentation

Cardano DB Sync Overview
Building and Running the Cardano DB Sync Node
Schema Management
Validation
State snapshot
Smash

Platforms

Sign off

Role Approval
Technical Lead ✔️
QA Engineer ✔️
Ops ✔️
Release Engineer ✔️