Skip to main content

Node Release Team Update

· One min read
Samuel Leathers
Service Reliability Manager

Node Reelease Update

2022-10-19 - 2022-11-02

Executive Summary

The team is formalizing the new release process and team structure. Both preview/preprod environments have been reset, a temporary pv8 environment has been created for testing SECP before preview is updated to protocol version 8.

1.35.4 release candidates have been created and are being tested internally and externally.

Completed

In Progress

System Test Team Update

· One min read
Dorin Solomon
System Test Team Lead

High level summary

We have been focused on:

  • Fully opening our test results (on top of the existing tests & tools):
    See cardano-node-tests webpage.
  • Started to test and automate the new functionalities added in the 1.35.4-rc1 node tag
    See test results tracking page.
  • Made some improvements to the automated db-sync sync tests
    See db-sync tests.
  • Multiple cleanups and updates to the cardano-node-tests framework
  • Updated the nightly pipelines for the cardano-node-tests after the Babbage HF

DB Sync Team Update

· 2 min read
Kostas Dermentzis
Cardano DB-Sync Software Engineer

High level summary

The DBSync team is preparing a release which introduces schema simplifications, removes indexes, unique and foreign keys. It also provides a way to fix older values and migrates without the need to resync from genesis.

Lower level summary

Schema simplifications

Indexes, Unique and Foreign keys are removed in order to speedup syncing #1295 The same pr also introduces a different way to rollback, which doesn't rely on foreign keys and indexes.

Performance

The DBSync team ran a big number of benchmarks and investigated ways to speedup syncing. A conservative number of these will be included in the next release and the rest can be found in performance view.

Migrations and resyncing

The next release will be 13.1.0, it will enable a migration without the need to resync. It will also introduce a procedure that fixes bytes values of Datum and RedeemerData in existing databases #1294

Release

The release has been mostly cherry-picked from master #1294 and its scope can be seen release view

Hydra Team Update

· One min read
Sebastian Nagel
Hydra Team Lead

High level summary

This week, the hydra team completed several user experience improvements to the hydra-tui and hydra-node, and delivered a first version of persisted head states by publishing release version 0.8.0. Besides this, they met with researchers on topic of the HeadV1 specification and kicked-off work on the RFP for an external audit of the Hydra Head protocol and implementation.

What did the team achieve this week

  • Completed the UX improvements on the hydra-tui
  • Released version 0.8.0, which delivers a first version of persisted head states
  • Met with researchers on the HeadV1 specification
  • Started work on the RFP for our external audit

What are the goals of next week

  • Complete ADR18 implementation and get it merged
  • Start work on event-sourced persistence #580
  • Have a first plutus script gap closed #452
  • Revamp CI to use flakes and build macos artifacts (stretch goal: migrate to cicero for nix builds)

Network Team Update

· 4 min read
Marcin Szamotulski
Network Team Lead

High-level summary

The team has focused on debuging & fixing bugs for the P2P single relay release, which included

  • diagnosing, fixing and writing tests for a bug in peer-state-actions which fortunately hasn't been released;
  • diagnosing & preventing misconfiguration of DNS

We also focused on developing peer sharing. We also held a session with the scientists on eclipse evasion.

Detailed description

P2P Network Stack

During the past two weeks the team focused on p2p single relay release and peer sharing. We found and fixed an important bug recently introduced in one of the components of p2p networking stack (fortunately never released). Together with a fix, we designed a unit test diffusion simulation as well as quickcheck property test (both could reproduce it). We also changed the code in a way that if such a bug is reintroduced in the future, it will be obvious to diagnose. For more see:

Initial benchmarking run of the P2P code was executed. The results where unlike what we see on the mainnet. We found a possible misconfiguration of the cluster (caused by 0 TTL on domain names), which could be the direct cause of it. We wrote a PR which rules out such misconfiguration. We are awaiting on the next benchmarking results. See more at:

ouroboros-network#4106

We also started working on P2P single relay release. The PR ouroboros-network#4120 includes 108 patches cherry-picked from the master branch. We started working toward integration these changes against the release branch of cardano-node. Early next week we ought to be able to have an early version of cardano-node with non experimental P2P support!

For more detailed release plan please see P2P - Single Relay issue.

Consensus

We identified and fixed missing error reporting in consensus initialisation phase. See more at ouroboros-network#4015

Cardano Node

We also made changes in cardano-node in order to give better experience for node operators. This includes updating severities of some of the traces as well as implementing new format of the p2p topology file. For more see:

Peer Sharing

We continued working on implementation of peer sharing. We have an early implementation which will be reviewed and analysed in next weeks. We started working on cardano-node integration. We need PR #4392 to be merged before such integration will be able to land in cardano-node, although this is not blocking us currently. See more at:

Eclipse Evasion

We held a session which included Alexander Russel, Sandro Coretti-Drayton and Nick Frisby from the consensus team. We discussed high lever design of the eclipse evasion scheme, which is important for the design and implementation of ouroboros-genesis. We got a positive feedback from the researchers.

IO-Sim

In this period we made little progress towards releasing IO-Sim on Hackage. A single PR which added a few missing instances of the STM monad.

Open Source

We made sure the CI runs for PRs which comes from forks (which is important to accept contributions from 3rd parties).

Mithril Cardano Integration

We held initial discussions with Arnaud Bailly about possible path to integrate mithril to cardano-node and take advantage of the ouroboros-network diffusion layer.