[go: up one dir, main page]

Teztale: Collect attested slots from L1 node and push them to server

What

Parent MR: !20111

This MR makes the Teztale archiver fetch DAL attested slots from the L1 node and push these slots to the Teztale server via the /\<LEVEL\>/dal_attested_slots endpoint introduced in !20111.

Why

We want to know which slots have been attested at each level.

How

Steps followed:

  • The generic archiver pipeline (general_archiver) obtains the necessary attested slots information from the DAL node plugin;
  • The remote archiver (Server_archiver) sends the resulting per-delegate slots attested to Teztale at /<LEVEL>/dal_attested_slots;
  • For <= Seoul protocols, we don't change anything.

Manually testing the MR

Manual test on ghostnet:

  1. I started an L1 node on ghostnet (with the usual steps):
./octez-node run --data-dir ~/.tezos-node-ghostnet --rpc-addr 127.0.0.1:18733 --net-addr 127.0.0.1:19733

and waited for it to be bootstrapped.

  1. I started a Teztale server
./octez-teztale-server ./teztale.json
  1. I started a Teztale archiver to feed data from the L1 node to the server:
./octez-teztale-archiver --endpoint http://127.0.0.1:18733 feed http://gabriel:secret@127.0.0.1:8080
  1. I checked the Teztale DB:
sqlite3 teztale.db '
  SELECT
    o.level,
    HEX(o.hash),
    das.slot_index
  FROM dal_attested_slots AS das
  JOIN operations AS o ON o.id = das.operation
  ORDER BY o.level DESC, o.hash, das.slot_index
  LIMIT 5;
'
16716386|03AAA89D12E88F882E4380C99BE486C03EE4272AE97CE7AB4EFDB0965AD45BFC|8
16716386|03AAA89D12E88F882E4380C99BE486C03EE4272AE97CE7AB4EFDB0965AD45BFC|10
16716386|30432839CE84DB99FEBD4000771AF72FF24BB4744DEE19A5B867066181F173CE|8
16716386|30432839CE84DB99FEBD4000771AF72FF24BB4744DEE19A5B867066181F173CE|10
16716386|5D5AEA2382561784AC4C17C29213DABB5594CD9C7C70D907806C5C8EC9AE58B9|8

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by Gabriel Moise

Merge request reports

Loading