Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Upstream Updates - Mon Jan 20 00:14:10 UTC 2025 #1021

Closed
github-actions bot opened this issue Jan 20, 2025 · 0 comments
Closed

Upstream Updates - Mon Jan 20 00:14:10 UTC 2025 #1021

github-actions bot opened this issue Jan 20, 2025 · 0 comments
Assignees
Labels
AUTO: Upstream Updates Auto-generated from tracking upstream repos

Comments

@github-actions
Copy link
Contributor

SIMD

Opened

Closed

Agave Wiki

b74821adf21152e73e1f3559ab92c05ccd6717b8^..d99d6c869296001a02adfd33e5c3c02a3db9da62

diff --git "a/20243422002200134220022002-Testnet-Rollback-and-Restart.md" b/2024-01-02-Testnet-Rollback-and-Restart.md
similarity index 100%
rename from "20243422002200134220022002-Testnet-Rollback-and-Restart.md"
rename to 2024-01-02-Testnet-Rollback-and-Restart.md
diff --git a/2025-01-14-Testnet-Rollback-and-Restart.md b/2025-01-14-Testnet-Rollback-and-Restart.md
new file mode 100644
index 0000000..5ddf48b
--- /dev/null
+++ b/2025-01-14-Testnet-Rollback-and-Restart.md
@@ -0,0 +1,133 @@
+## Edit
+As of 2025-01-16 13:00 UTC testnet is back online. The instructions below are no longer relevant. Nodes that haven't yet joined the cluster will need to update their shred version, download a snapshot, and start normally:
+
+    --expected-shred-version 64475 n+
+***
+This testnet restart is NOT urgent. Follow these instructions when you have time, but don’t skip sleep or disrupt other plans for this.
+
+## Summary
+In order to restart testnet on v2.0.22 we need to roll back 8 feature gates that are not yet enabled on mainnet-beta.
+
+|Attribute|Value|
+|---------|-----|
+|Validator version|Agave: v2.0.22 (and v2.1.9 for creating the snapshot)|
+|Snapshot slot|312256120|
+|Restart slot|312256121|
+|Shred version|64475|
+|Expected bank hash|6A7U1X8WqnWRXWtqaxF15sSYHLT66j1ycBEyFigGwr2Z|
+
+
+## Step 1. Stop validator process if you haven’t already
+
+## Step 2: Install Agave v2.1.9
+This is necessary in order to create the correct snapshot in step 3.
+
+Agave:  `agave-install init v2.1.9`
+
+Frankendancer: Please switch to Agave for this restart and the subsequent upgrade/downgrade cycle.
+
+## Step 3. Create snapshot
+This command creates a snapshot but removes 1 activated v2.1 feature gate account.
+
+    agave-ledger-tool --ledger <ledger-path> create-snapshot n+    --incremental n+    --snapshot-archive-path  <snapshot-path> n+    --hard-fork 312256120 n+    --deactivate-feature-gate n+        3opE3EzAKnUftUDURkzMgwpNgimBAypW1mNDYH4x4Zg7 n+        CLCoTADvV64PSrnR6QXty6Fwrt9Xc6EdxSJE4wLRePjq n+        tSynMCspg4xFiCj1v3TDb4c7crMR5tSBhLz4sF7rrNA n+        4eohviozzEeivk1y9UbrnekbAFMDQyJz5JjA9Y6gyvky n+        2Fr57nzzkLYXW695UdDxDeR5fhnZWSttZeZYemrnpGFV n+        8U4skmMVnF6k2kMvrWbQuRUT3qQSiTYpSjqmhmgfthZu n+        CGB2jM8pwZkeeiXQ66kBMyBR6Np61mggL7XUsmLjVcrw n+        CJzY83ggJHqPGDq8VisV3U91jDJLuEaALZooBrXtnnLU n+    --enable-capitalization-change n+    --  312256120 <snapshot-path>
+
+
+The output should include this at (or near) the end:
+```
+    Successfully created snapshot for slot 312256121, hash 6A7U1X8WqnWRXWtqaxF15sSYHLT66j1ycBEyFigGwr2Z, base slot: <BASE_SLOT>>: /home/sol/ledger-snapshots/incremental-snapshot-<BASE_SLOT>-312256121-<SNAPSHOT_HASH>.tar.zst
+    Capitalization change: -7628160 lamports
+    Shred version: 64475
+```
+
+The capitalization change is expected because we deactivated a feature gate.
+
+Note that each operator's snapshot file name may contain different base slot number and hash, but
+* the bank hash should be 6A7U1X8WqnWRXWtqaxF15sSYHLT66j1ycBEyFigGwr2Z
+* the second slot number should be 312256121
+* the shred version should be 64475
+
+Once you have created a snapshot move all the other snapshots to a backup directory, so your snapshot directory contains one full snapshot and one incremental snapshot. Note that the <BASE_SLOT> in these two filenames should match.
+
+    snapshot-<BASE_SLOT>-<BASE_SNAPSHOT_HASH>.tar.zst
+    incremental-snapshot-<BASE_SLOT>-312256121-<SNAPSHOT_HASH>.tar.zst
+
+If you fail to create a snapshot see the appendix for possible fixes.
+
+## Step 4: Install Agave v2.0.22
+This is the version we want to use to restart the cluster.
+
+Agave:  `agave-install init v2.0.22`
+
+## Step 5: Update startup config and start your validator
+### Agave
+Add these arguments to your validator startup script:
+
+    --wait-for-supermajority 312256121 n+    --expected-shred-version 64475 n+    --expected-bank-hash 6A7U1X8WqnWRXWtqaxF15sSYHLT66j1ycBEyFigGwr2Z n+
+
+As it starts, the validator will load the snapshot for slot `312256121` and wait for 80% of the stake to come online before producing/validating new blocks.
+
+To confirm your restarted validator is correctly waiting for 80% stake, look for this periodic log message to confirm it is waiting:
+
+    INFO  solana_core::validator] Waiting for 80% of activated stake at slot 312256121 to be in gossip...
+
+And if you have RPC enabled, ask it for the current slot:
+
+    solana --url http://127.0.0.1:8899 slot
+
+Any number other than `312256121` means you did not complete the steps correctly.
+
+Once started you should see log entries for “active stake” visible in gossip and “waiting for 80% of stake” to be visible. You can track these to see how the stake progresses.
+
+
+***
+
+## Appendix (use this only if step 3 failed)
+
+If you get an error like this:
+
+    Error: Slot 312256120 is not available
+
+Or this:
+
+    Unable to process blockstore from starting slot <slot> to 312256120; the ending slot is less than the starting slot. The starting slot will be the latest snapshot slot, or genesis if the --no-snapshot flag is specified or if no snapshots are found.
+
+Your snapshots directory contains a snapshot that is for a slot `>312256120`. If you also have a snapshot for slot `<=312256120` then move snapshots for slots `>312256120` to a backup directory and run the `agave-ledger-tool` command again. If you do not have a snapshot for slot `<=312256120` then you will need to download a snapshot
+
+If you successfully created a snapshot, resume the instructions above starting at Step 4. If you are unable to create a snapshot, follow the instructions below on downloading a snapshot.
+
+If you couldn’t produce your snapshot locally follow these appendix steps
+
+### Step 1: Download a snapshot from a known validator
+
+If you are unable to generate a snapshot locally for slot `312256121` you will need to download one from a known validator. Add these lines to your startup script.
+
+    --known-validator 5D1fNXzvv5NjV1ysLjirC4WY92RNsVH18vjmcszZd8on n+    --expected-shred-version 64475 n+
+Remove the flag `--no-snapshot-fetch` in your startup script if it is present.
+
+### Step 2: After download, restart
+
+Verify that you have a new snapshot in your snapshot directory.  If the snapshot is done downloading, stop your validator process.
+
+Add the flag `--no-snapshot-fetch` to your startup script
+
+Resume the instructions above starting at Step 4.
diff --git a/Debugging-Consensus-Failures.md b/Debugging-Consensus-Failures.md
index 1112357..d2d5dcd 100644
--- a/Debugging-Consensus-Failures.md
+++ b/Debugging-Consensus-Failures.md
@@ -17,7 +17,7 @@ This section outlines how to find `FAIL_SLOT`; the rest of this wiki will refere
 The panic message mentioned above includes a slot number and thus makes finding the divergent slot trivial; just grep for `panic`.
 
 One important caveat to note though:
-- Suppose a node is running with a restart mechanism, such as auto-restart in systed
+- Suppose a node is running with a restart mechanism, such as auto-restart in systemd
 - On process restarts, the node will replay the block that it previously diverged during local ledger replay at startup
     - Local replay mode means that `ReplayStage` is NOT yet running, and replay results are NOT compared against the cluster
 - The node will not be aware that it replayed a block in "local mode" incorrectly
diff --git a/Feature-Gate-Tracker-Schedule.md b/Feature-Gate-Tracker-Schedule.md
index e318ff0..bdfcb31 100644
--- a/Feature-Gate-Tracker-Schedule.md
+++ b/Feature-Gate-Tracker-Schedule.md
@@ -15,32 +15,32 @@ The version floor is the current minimum supported software version for a cluste
 
 ## Current Schedule
 ### Pending Mainnet Beta Activation
-| Key | Version | Testnet | Devnet | Description | Owner |
-|-----|---------|---------|--------|-------------|-------|
-| 7bTK6Jis8Xpfrs8ZoUfiMDPazTcdPcTWheZFJTA5Z6X4 | v2.0.0 | 712 | 798 | SIMD0148: MoveStake and MoveLamports | 2501babe |
-| EQUMpNFr7Nacb1sva56xn1aLfBxppEoSBH8RRVdkcD1x | v2.1.1, v2.0.15 | 713 | 800 | Disable account loader special case | Lichtso |
-| zkhiy5oLowR7HY4zogXjCjeMXyruLqBwSWH21qcFtnv | v2.0.0 | 714 | 801 | Enable ZK ElGamal Proof program | samkim-crypto |
-| BtVN7YjDzNE6Dk7kTT7YTDgMNUZTNgiSJgsdzAeTg2jF | v2.0.0 | 715 | 802 | Removing unwanted rounding in fee calculation | tao-stones |
-| 3opE3EzAKnUftUDURkzMgwpNgimBAypW1mNDYH4x4Zg7 | v2.0.0 | 716 | 805 | Reward full priority fee to validators | tao-stones |
-| CLCoTADvV64PSrnR6QXty6Fwrt9Xc6EdxSJE4wLRePjq | v2.0.0 | 717 | 806 | SIMD0127: sol_get_sysvar | 2501babe |
-| tSynMCspg4xFiCj1v3TDb4c7crMR5tSBhLz4sF7rrNA | v2.0.0 | 718 |  | Add TowerSync ix | AshwinSekar |
-| 4eohviozzEeivk1y9UbrnekbAFMDQyJz5JjA9Y6gyvky | v2.0.7 | 719 | 816 | Feature Gate: Programify Feature Gate | buffalojoec |
+| Key | SIMD | Version | Testnet | Devnet | Description | Owner |
+|-----|------|---------|---------|--------|-------------|-------|
+| EQUMpNFr7Nacb1sva56xn1aLfBxppEoSBH8RRVdkcD1x |   | v2.1.1, v2.0.15 | 713 | 800 | Disable account loader special case | Lichtso |
+| zkhiy5oLowR7HY4zogXjCjeMXyruLqBwSWH21qcFtnv |   | v2.0.0 | 714 | 801 | Enable ZK ElGamal Proof program | samkim-crypto |
+| BtVN7YjDzNE6Dk7kTT7YTDgMNUZTNgiSJgsdzAeTg2jF |   | v2.0.0 | 715 | 802 | Removing unwanted rounding in fee calculation | tao-stones |
+| 3opE3EzAKnUftUDURkzMgwpNgimBAypW1mNDYH4x4Zg7 | 0096  | v2.0.0 | 716 | 805 | Reward full priority fee to validators | tao-stones |
+| CLCoTADvV64PSrnR6QXty6Fwrt9Xc6EdxSJE4wLRePjq | 0127  | v2.0.0 | 717 | 806 | SIMD0127: sol_get_sysvar | 2501babe |
+| tSynMCspg4xFiCj1v3TDb4c7crMR5tSBhLz4sF7rrNA |   | v2.0.0 | 718 |  | Add TowerSync ix | AshwinSekar |
+| 4eohviozzEeivk1y9UbrnekbAFMDQyJz5JjA9Y6gyvky | 0089  | v2.0.7 | 719 | 816 | Feature Gate: Programify Feature Gate | buffalojoec |
+| 2Fr57nzzkLYXW695UdDxDeR5fhnZWSttZeZYemrnpGFV | 0140  | v2.0.7 | 720 | 817 | Feature Gate: Migrate Config program to Core BPF | buffalojoec |
+| 8U4skmMVnF6k2kMvrWbQuRUT3qQSiTYpSjqmhmgfthZu | 0105  | v2.0.0 | 722 | 820 | Add new unwritable reserved accounts | jstarry |
 
 ### Pending Devnet Activation
