Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RC/messnet 1 #182

Closed
wants to merge 48 commits into from
Closed

RC/messnet 1 #182

wants to merge 48 commits into from

Conversation

meowsbits
Copy link
Contributor

Release Candidate branch for MESS-available features and --messnet specific configurations and features.

Naming strategy:

  • Use v1.11.14-rc-messnet-<number> for tagged "stable" RC versions that we'll roll out for MessNet testing.
  • Use v1.11.14-rc-messnet-<number>+ for untagged "unstable" versions that will represent development iterations between MessNet releases, if necessary.

Unless thinking changes, this branch won't be merged to master; we'll handle merging the composite features to master, which may or may not include the fakepow-fakedelay Poisson sealer and the MessNet configs and/or flag.

Extracts the reorganization data-aggregation
logic from its execution logic.

This will allow observation and arbitration
using the proposed reorganization data without
necessarily acting on it.

Signed-off-by: meows <b5c6@protonmail.com>
This is only really an optimization,
paving the way for installing additional
reorg arbitration.

Signed-off-by: meows <b5c6@protonmail.com>
Implements spec documented here:
https://github.com/etclabscore/artificial-finality/blob/master/MESS.md

MESS is an artificial finality mechanism endowing
the blockchain's current segment with so-called 'gravity'
by requiring a competing chain to satisfy an exponentially
increasing relative total difficulty.

Note that is change causes several tests with reorgs
to fail. This will be addressed by implementing
the feature as a chain configuration option.

Signed-off-by: meows <b5c6@protonmail.com>
…1355 configuration interface implementation

Implement ECBP11355 interface methods for supporting
chain configuration types.

Signed-off-by: meows <b5c6@protonmail.com>
This meter was added to ethereum/go-ethereum after my
original refactor was done, so my update missed it,
and it was caught by the deadcode linter.

Add it, fix it.

Signed-off-by: meows <b5c6@protonmail.com>
- local head staleness
- min peers

These are mechanisms designed to provide sane safeguard
heuristics for nodes to enable/disable artificial
finality features within reason.

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
This is intended to keep upstream merges streamlined
by moving 'custom' logic to a non-colliding space.

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Should help with debugging if it comes to that.
4 decimals chosen because that matches the current
base value precision: 1.0001

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Forgot to actually plug this in.

Signed-off-by: meows <b5c6@protonmail.com>
One order of magnitude greater than the exponent's
base of 1.0001.

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
The sinusoidal function seems the most desirable.

This changeset also includes a shallow threshold
of 3 blocks, returning positive acceptance with
difficulty is equivalent.
This is intended to sidestep negative impacts on uncle
rates.

Signed-off-by: meows <b5c6@protonmail.com>
…ame shallow

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
…ealer

Signed-off-by: meows <b5c6@protonmail.com>
Without this, the only fake part of --fakepow
is the VERIFICATION of blocks, not the sealing.

This makes the sealer fake with --fakepow as well.

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
These are assumed to not be consensus-discriminating
hard fork configs.

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
…ceptance

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
This is just a double-extra safety feature that will
allow operators to disable the feature if necessary.

Signed-off-by: meows <b5c6@protonmail.com>
…m,multigeth,parity: s/11355/1100/g

Rel ethereumclassic/ECIPs#373 (review)

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
This also introduces the no-compare for function
Compatible, since we don't want to necessitate
equivalence there either.

Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
Conflicts:
      eth/api.go
      internal/web3ext/web3ext.go
Signed-off-by: meows <b5c6@protonmail.com>
Signed-off-by: meows <b5c6@protonmail.com>
@meowsbits
Copy link
Contributor Author

Closing since testing with MESSNet is completed.

@meowsbits meowsbits closed this Oct 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant