Skip to content

Release/v0.27.0#2975

Merged
ebuchman merged 24 commits intomasterfrom
release/v0.27.0
Dec 5, 2018
Merged

Release/v0.27.0#2975
ebuchman merged 24 commits intomasterfrom
release/v0.27.0

Conversation

@ebuchman
Copy link
Contributor

@ebuchman ebuchman commented Dec 5, 2018

melekes and others added 24 commits November 28, 2018 08:25
* update docs

- make install_c cmd (install)
- explain node IDs (quick-start)
- update UPGRADING section (using-tendermint)

* use git clone with JS example

JS devs may not have Go installed and we should not force them to.

* rewrite sentence
* Refactor updateState #2865

* Apply suggestions from code review

Co-Authored-By: danil-lashin <danil-lashin@yandex.ru>

* Apply suggestions from code review
* Swap start/end in ReverseIterator

* update CHANGELOG_PENDING

* fixes from review
* 2871 remove proposalHeartbeat infrastructure

* 2871 add preliminary changelog entry
Merge pull request #2922 from tendermint/release/v0.26.4
* Enforce validators can only use the correct pubkey type

* adapt to variable renames

* Address comments from #2636

* separate updating and validation logic

* update spec

* Add test case for TestStringSliceEqual, clarify slice copying code

* Address @ebuchman's comments

* Split up testing validator update execution, and its validation
* types: NewValidatorSet doesn't panic on empty valz list

* changelog
* set the accum of a new validator to (-total voting power):

- disincentivize validators to unbond, then rebon to reset their
negative Accum to zero

additional unrelated changes:
- do not capitalize error msgs
- fix typo

* review comments: (re)capitalize errors & delete obsolete comments

* More changes suggested by @melekes

* WIP: do not batch clip (#2809)

* substract avgAccum on each iteration

- temporarily skip test

* remove unused method safeMulClip / safeMul

* always substract the avg accum

 - temp. skip another test

* remove overflow / underflow tests & add tests for avgAccum:

- add test for computeAvgAccum
- as we substract the avgAccum now we will not trivially over/underflow

* address @cwgoes' comments

* shift by avg at the end of IncrementAccum

* Add comment to MaxTotalVotingPower

* Guard inputs to not exceed MaxTotalVotingPower

* Address review comments:

 - do not fetch current validator from set again
 - update error message

* Address a few review comments:

 - fix typo
 - extract variable

* address more review comments:

 - clarify 1.125*totalVotingPower == totalVotingPower + (totalVotingPower >> 3)

* review comments: panic instead of "clipping":

 - total voting power is guarded to not exceed MaxTotalVotingPower ->
 panic if this invariant is violated

* fix failing test
- rename fields, methods, comments, tests
* types: ValidatorSet.Update preserves ProposerPriority

This solves the other issue discovered as part of #2718,
where Accum (now called ProposerPriority) is reset to
0 every time a validator is updated.

* update changelog

* add test

* update comment

* Update types/validator_set_test.go

Co-Authored-By: ebuchman <ethan@coinculture.info>
* WIP: tests for #2785

* rebase onto develop

* add Bucky's test without changing ValidatorSet.Update

* make TestValidatorSetBasic fail

* add ProposerPriority preserving fix to ValidatorSet.Update to fix
TestValidatorSetBasic

* fix randValidator_ to stay in bounds of MaxTotalVotingPower

* check for expected proposer and remove some duplicate code

* actually limit the voting power of random validator ...

* fix test
* update changelog

* changelog, upgrading, version
deliverTxResCh, like any other eventBus (pubsub) channel, is closed when
eventBus is stopped. We must check if the channel is still open. The
alternative approach is to not close any channels, which seems a bit
odd.

Fixes #2408
* node: allow state and code to have diff block versions

* node: pex is a log module
* p2p: panic on transport error

Addresses #2823. Currently, the acceptRoutine exits if the transport returns
an error trying to accept a new connection. Once this happens, the node
can't accept any new connections. So here, we panic instead. While we
could potentially be more intelligent by rerunning the acceptRoutine, the
error may indicate something more fundamental (eg. file desriptor limit)
that requires a restart anyways. We can leave it to process managers to
handle that restart, and notify operators about the panic.

* changelog
* p2p: test case for peer count mismatch #2332

* p2p: fix peer count mismatch #2332

* changelog

* use httptest.Server to scrape Prometheus metrics
* kv indexer: add separator to start key when matching ranges

to avoid including false positives

Refs #2908

* refactor code

* add a test case
Copy link
Contributor

@melekes melekes left a comment

Choose a reason for hiding this comment

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

@codecov-io
Copy link

Codecov Report

Merging #2975 into master will increase coverage by 0.16%.
The diff coverage is 78.1%.

@@            Coverage Diff            @@
##           master   #2975      +/-   ##
=========================================
+ Coverage   62.73%   62.9%   +0.16%     
=========================================
  Files         212     212              
  Lines       17410   17365      -45     
=========================================
+ Hits        10922   10923       +1     
+ Misses       5572    5528      -44     
+ Partials      916     914       -2
Impacted Files Coverage Δ
rpc/core/events.go 0% <ø> (ø) ⬆️
privval/priv_validator.go 74.4% <ø> (+3.38%) ⬆️
rpc/core/consensus.go 0% <ø> (ø) ⬆️
rpc/core/tx.go 0% <ø> (ø) ⬆️
rpc/core/pipe.go 30.23% <ø> (ø) ⬆️
libs/db/types.go 100% <ø> (ø) ⬆️
tools/tm-monitor/monitor/node.go 60.34% <ø> (ø) ⬆️
consensus/reactor.go 66.23% <ø> (-0.05%) ⬇️
rpc/core/blocks.go 18.75% <ø> (ø) ⬆️
privval/remote_signer.go 82.75% <ø> (-0.1%) ⬇️
... and 30 more

@ebuchman ebuchman merged commit 9c236ff into master Dec 5, 2018
@ebuchman ebuchman deleted the release/v0.27.0 branch December 5, 2018 21:50
ebuchman added a commit that referenced this pull request Dec 5, 2018
Merge pull request #2975 from tendermint/release/v0.27.0
cboh4 pushed a commit to scrtlabs/tendermint that referenced this pull request Apr 7, 2025
…et delays (backport tendermint#2952) (tendermint#2975)

Somehow this minint call is appearing in CPU profiles. Its too large of
an appearance to be declared as noise, but I really don't get why its
there. Must be some weird system effect I don't get. (perhaps due to
being the result of a function call for a slice index? idk)

This PR just removes the function call, since its not needed, as we
already branch on the if statement.

Profile showing it:

![image](https://github.com/cometbft/cometbft/assets/6440154/a12c8918-e4ce-4a3d-bad4-5ae678988f94)

Contributes a 3% improvement to tendermint#2951 

---

#### PR checklist

- [x] Tests written/updated - fully compatible with what already exists
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments
- [x] Title follows the [Conventional
Commits](https://www.conventionalcommits.org/en/v1.0.0/) spec
<hr>This is an automatic backport of pull request tendermint#2952 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Dev Ojha <ValarDragon@users.noreply.github.com>
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
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.

9 participants