Coder Social home page Coder Social logo

networks's Introduction

Celestia Networks

This repository contains the configuration files for Celestia networks.

Please refer to the Celestia Docs for guides on running your own node. The configuration files genesis.json and addrbook.json are intended for use by Consensus nodes and should be placed in the node's home directory (by default $HOME/.celestia-app/config).

Networks

Name Type Chain ID Configs
Mocha Testnet mocha-4 mocha-4
Arabica Testnet arabica-11 arabica-11
Celestia Mainnet Beta celestia celestia

Software versions

The celestia-app and celestia-node versions in use on each network are visible on this Grafana dashboard.

Public Dashboards

DA Full and Light nodes might have troubles connecting to the networks, so you can checkout this Grafana dashboard to see health/uptime status of DA Bootstrappers (now celestia network only).

networks's People

Contributors

alextothemoon avatar bidon15 avatar blockpowercapital avatar bro-chain avatar easy2stake avatar evan-forbes avatar frannovo avatar ilhanu avatar itrocket-team avatar jbowen93 avatar kim201212 avatar kinrokinro avatar liamsi avatar llporzall avatar mabalaru avatar matilote avatar maxzonder avatar mindstyle85 avatar msevey avatar musalbas avatar nodebreaker0-0 avatar qubelabsio avatar rooiie avatar rootulp avatar santosdios avatar smuu avatar spidey-169 avatar staking4all avatar sysrex avatar yazzyyaz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

networks's Issues

Format of `peers.txt` changes across testnets

Problem

Some scripts downstream of this repo assume that peers.txt has trailing commas. Some scripts assume no trailing commas. Since this repo doesn't enforce a consistent format, it's not clear what scripts should assume.

[email protected]:26656,
daf2cecee2bd7f1b3bf94839f993f807c6b15fbf@celestia-testnet-peer.itrocket.net:11656
contains trailing commas

[email protected]:26656
43e9da043318a4ea0141259c17fcb06ecff816af@rpc-1.celestia.nodes.guru:43656
f9e950870eccdb40e2386896d7b6a7687a103c99@rpc-2.celestia.nodes.guru:43656
does not.

Consequently, I expect a command in the docs https://docs.celestia.org/nodes/full-consensus-node/#setup-the-p2p-networks to fail because

sed -i.bak -e "s/^persistent_peers =./persistent_peers = "$PERSISTENT_PEERS"/" $HOME/.celestia-app/config/config.toml

assumes that there are trailing commas.

Proposal

Describe a format for peers.txt. Enforce it consistently for all peers.txt files. IMO no trailing commas.

fix CI failures

Tasks

`auth failure: secret conn failed` when attempting to connect to mocha-4 peers

Context

I'm trying to run a mocha-4 consensus node. I'm using the persistent peers at https://github.com/celestiaorg/networks/blob/master/mocha-4/peers.txt

Problem

I'm observing

3:53PM INF Error reconnecting to peer. Trying again addr={"id":"f9e950870eccdb40e2386896d7b6a7687a103c99","ip":"88.99.219.120","port":43656} err="auth failure: secret conn failed: read tcp 10.239.124.37:64815->88.99.219.120:43656: i/o timeout" module=p2p tries=12
3:53PM INF Ensure peers module=pex numDialing=1 numInPeers=0 numOutPeers=0 numToDial=9
3:53PM INF Error reconnecting to peer. Trying again addr={"id":"34499b1ac473fbb03894c883178ecc83f0d6eaf6","ip":"64.227.18.169","port":26656} err="auth failure: secret conn failed: read tcp 10.239.124.37:64816->64.227.18.169:26656: i/o timeout" module=p2p tries=6
3:53PM INF Error reconnecting to peer. Trying again addr={"id":"43e9da043318a4ea0141259c17fcb06ecff816af","ip":"141.94.73.39","port":43656} err="auth failure: secret conn failed: read tcp 10.239.124.37:64820->141.94.73.39:43656: i/o timeout" module=p2p tries=6

Add CI task to verify peer connectivity

