Skip to content

Commit 3a9be3f

Browse files
committed
regenerate llm-full.test
1 parent 361b48c commit 3a9be3f

1 file changed

Lines changed: 116 additions & 0 deletions

File tree

static/llms-full.txt

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8828,6 +8828,122 @@ FILE_LOG_LEVEL=Debug
88288828

88298829
#### Need any help? Post your questions in the [#Delegation-Program](https://discord.gg/ywDzwmGABT) channel on Discord.
88308830

8831+
---
8832+
url: /node-operators/downgrading-to-older-versions
8833+
---
8834+
8835+
# Downgrading to Older Versions
8836+
8837+
If you are running a Mina node on a version above 3.3.0 and need to roll back to 3.3.0 or below, you can convert the on-disk state in place using `mina-storage-converter`. This avoids a full rebootstrap from a remote S3 ledger bucket, which can save significant time.
8838+
8839+
## Debian/Ubuntu
8840+
8841+
### 1. Stop the Mina daemon
8842+
8843+
Ensure your Mina node is fully shut down before proceeding:
8844+
8845+
```sh
8846+
mina client stop daemon
8847+
```
8848+
8849+
Or however you normally stop your node process. Verify it is no longer running before continuing.
8850+
8851+
### 2. Install storage toolbox packages
8852+
8853+
Install the required toolbox packages that provide `mina-storage-converter` and the RocksDB scanners:
8854+
8855+
```sh
8856+
sudo apt-get install -y mina-daemon-storage-toolbox mina-daemon-recovery-storage-toolbox
8857+
```
8858+
8859+
### 3. Convert on-disk state
8860+
8861+
Run `mina-storage-converter` to convert the local database to the format expected by the older version.
8862+
8863+
```sh
8864+
mina-storage-converter \
8865+
--node-dir ${NODE_DIR} \
8866+
--current-scanner /usr/lib/mina/storage/*/${SOURCE_VERSION}/mina-rocksdb-scanner \
8867+
--stable-scanner /usr/lib/mina/storage/*/${TARGET_VERSION}/mina-rocksdb-scanner
8868+
```
8869+
8870+
Where:
8871+
8872+
- `NODE_DIR` is the path to your node's config directory. This is usually `~/.mina-config` if you haven't set it explicitly.
8873+
- `SOURCE_VERSION` is the version you are downgrading from.
8874+
- `TARGET_VERSION` is the version you are downgrading to (e.g. `3.3.0`).
8875+
8876+
The `*` wildcard lets bash resolve the RocksDB version directory automatically, so you don't need to know which RocksDB version is bundled with each Mina release.
8877+
8878+
The tool will prompt for confirmation before making changes.
8879+
8880+
### 4. Install the target version
8881+
8882+
Install the older Mina package. For example, to install 3.3.0:
8883+
8884+
```sh
8885+
sudo apt-get install --allow-downgrades -y mina-mainnet=3.3.0
8886+
```
8887+
8888+
### 5. Start the Mina daemon
8889+
8890+
Start your node as usual:
8891+
8892+
```sh
8893+
mina daemon ${YOUR_EXTRA_DAEMON_ARGS_HERE}
8894+
```
8895+
8896+
Your node should resume from the converted local state without needing to rebootstrap.
8897+
8898+
## Docker
8899+
8900+
On-disk state conversion is only possible if your `mina-config` directory is persisted as a volume outside the container (e.g. via `--mount "type=bind,source=$(pwd)/.mina-config,dst=/root/.mina-config"`).
8901+
8902+
:::caution
8903+
8904+
If your `mina-config` is not persisted outside of the container, there is no way to convert the on-disk state. You will need to rebootstrap from scratch after switching to the older image.
8905+
8906+
:::
8907+
8908+
Since the Docker image is a Debian/Ubuntu environment with the Mina Debian package installed, you can run the same conversion steps inside the container. The default `NODE_DIR` inside the container is `/root/.mina-config`.
8909+
8910+
### 1. Stop the running container
8911+
8912+
Assume your mina daemon container is running with name `mina-node`
8913+
8914+
```sh
8915+
docker stop mina-node
8916+
```
8917+
8918+
### 2. Install toolbox packages and run the converter
8919+
8920+
Use the current (newer) image to install the toolbox packages and run the conversion against your mounted `mina-config` volume:
8921+
8922+
```sh
8923+
docker run -it --rm \
8924+
--entrypoint bash \
8925+
--mount "type=bind,source=$(pwd)/.mina-config,dst=/root/.mina-config" \
8926+
minaprotocol/mina-daemon:${SOURCE_VERSION}-bullseye-mainnet \
8927+
-c "apt-get update && apt-get install -y mina-daemon-storage-toolbox mina-daemon-recovery-storage-toolbox && mina-storage-converter --node-dir /root/.mina-config --current-scanner /usr/lib/mina/storage/*/${SOURCE_VERSION}/mina-rocksdb-scanner --stable-scanner /usr/lib/mina/storage/*/${TARGET_VERSION}/mina-rocksdb-scanner"
8928+
```
8929+
8930+
### 3. Start a new container with the target version
8931+
8932+
Remove the old container and start with the target image:
8933+
8934+
```sh
8935+
docker rm mina-node
8936+
8937+
docker run --name mina-node -d \
8938+
-p 8302:8302 \
8939+
--restart=always \
8940+
--mount "type=bind,source=$(pwd)/.mina-config,dst=/root/.mina-config" \
8941+
minaprotocol/mina-daemon:${TARGET_VERSION}-bullseye-mainnet \
8942+
daemon ${YOUR_EXTRA_DAEMON_ARGS_HERE}
8943+
```
8944+
8945+
Your node should resume from the converted local state without needing to rebootstrap.
8946+
88318947
---
88328948
url: /node-operators/faq
88338949
---

0 commit comments

Comments
 (0)