▫️Pyrin Hardfork: 10 BPS Update Guide

Introduction

The Pyrin network is undergoing a significant upgrade with the introduction of the 10 Blocks Per Second (10 BPS) update. This guide provides essential information for node operators, wallet users, and developers to navigate the transition smoothly.

This update brings major changes to the network's performance and functionality. Please read this guide carefully to ensure a smooth transition.

Key Changes

AspectBeforeAfter

DAA Score

1 per second

10 per second

Coin Maturity

100 blocks

1000 blocks

Block Rewards

17 PYI

1.7 PYI

Block Frequency

1 per second

10 per second

17 PYI block reward is an example, the current reward will be divided by 10.

Expect approximately 10x bandwidth changes for gRPC communication and P2P-related aspects of the node.

Hardfork Timeline

The hardfork is scheduled for:

  • Date: August 25, 2024

  • Time: 22:00 UTC

Preparation Checklist

To ensure a smooth transition, complete the following steps:

Node Transition Guide

From Go Node to Rust Node

Certainly, we can initiate the synchronization of the new Rust node while the existing one continues to operate.

  1. Start syncing the new Rust node:

    ./pyrin --utxoindex --disable-upnp --nogrpc --listen=127.0.0.1:15000
  2. Once synced, restart with your usual arguments.

  3. The binary name has changed from "pyipad" to "pyrin".

  4. Upon completion of the switch, you may proceed with the removal of the older database by executing the following command:

    rm -rf ~/.pyipad/

Switching from Rust node:

If you're already running a Rust node:

  1. Download the latest binary v0.14.2.2.

  2. Replace the existing binary.

  3. Restart the node (database path remains the same).

Wallet Updates

The PyrinWallet has been updated to version 0.14.2 to ensure compatibility with the 10 BPS update.

Download the latest wallet version from the official releases or review the code changes for a deeper understanding.

Coin Maturity Changes

  • Before: 100 blocks (approximately 100 seconds)

  • After: 1000 blocks (approximately 100 seconds)

Transaction Processing Changes

The increased block rate significantly impacts transaction processing. Here's a comparison:

Example: Sending 4,000 PYI (Click to expand)

Before (1 BPS):

$ pyrinwallet send /t pyrin:qq7azn24mx39vke6qsemt7t6843efj5l75st49r3s8j90wupj3uyzpxpd3w8c /send-amount 4000
Password:
Broadcasting 4 transactions
Transactions were sent successfully
Transaction ID(s):
 0e32640f77c2ca28017285c0278720c26349bfb48bb246d7455abfa0e76c42ce
 77aabae00217f1c08abea8dc4c5f7956a7bf1bfd3f2d3207bd7f212d348f9658
 620e1828493ab5bee12ae36252d15830e01237db6782861590f47ccd75dfe4bc
 d0dd9a3b3123905cec1e033fb6dc39fd8327137cf4a5426dc401d2c7db8637be

After (10 BPS):

$ pyrinwallet send /t pyrin:qq7azn24mx39vke6qsemt7t6843efj5l75st49r3s8j90wupj3uyzpxpd3w8c /send-amount 4000
Password:
Broadcasting 28 transactions
Transactions were sent successfully
Transaction ID(s):
 3b65723ed2972633a72b7e123e53b5984db58e73bddfb2c0caf2e6a699eb854c
 07d71f3060f215b408832cfc666f024be4315c6e60cf1d82800effb0ea91c347
 a158d8d9e344e217f00d9d94f643de1524cbdfc6ab0c42c6960fc90678a95a55
 9e5437efcb0708619353b09d006d6ab124d15db5547591c3848791de5a95436d
 c3dc523a12484f4d9c33ca81951e43134f67908a7afb43894ae9e5c99e8f6af4
 5a1d3cfc73f8505cf175310c19d8071152cfa78a25b1482afc0adf8f89aa99e3
 9275312eb2f170fcce77fda099f8ab292355917e4659448230912792e808292d
 3b94abe90fcb64a1070b8cf2865570d25c9ee5dbd66d6a8213bfd200d9d16d1f
 d9c607cbf54402cb90b000f4b74c089ae6b9e59f27eb58490354f2735af102a0
 dd1afcd43dfde2e0c22a5161672052a762f4bb4715e510d26b609694bf3cc2c2
 6a248008ab377e933b3c01d3b7f81e2df96ea31274c7ff01193c37a6d284572f
 384707c2e3a7a2668bce6bcd9aeab2925ad9fab86b8285d43ac6258a164190e2
 9fb13974953a6c2ea853c9c2edd37f3c03ec81c1ebc1b907c688c75728229a46
 db7bebe456234024f3305e98a78dd4b0aed7ba0743375c2d937a990c003be263
 eb4f88693350074b938df92a6ef64e75ad1a95d052a6a1f247dc7288b2614493
 6bdc44f4372daf65ea4ca34c1c0fe86281afcc2dadaa4681cd2f16d75a1d4980
 4896f8f3fa188588b76bee25e8783bcf3ee5807243790c8f834399a812d1be05
 5e270b07406bca695e23853abfb5e5a3ffd7b07e23d61ae4fd1659ed2b0c2b9a
 7c2bc877bc7f0054cc403422f4eaa2bf7fb434aa4ab7d40f8196638773f6b717
 b77ca19a587697b49338871fb5344d56d0384cf4e79df39e5287fc67f95a4a8b
 ef8c8fa18323a5deb1067d0be686d9db782133f7577f5a21b9146dee84db27e7
 de324b1180b68ee291fb7c8dd7fac564addb0334ba952a256197ed62b8dcd201
 7e39e369d1ef19c927d91f48145056d6e86126fd295bce83d930db38f07a5f77
 439c965b0fb4279ba9520ea191ac84cc15d132ab2e78316f550a664608125a37
 2c12b5cd00419d81733b1d5a26093bc8cf2083f805f822d22fa3c7aa8bd82e2c
 67295d9fb9551bd5da9753591a72806d3b739784313cf6bbc6c32d6bd0423895
 f324515c4c71e11e83f078dc6669411720225ebd916ddacd8f9e21ac1af16ae4
 07bb41087aef7d23487abf7ef4e0949f62104bdfee7b7087bee720ee9ec97da2

The increased transaction count is due to parallel processing of different UTXOs at the higher block rate.

Last updated