Context

There are several open PRs that add/remove/modify a peer address in peers.txt. Examples:

  1. #525
  2. #524
  3. #521
  4. #519
  5. #509
  6. #508
  7. #507

Problem

It's not immediately obvious how to verify the correctness of these PRs

Proposal

Add a CI check that verifies if a peer is accessible and running on the network that corresponds to the peers.txt that was modified in the PR.

bug: formatting output is not useful

When echoing the output here, it removes the whitespaces (incl. all useful formatting):

easy fix: echo "$formatted" instead.

Also, for some files, there are only some whitespace diff which is not visible from the output even when logged correctly as per above. To improve that, we can hexdump the first few bytes:

echo "Hexdump of file:"
head -c 60 "$file" | hexdump -C
echo "Hexdump of jq output:"
echo "$formatted" | head -c 60 | hexdump -C

That would e.g. give a hint on the diff here #401

Consider removing peer: `celestia.xprv.io`

Context

I'm attempting to run a full consensus node on celestia

Problem

When I set the full consensus node's persistent peers to the list of peers in https://github.com/celestiaorg/networks/blob/master/celestia/peers.txt I encounter

11:59AM ERR Error in peer's address err="error looking up host (celestia.xprv.io): lookup celestia.xprv.io: no such host" module=p2p

Proposal

Consider removing

when I remove it, I no longer encounter the error

Improve docs on howto join devnet

Some feedback gathered from discord (mainly):

The relation between the different binaries is unclear. It already popped up on other channels and again on discord.
Ideally, there was a brief overview in the readme here and a pointer to more details; these details could be in the celestia-node repo:

What is the relation between celesita-app & celestia-node?

Newcomers start following instructions from the top and the most relevant parts are only at the very end of the documentation:

phase1,2,3 is for building up local dev environment. If you want to participate devnet-2, just follow up phaseX.

For new ppl this fact is not clear. A quick mention of this in the beginning of the document will probably save newcomers an hour time.

Generate celestia addrbook.json

Context

celestia-app has a command to convert peers.txt into an addrbook.json

$ celestia-appd addrbook --help
Convert a list of peers into an address book.
The first argument (peers.txt) should contain a new line separated list of peers. The format for a peer is `id@ip:port` or `id@domain:port`.
The second argument (addrbook.json) should contain the complete file path, including both the directory path and the desired output file name, in the following format: `path/to/filename`. The address book is saved to the output file in JSON format.

Usage:
  celestia-appd addrbook peers.txt addrbook.json [flags]

Flags:
  -h, --help   help for addrbook

Proposal

Once https://github.com/celestiaorg/networks/blob/master/celestia/peers.txt is finalized, run the command and save the addrbook.json in https://github.com/celestiaorg/networks/blob/master/celestia/

Audit arabica genesis.json

Motivation

celestiaorg/celestia-app#1363 was caused by arabica-4's genesis.json not containing an expected parameter. If we recreate a genesis.json via:

celestia-appd init $CHAINID --chain-id $CHAINID

then the genesis file will contain all the parameters expected by celestia-app. However, for arabica-4 and arabica-5 we've manually copied + pasted the genesis.json to retain a list of account addresses that we fund at genesis time (i.e. a faucet address).

Problem

If we continue copy + pasting the genesis files, then we will fail to pick up on changes to default parameters or new parameters.

Proposal

  1. Audit the diff between arabica-5's genesis.json and a freshly created genesis.json
  2. Before we start a new chain, have the gensis.json in version control and audited by celestia-app team

Switch from FIFO to prioritized mempool

Context

We'd like validators to use the prioritized mempool see celestiaorg/celestia-app#590 (comment)

Problem

Arabica (and potentially most validators on Mamaki) use the default FIFO mempool.

Proposal

We'd like our testnets to be representative of the parameters used on mainnet so we should update the Arabica validator to use the prioritized mempool (i.e. version: "v1"). If possible, we should also update any default configuration so that as many validators as possible on Mamaki update to using the prioritized mempool.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.