Skip to content

Commit

Permalink
Merge branch 'master' into riccardo/update-cosmos
Browse files Browse the repository at this point in the history
  • Loading branch information
RiccardoM authored Feb 22, 2021
2 parents bd46141 + 553d077 commit a1774ec
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 21 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Unreleased

## Changes

- Updated Cosmos to v0.41.3 ([#359](https://github.com/desmos-labs/desmos/issues/359))
- Added Tendermint LD flag ([#360](https://github.com/desmos-labs/desmos/issues/360))

# Version 0.15.1

Expand Down
4 changes: 3 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
PACKAGES_NOSIMULATION=$(shell go list ./... | grep -v '/simulation')
PACKAGES_SIMTEST=$(shell go list ./... | grep '/simulation')
VERSION := $(shell echo $(shell git describe --always) | sed 's/^v//')
TENDERMINT_VERSION := $(shell go list -m github.com/tendermint/tendermint | sed 's:.* ::')
COMMIT := $(shell git log -1 --format='%H')
LEDGER_ENABLED ?= true
BINDIR ?= $(GOPATH)/bin
Expand Down Expand Up @@ -53,7 +54,8 @@ ldflags = -X 'github.com/cosmos/cosmos-sdk/version.Name=Desmos' \
-X 'github.com/cosmos/cosmos-sdk/version.AppName=desmos' \
-X 'github.com/cosmos/cosmos-sdk/version.Version=$(VERSION)' \
-X 'github.com/cosmos/cosmos-sdk/version.Commit=$(COMMIT)' \
-X "github.com/cosmos/cosmos-sdk/version.BuildTags=$(build_tags_comma_sep)"
-X "github.com/cosmos/cosmos-sdk/version.BuildTags=$(build_tags_comma_sep)" \
-X "github.com/tendermint/tendermint/version.TMCoreSemVer=$(TENDERMINT_VERSION)"

ifneq ($(GOSUM),)
ldflags += -X github.com/cosmos/cosmos-sdk/version.VendorDirHash=$(shell $(GOSUM) go.sum)
Expand Down
55 changes: 36 additions & 19 deletions docs/validators/common-problems.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ WantedBy=multi-user.target
```

## Problem #3: My validator is inactive/unbonding

When creating a validator you have the minimum self delegation amount using the `--min-self-delegation` flag. What this
means is that if your validator has less than that specific value of tokens self delegated, it will automatically enter
the unbonding state and then be marked as inactive.
Expand Down Expand Up @@ -86,47 +87,63 @@ To solve this, what you can do is getting more tokens delegated to it by followi

## Problem #4: My validator is jailed

If your validator is jailed it probably means that it have been inactive for a long period of time missing a consistent
If your validator is jailed it probably means that it has been inactive for a long period of time missing a consistent
number of blocks. We suggest you checking the Desmos daemon status to make sure it hasn't been interrupted by some
error.
If the service is running properly, it probably means that your node did not have internet access for a prolonged period
of time. In both cases, if there are no other errors to fix, you can unjail your validator by executing the following
command:
```bash
desmos tx slashing unjail --chain-id <chain_id> --from <your_key>
# Example
# desmos tx slashing unjail --chain-id morpheus-1001 --from validator
```
This will perform an unjail transaction that will set your validator as active again from the next block.
If the problem still persists, please make sure you
have [enough tokens delegated to your validator](#problem-3-my-validator-is-inactiveunbonding).
:::tip Last solution to fixing your node errors
If your service is running properly, you can also try and reset your `desmos` configuration by running the following
command:
```bash
rm $HOME/.desmos/config/config.toml
```
After doing so, remember to restart your validator service to apply the changes.
Once you have fixed the problems, you can unjail your validator by executing the following command:
After doing so, remember to restart your validator service to apply the changes:
```bash
desmos tx slashing unjail --chain-id <chain_id> --from <your_key>
# Example
# desmos tx slashing unjail --chain-id morpheus-1001 --from validator
systemctl restart desmosd
```
This will perform an unjail transaction that will set your validator as active again from the next block.
If the problem still persists, please make sure you have [enough tokens delegated to your validator](#problem-3-my-validator-is-inactiveunbonding).
:::
## Problem #5: The persistent peers do not work properly
Sometimes, it might happen that your node cannot connect to the persistent peers we have provided inside the [testnet repository](https://github.com/desmos-labs/morpheus). This happens because all nodes have a limit of inbound connections that they can accept. Once that limit is exceed, the nodes will not accept any more connections.
In order to solve this problem, there are two alternative way:
Sometimes, it might happen that your node cannot connect to the persistent peers we have provided inside
the [testnet repository](https://github.com/desmos-labs/morpheus). This happens because all nodes have a limit of
inbound connections that they can accept. Once that limit is exceed, the nodes will not accept any more connections.
1. use a seed node instead of a persistent peer, **OR**
In order to solve this problem, there are two alternative way:
1. use a seed node instead of a persistent peer, **OR**
2. use different persistent peers.
### Using a seed node
Seed nodes are a particular type of nodes that provide every validator with a set of peers to connect with, based on the current network status. What will happen when you use seed nodes is the following:
1. Your node will connect to a seed node.
2. The seed node will provide your node with a list of peers.
3. Your node will disconnect from the seed node and connect to the peers.
4. Your node will start syncing with the chain.
Seed nodes are a particular type of nodes that provide every validator with a set of peers to connect with, based on the
current network status. What will happen when you use seed nodes is the following:
1. Your node will connect to a seed node.
2. The seed node will provide your node with a list of peers.
3. Your node will disconnect from the seed node and connect to the peers.
4. Your node will start syncing with the chain.
In order to use this particular type of nodes, all you have to do is:
Expand Down

0 comments on commit a1774ec

Please sign in to comment.