Skip to content

Tendermint upgrade#2666

Merged
eckelj merged 14 commits intomasterfrom
tm_upgrade
Oct 7, 2019
Merged

Tendermint upgrade#2666
eckelj merged 14 commits intomasterfrom
tm_upgrade

Conversation

@eckelj
Copy link
Copy Markdown
Contributor

@eckelj eckelj commented Oct 2, 2019

BigchainDB has been running with Tendermint 0.22.8 for a while. It is important to keep pace with the Tendermint evolution. Therefore, upgrading the Tendermint version is crucial.

**Problem: Tendermint had some breaking changes, therefore, the adaption wasn't straight. **

Solution

The ABCI module of py-abci got updated and a push request got raised to get this into the official repository. In addition, the ABCI driver got integrated in a way to be compliant and adaptable for the future. This pull request upgrades to Tendermint 0.31.5 (ABCI 16.0).

Issues Resolved

This pull request successfully upgrades the Tendermint version of BigchainDB.

@codecov-io
Copy link
Copy Markdown

Codecov Report

Merging #2666 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master    #2666   +/-   ##
=======================================
  Coverage   93.46%   93.46%           
=======================================
  Files          46       46           
  Lines        2709     2709           
=======================================
  Hits         2532     2532           
  Misses        177      177

Copy link
Copy Markdown

@jpopesculian jpopesculian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good, I just have questions


from abci.application import BaseApplication
from abci.types_pb2 import (
from github.com.tendermint.tendermint.abci.types.types_pb2 import (
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpicky, but why are these imports so weird?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good feedback. I cleaned up some difficulties with the given bigchaindb-abci. Therby exposing the types_bp2. I resolved this by proxy using abci as a proxy. similar to befoe.

return Validator(pub_key=pub_key,
address=b'',
power=v['power'])
return ValidatorUpdate(pub_key=pub_key,
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What exactly is this change from Validator to ValidatorUpdate doing?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

API changed. to add a Validator, ValidatorUpdate has to be called from now on.

1. **Wait for all the tests to pass!**
1. Merge the pull request into the `master` branch.
1. Go to the [bigchaindb/bigchaindb Releases page on GitHub](https://github.com/bigchaindb/bigchaindb/releases)
2. **Wait for all the tests to pass!**
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason you changed the numbering format?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I forgot a ` in front of a number, this ended up in having a strange diff here at github. fixed it with a new commit/push

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ahh nice, good catch! but the numbers still look the same. I mean, it really doesn't matter, but I just want to bring your attention to it, if you want to change it


__version__ = '2.0.0b9'
__short_version__ = '2.0b9'
__version__ = '2.0.0'
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this would qualify as a 2.1 kind of change, at least, no?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

well, as this was a planned release (and TM upgrade part of the 2.0.0 but never added. I thought we put it to 2.0.0

Copy link
Copy Markdown

@jpopesculian jpopesculian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again nitpicky comment! Looks good, you can merge it if you want 🤜 🤛

1. **Wait for all the tests to pass!**
1. Merge the pull request into the `master` branch.
1. Go to the [bigchaindb/bigchaindb Releases page on GitHub](https://github.com/bigchaindb/bigchaindb/releases)
2. **Wait for all the tests to pass!**
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ahh nice, good catch! but the numbers still look the same. I mean, it really doesn't matter, but I just want to bring your attention to it, if you want to change it

@eckelj eckelj merged commit 9bcefdf into master Oct 7, 2019
@dolphinsd
Copy link
Copy Markdown

what is an upgrade path for an existing installation? please advise how to upgrade from 2.0.0b9 to 2.0.0

@davie0
Copy link
Copy Markdown
Contributor

davie0 commented Nov 15, 2019

@dolphinsd See "election new chain-migration" in docs. And also BEP-42

@eckelj eckelj deleted the tm_upgrade branch May 16, 2022 22:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants