Skip to content

Commit

Permalink
Release v1.2.5
Browse files Browse the repository at this point in the history
  • Loading branch information
dshulyak committed Nov 9, 2023
1 parent 6c63aad commit 266ea93
Showing 1 changed file with 86 additions and 16 deletions.
102 changes: 86 additions & 16 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,47 @@

See [RELEASE](./RELEASE.md) for workflow instructions.

## v1.2.4
## Release v1.2.5

### Improvemennts

* [#5247](https://github.com/spacemeshos/go-spacemesh/pull/5247) exits cleanly without milseading spamming

Fixes a bug that would spam with misleading log on exit, such as below:

> 2023-11-09T11:13:27.835-0600 ERROR e524f.hare failed to update weakcoin {"node_id": "e524fce96f0a87140ba895b56a2e37e29581075302778a05dd146f4b74fce72e", "module": "hare", "lid": 0, "error": "set weak coin 0: database: no free connection"}

## Release v1.2.4

### Upgrade information

This release enables hare3 on testnet networks. And schedules plannned upgrade on mainnet.
Network will have downtime if majority of nodes don't upgrade before layer 35117.
Starting at layer 35117 network is expected to start using hare3, which reduces total bandwidth
requirements.
Current release is expected to be adopted by majority of the network participants before epoch 11 starts.
Nodes that do not update before epoch 11 risk their proposals being rejected by the rest of the network1.

## v1.2.2
### Highlights

### Features

### Improvements

* [#5118](https://github.com/spacemeshos/go-spacemesh/pull/5118) reduce number of tortoise results returned after recovery.

this is hotfix for a bug introduced in v1.2.0. in rare conditions node may loop with the following warning:
this is hotfix for a bug introduced in v1.2.0. in rare conditions node may loop with the following warning:

> 2023-10-02T15:28:14.002+0200 WARN fd68b.sync mesh failed to process layer from sync {"node_id": "fd68b9397572556c2f329f3e5af2faf23aef85dbbbb7e38447fae2f4ef38899f", "module": "sync", "sessionId": "29422935-68d6-47d1-87a8-02293aa181f3", "layer_id": 23104, "errmsg": "requested layer 8063 is before evicted 13102", "name": "sync"}
> 2023-10-02T15:28:14.002+0200 WARN fd68b.sync mesh failed to process layer from sync {"node_id":
"fd68b9397572556c2f329f3e5af2faf23aef85dbbbb7e38447fae2f4ef38899f", "module": "sync", "sessionId":
"29422935-68d6-47d1-87a8-02293aa181f3", "layer_id": 23104, "errmsg": "requested layer 8063 is before evicted 13102",
"name": "sync"}

* [#5091](https://github.com/spacemeshos/go-spacemesh/pull/5091) Separating PoST from the node into its own service.
* [#5061](https://github.com/spacemeshos/go-spacemesh/pull/5061) Proof generation is now done via a dedicated service
instead of the node.
* [#5154](https://github.com/spacemeshos/go-spacemesh/pull/5154) Enable TLS connections between node and PoST service.

PoST proofs are now done via a dedicated process / service that the node communicates with via gRPC. Smapp users can
continue to smesh as they used to. The node will automatically start the PoST service when it starts and will shut it
down when it shuts down.

* [#5138](https://github.com/spacemeshos/go-spacemesh/pull/5138) Bump poet to v0.9.7

Expand All @@ -33,6 +56,44 @@ this is hotfix for a bug introduced in v1.2.0. in rare conditions node may loop

Bounds the time required to restart a node.

* [#5171](https://github.com/spacemeshos/go-spacemesh/pull/5171) Set minimal active set according to the observed number
of atxs.

It will prevent ballots that under report observed atxs from spamming the network. It doesn't have impact on rewards.

* [#5169](https://github.com/spacemeshos/go-spacemesh/pull/5169) Support pruning activesets.

As of epoch 6 activesets storage size is about ~1.5GB. They are not useful after verifying eligibilities
for ballots in the current epoch and can be pruned.

Pruning will be enabled starting from epoch 8, e.g in epoch 8 we will prune all activesets for epochs 7 and below.
We should also run an archival node that doesn't prune them. To disable pruning we should configure

```json
"main": {
"prune-activesets-from": 4294967295
}
```

* [#5189](https://github.com/spacemeshos/go-spacemesh/pull/5189) Removed deprecated "Best Provider" option for initialization.

With v1.1.0 (<https://github.com/spacemeshos/go-spacemesh/releases/tag/v1.1.0>) selecting `-1` as `smeshing-opts-provider`
has been deprecated. This option has now been removed. Nodes that already finished initialization can leave this setting
empty, as it is not required any more to be set when no initialization is performed. For nodes that have not yet created
their initial proof the operator has to specify which provider to use. For Smapp users this is done automatically by
Smapp, users that do not use Smapp may use `postcli -printProviders` (<https://github.com/spacemeshos/post/releases>)
to list their OpenCL providers and associated IDs.

* [#5207](https://github.com/spacemeshos/go-spacemesh/pull/5207) Move the NiPoST state of a node into a new node-local database.

The node now uses 2 databases: `state.sql` which holds the node's view on the global state of the network and `node_state.sql`
which holds ephemeral data of the node.

With this change `post.bin` and `nipost_challenge.bin` files are no longer used. The node will automatically migrate
the data from disk and store it in the database. The migration will take place at the first startup after the upgrade.

* [#5209](https://github.com/spacemeshos/go-spacemesh/pull/5209) Removed API to update poet servers from SmesherService.

## v1.2.0

### Upgrade information
Expand All @@ -59,10 +120,13 @@ Support for old certificate sync protocol is dropped. This update is incompatibl

### Features

* [#5031](https://github.com/spacemeshos/go-spacemesh/pull/5031) Nodes will also fetch from PoET 112 for round 4 if they were able to register to PoET 110.
* [#5067](https://github.com/spacemeshos/go-spacemesh/pull/5067) dbstat virtual table can be read periodically to collect table/index sizes.
* [#5031](https://github.com/spacemeshos/go-spacemesh/pull/5031) Nodes will also fetch from PoET 112 for round 4 if they
were able to register to PoET 110.
* [#5067](https://github.com/spacemeshos/go-spacemesh/pull/5067) dbstat virtual table can be read periodically to collect
table/index sizes.

In order to enable provide following configuration:

```json
"main": {
"db-size-metering-interval": "10m"
Expand All @@ -76,7 +140,8 @@ In order to enable provide following configuration:
* [#5021](https://github.com/spacemeshos/go-spacemesh/pull/5021) Drop support for old certificate sync protocol.
* [#5024](https://github.com/spacemeshos/go-spacemesh/pull/5024) Active set will be saved in state separately from ballots.
* [#5032](https://github.com/spacemeshos/go-spacemesh/pull/5032) Ativeset data pruned from ballots.
* [#5035](https://github.com/spacemeshos/go-spacemesh/pull/5035) Fix possible nil pointer panic when node fails to persist nipost builder state.
* [#5035](https://github.com/spacemeshos/go-spacemesh/pull/5035) Fix possible nil pointer panic when node fails to persist
nipost builder state.
* [#5079](https://github.com/spacemeshos/go-spacemesh/pull/5079) increase atx cache to 50 000 to reduce disk reads.
* [#5083](https://github.com/spacemeshos/go-spacemesh/pull/5083) Disable beacon protocol temporarily.

Expand All @@ -91,7 +156,8 @@ active set will not be gossipped together with proposals. That was the main netw

### Features

* [#4969](https://github.com/spacemeshos/go-spacemesh/pull/4969) Nodes will also fetch from PoET 111 for round 3 if they were able to register to PoET 110.
* [#4969](https://github.com/spacemeshos/go-spacemesh/pull/4969) Nodes will also fetch from PoET 111 for round 3 if they
were able to register to PoET 110.

### Improvements

Expand All @@ -100,7 +166,8 @@ active set will not be gossipped together with proposals. That was the main netw
* `postdata_metadata.json` is now updated atomically to prevent corruption of the file.
* [#4956](https://github.com/spacemeshos/go-spacemesh/pull/4956) Active set is will not be gossipped in every proposal.
Active set usually contains list of atxs that targets current epoch. As the number of atxs grows this object grows as well.
* [#4993](https://github.com/spacemeshos/go-spacemesh/pull/4993) Drop proposals after generating a block. This limits growth of the state.
* [#4993](https://github.com/spacemeshos/go-spacemesh/pull/4993) Drop proposals after generating a block. This limits
growth of the state.

## v1.1.4

Expand All @@ -121,9 +188,11 @@ to set lower expected latency in the network, eventually reducing layer time.
* [#4879](https://github.com/spacemeshos/go-spacemesh/pull/4879) Makes majority calculation weighted for optimistic filtering.
The network will start using the new algorithm at layer 18_000 (2023-09-14 20:00:00 +0000 UTC)
* [#4923](https://github.com/spacemeshos/go-spacemesh/pull/4923) Faster ballot eligibility validation. Improves sync speed.
* [#4934](https://github.com/spacemeshos/go-spacemesh/pull/4934) Ensure state is synced before participating in tortoise consensus.
* [#4934](https://github.com/spacemeshos/go-spacemesh/pull/4934) Ensure state is synced before participating in tortoise
consensus.
* [#4939](https://github.com/spacemeshos/go-spacemesh/pull/4939) Make sure to fetch data from peers that are already connected.
* [#4936](https://github.com/spacemeshos/go-spacemesh/pull/4936) Use correct hare active set after node was synced. Otherwise applied layer may lag slightly behind the rest.
* [#4936](https://github.com/spacemeshos/go-spacemesh/pull/4936) Use correct hare active set after node was synced.
Otherwise applied layer may lag slightly behind the rest.

## v1.1.2

Expand Down Expand Up @@ -188,5 +257,6 @@ Doesn't affect direct peers. In order to disable:

* [#4882](https://github.com/spacemeshos/go-spacemesh/pull/4882) Increase cache size and parametrize datastore.
* [#4887](https://github.com/spacemeshos/go-spacemesh/pull/4887) Fixed crashes on API call.
* [#4871](https://github.com/spacemeshos/go-spacemesh/pull/4871) Add jitter to spread out requests to get poet proof and submit challenge
* [#4871](https://github.com/spacemeshos/go-spacemesh/pull/4871) Add jitter to spread out requests to get poet proof and
submit challenge
* [#4988](https://github.com/spacemeshos/go-spacemesh/pull/4988) Improve logging around communication with PoET services

0 comments on commit 266ea93

Please sign in to comment.