# Синхронизация состояния

Для нового валидатора или полной ноды, синхронизация состояния помогает сократить время, требуемое для получения текущего блока, особенно когда история цепочки растет длительное время.

Это установки, которые мы используем в данный момент для обрезки и снимка состояния сети.\
Настройки обрезки: `default`\
Настройки снимка сети:

```
snapshot-interval = 1000
snapshot-keep-recent = 5
```

Если вы запускаете новую ноду, вы можете быстро получить снимок всех цепочек Sei сконфигурировав настройки синхронизации состояния до того момента, как запустите процесс seid. Ниже приведены инструкции как запустить синхронизацию состояния для вашей ноды вместе с конкретными конфигурациями для каждой сетевой среды Sei.

### Конфигурация синхронизации состояния (statesync)

Установите адрес RPC, который будет использоваться для получения statesync.

{% hint style="warning" %}
Адрес RPC может отличаться в зависимости от типа цепи
{% endhint %}

#### Стимулирующий тестнет Sei

```
export RPC_ADDRESS="ec2-54-241-77-154.us-west-1.compute.amazonaws.com:26657"
```

#### Sei Devnet

```
Будет доступен в скором времени!
```

Получение информации о текущем блоке:

```
export CURR_HEIGHT=$(curl -s $RPC_ADDRESS/block | jq -r .result.block.header.height) && echo $CURR_HEIGHT
```

Получение информации о номере и хэше для снимка предыдущих блоков (1000 в случае настроек по умолчанию для среза)  и их установка в `TRUST_HEIGHT` и `TRUST_HASH` соответственно:

```
export TRUST_HEIGHT=$(($CURR_HEIGHT-1000)) && echo $TRUST_HEIGHT
export TRUST_HASH=$(curl -s $RPC_ADDRESS/block?height=$TRUST_HEIGHT | jq -r '.result.block_id.hash') && echo $TRUST_HASH
```

Для обновления файла config.toml (`RPC_ADDRESS`, `TRUST_HEIGHT` и `TRUST_HASH`) используйте следующую команду:

```
sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\"$RPC_ADDRESS,$RPC_ADDRESS\"| ; \
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$TRUST_HEIGHT| ; \
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\"$TRUST_HASH\"|" $HOME/.sei/config/config.toml
```

Сбросьте историю цепочки:

```
seid tendermint unsafe-reset-all --home $HOME/.sei --keep-addr-book
```

Вам также может понадобиться установить ноду в качестве постоянного пира:&#x20;

{% hint style="warning" %}
Установка постоянного пира отличается от установки отдельной цепочки сети
{% endhint %}

#### Стимулирующий тестнет Sei

```
peers="c22205240014c51d9c5126c3840315cda50275fd@ec2-54-241-77-154.us-west-1.compute.amazonaws.com:26656"; \
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" $HOME/.sei/config/config.toml
```

#### Sei Devnet

```
Будет доступен в скором времени!
```

Теперь вы можете запустить свою цепь, и она должна найти снимки и сделать их. Проделав данную операцию один раз, вам может понадобиться отключить синхронизацию состояния, чтобы избежать проблем при перезагрузке цепи после обновлений в будущем:

```
sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1false|" $HOME/.sei/config/config.toml
```