-| Key | Version | Testnet | Devnet | Description | Owner |
-|-----|---------|---------|--------|-------------|-------|
-| 2Fr57nzzkLYXW695UdDxDeR5fhnZWSttZeZYemrnpGFV | v2.0.7 | 720 | 817 | Feature Gate: Migrate Config program to Core BPF | buffalojoec |
-| 8U4skmMVnF6k2kMvrWbQuRUT3qQSiTYpSjqmhmgfthZu | v2.0.0 | 722 |  | Add new unwritable reserved accounts | jstarry |
-| CGB2jM8pwZkeeiXQ66kBMyBR6Np61mggL7XUsmLjVcrw | v2.1.0 | 733 |  | skip rent rewrites | jeffwashington |
+| Key | SIMD | Version | Testnet | Devnet | Description | Owner |
+|-----|------|---------|---------|--------|-------------|-------|
+| CGB2jM8pwZkeeiXQ66kBMyBR6Np61mggL7XUsmLjVcrw | 0183  | v2.1.0 | 733 |  | skip rent rewrites | jeffwashington |
+| CJzY83ggJHqPGDq8VisV3U91jDJLuEaALZooBrXtnnLU | 0084  | v2.1 | 734 |  | Disable rent fees collection | HaoranYi |
 
 
 ### Pending Testnet Activation
-| Key | Version | Testnet | Devnet | Description | Owner |
-|-----|---------|---------|--------|-------------|-------|
-| CJzY83ggJHqPGDq8VisV3U91jDJLuEaALZooBrXtnnLU | v2.1 | 999999999 |  | Disable rent fees collection | HaoranYi |
-| sr11RdZWgbHTHxSroPALe6zgaT5A1K9LcE4nfsZS4gi | v2.1.1 | 999999999 |  | Enable secp256r1 precompile | samkim-crypto |
-| C97eKZygrkU4JxJsZdjgbUY7iQR7rKTr4NyDWo2E5pRm | v2.0.7 | 999999999 |  | Feature Gate: Migrate Address Lookup Table to Core BPF | buffalojoec |
-| FKe75t4LXxGaQnVHdUKM6DSFifVVraGZ8LyNo7oPwy1Z | v2.1.6 | 999999999 |  | Feature Gate: Syscall `GetEpochStake` | buffalojoec |
-| GJVDwRkUPNdk9QaK4VsU4g1N41QNxhy1hevjf8kz45Mq | v2.1.6 | 999999999 |  | Enable account data direct mapping | alessandrod, seanyoung |
-| ffecLRhhakKSGhMuc6Fz2Lnfq4uT9q3iu9ZsNaPLxPc | v2.0.0 | 999999999 |  | Vote only on full fec sets | AshwinSekar |
-| LtHaSHHsUge7EWTPVrmpuexKz6uVHZXZL6cgJa7W7Zn | v2.2.0 | 999999999 |  | Accounts Lt Hash | brooksprumo |
+| Key | SIMD | Version | Testnet | Devnet | Description | Owner |
+|-----|------|---------|---------|--------|-------------|-------|
+| sr11RdZWgbHTHxSroPALe6zgaT5A1K9LcE4nfsZS4gi | 0075  | v2.1.1 |  |  | Enable secp256r1 precompile | samkim-crypto |
+| C97eKZygrkU4JxJsZdjgbUY7iQR7rKTr4NyDWo2E5pRm | 0128  | v2.0.7 |  |  | Feature Gate: Migrate Address Lookup Table to Core BPF | buffalojoec |
+| FKe75t4LXxGaQnVHdUKM6DSFifVVraGZ8LyNo7oPwy1Z | 0133  | v2.1.6 |  |  | Feature Gate: Syscall `GetEpochStake` | buffalojoec |
+| GJVDwRkUPNdk9QaK4VsU4g1N41QNxhy1hevjf8kz45Mq |   | v2.1.6 |  |  | Enable account data direct mapping | alessandrod, seanyoung |
+| ffecLRhhakKSGhMuc6Fz2Lnfq4uT9q3iu9ZsNaPLxPc |   | v2.0.0 |  |  | Vote only on full fec sets | AshwinSekar |
+| LtHaSHHsUge7EWTPVrmpuexKz6uVHZXZL6cgJa7W7Zn | 0215  | v2.2.0 |  |  | Accounts Lt Hash | brooksprumo |
+| LTsNAP8h1voEVVToMNBNqoiNQex4aqfUrbFhRH3mSQ2 | 0220  | v2.2.0 |  |  | Snapshots use Accounts Lt Hash | brooksprumo |
diff --git a/_Sidebar.md b/_Sidebar.md
index 0255ee4..4c1dc7a 100644
--- a/_Sidebar.md
+++ b/_Sidebar.md
@@ -23,9 +23,10 @@
 * **Migration**
   * [Agave v2.0 Migration](Agave-v2.0-Transition-Guide)
 * **Restart Instructions**
-  * [2024-01-02 Testnet Restart](2024‐01‐02-Testnet-Rollback-and-Restart)
+  * [2024-01-02 Testnet Restart](2024-01-02-Testnet-Rollback-and-Restart)
   * [2024-08-26 Testnet Restart](2024-08-26-Testnet-Restart)
   * [2024-10-09 Testnet Restart](2024-10-09-Testnet-Rollback-and-Restart)
   * [2024-10-16 Testnet Restart](2024-10-16-Testnet-Rollback-and-Restart)
   * [2024-12-11 Testnet Restart](2024-12-11-Testnet-Restart)
+  * [2025-01-14 Testnet Restart](2025-01-14-Testnet-Rollback-and-Restart)
   
 No newline at end of file 
@github-actions github-actions bot added the AUTO: Upstream Updates Auto-generated from tracking upstream repos label Jan 20, 2025
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
AUTO: Upstream Updates Auto-generated from tracking upstream repos
Projects
None yet
Development

No branches or pull requests

1 participant