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

Fix key matching in ledger params #903

Merged
merged 23 commits into from
Jan 10, 2023
Merged

Conversation

sug0
Copy link
Collaborator

@sug0 sug0 commented Dec 16, 2022

Proposed fix for #882
Based on #926

Instead of comparing storage keys in linear time, this PR proposes a binary search over the storage keys that have been declared.

@sug0 sug0 added bug Something isn't working ledger labels Dec 16, 2022
@sug0 sug0 requested a review from tzemanovic December 16, 2022 10:19
@sug0 sug0 force-pushed the tiago/main/fix-ledger-params-match branch from b805d43 to e508dd1 Compare December 19, 2022 15:18
@sug0 sug0 requested a review from tzemanovic December 19, 2022 15:24
@sug0 sug0 force-pushed the tiago/main/fix-ledger-params-match branch from e508dd1 to 40ca6b5 Compare December 20, 2022 09:21
@sug0 sug0 force-pushed the tiago/main/fix-ledger-params-match branch from 40ca6b5 to 17c5a44 Compare December 20, 2022 15:32
@sug0 sug0 force-pushed the tiago/main/fix-ledger-params-match branch from 17c5a44 to 2f12386 Compare December 20, 2022 15:59
@juped juped force-pushed the tiago/main/fix-ledger-params-match branch from 2f12386 to 0dab353 Compare December 21, 2022 14:22
juped and others added 3 commits January 10, 2023 02:12
…tomas/main/storage-keys-procmacro

This branch surfaced a bug in a wasm test. Merge the fix to pass tests
on this branch.

* brent/fix-validator-commission-change-test:
  wasm: update checksums.json
  changelog: add #965
  remove `ChangeIsZero` error
  remove dbg statements
  fix arb rate: prevent same rate and ensure proper bounds
@juped juped force-pushed the tiago/main/fix-ledger-params-match branch from b7dc828 to 9a8c84e Compare January 10, 2023 07:31
@juped juped merged commit 3850c3a into main Jan 10, 2023
@juped juped deleted the tiago/main/fix-ledger-params-match branch January 10, 2023 08:11
juped added a commit that referenced this pull request Jan 11, 2023
Namada 0.13.0

* tag 'v0.13.0': (166 commits)
  Namada 0.13.0
  finalize_block: remove unused import
  misc: change log level
  misc: change log level
  chore: missing file
  ledger: add some blocks statistics logs
  changelog: add #972
  chore: clippy/fmt
  ledger: remove/changed some logs
  ledger: use genesis fees
  genesis: added parameter to control wrapper tx fees amount
  wasm: update checksums.json
  changelog: add #969
  test/e2e: add a case to withdraw from PoW faucet
  client/tx and signing: add wrapper signer balance check and add PoW
  ledger/queries/vp: add testnet pow and faucet methods
  wasm/vp_testnet_faucet: check PoW, use withdrawal_limit set in storage
  expose the `has_valid_pow` result via VP wasm host env
  validate PoW in mempool, proposal and finalize and keep the result
  shell/init_chain: init faucet storage, if used
  add `faucet_account` parameter and set it from `init_chain` if found
  genesis: add faucet_pow_difficulty and faucet_withdrawal_limit
  add "mainnet" feature flag, off by default for now
  storage_api/lazy_map: export `get_data_key` fn for client
  core/ledger: add testnet_pow module
  re-export `namada` from `namada_tests` for `namada_core` dev-deps
  changelog: add #903
  changelog: add #975
  wasm: update checksums.json
  Fix consensus params config for ABCI++
  wasm: update checksums.json
  Remove boilerplate code in favor of StorageKeys macro
  Update Cargo deps
  Define Keys struct with all ledger param key types
  Fix #882
  changelog: add #926
  changelog: add #974
  changelog: add #973
  wasm: update checksums.json
  Update documentation/docs/src/user-guide/ibc.md
  added ibc docs and new favicon
  Update README.md
  Update README.md
  changelog: add #965
  remove `ChangeIsZero` error
  remove dbg statements
  fix arb rate: prevent same rate and ensure proper bounds
  Revert "Merge pull request #965 from anoma/brent/fix-validator-commission-change-test"
  ci: fix e2e test script
  Reduces block size to 5 MiB
  Add `max_proposal_bytes` ledger param
  Moves ledger sleep
  Refactors ledger sleep
  Adds start time argument to namada ledger
  Update README.md
  Adds  const and default token to basic fee
  changelog: add #968
  add `NAMADA_LOG_FMT` env var with one of: full (default), json or pretty
  [ci] wasm checksums update
  core/storage: remove redundant `StorageWrite` impl for mut ref
  changelog: #966
  core/storage_api: use GATs to hide lifetime in StorageRead trait
  changelog: add #962
  changelog: add #965
  remove `ChangeIsZero` error
  remove dbg statements
  fix arb rate: prevent same rate and ensure proper bounds
  Fixes unit tests
  Fixes process proposal fee token
  Fixes fee value in tx contruction
  Adds fee burning and checks
  core/storage/mockDB: remove unused `reverse_order` flag
  Add JSON as an option for logging by env var
  changed to 0.12.2
  ci: install cargo-about after sccache server up
  Namada 0.12.2
  release: cherry-pick release improvements
  changelog: add #952
  prepare_proposal: update comment to reflect hotfix
  prepare_proposal: use TxRecord struct on ABCI++ build
  missed a chain-id addition
  Prioritize wrapper txs during proposal construction
  Hot fix PrepareProposal
  added chain id and fixed install docs
  update pseudocode
  General housekeeping
  Reward distribution: general improvements
  Cubic slashing: general writing improvements
  Cubic slashing: add new improved pseudocode blurb (Rust-style)
  Cubic slashing: clarify slash iteration procedure and equation
  Cubic slashing: fix and improve plot
  quick fix to cubic slash
  wasm: update checksums.json
  changelog: add #911
  changelog: add #876
  test/core: run less cases on `update_epoch_after_its_duration` test
  Update link to install section
  changelog: add #945
  ci: install cargo-about on release step
  make-package.sh: include license information in tarball
  ...
juped added a commit that referenced this pull request Jan 12, 2023
Namada 0.13.0

* tag 'v0.13.0': (166 commits)
  Namada 0.13.0
  finalize_block: remove unused import
  misc: change log level
  misc: change log level
  chore: missing file
  ledger: add some blocks statistics logs
  changelog: add #972
  chore: clippy/fmt
  ledger: remove/changed some logs
  ledger: use genesis fees
  genesis: added parameter to control wrapper tx fees amount
  wasm: update checksums.json
  changelog: add #969
  test/e2e: add a case to withdraw from PoW faucet
  client/tx and signing: add wrapper signer balance check and add PoW
  ledger/queries/vp: add testnet pow and faucet methods
  wasm/vp_testnet_faucet: check PoW, use withdrawal_limit set in storage
  expose the `has_valid_pow` result via VP wasm host env
  validate PoW in mempool, proposal and finalize and keep the result
  shell/init_chain: init faucet storage, if used
  add `faucet_account` parameter and set it from `init_chain` if found
  genesis: add faucet_pow_difficulty and faucet_withdrawal_limit
  add "mainnet" feature flag, off by default for now
  storage_api/lazy_map: export `get_data_key` fn for client
  core/ledger: add testnet_pow module
  re-export `namada` from `namada_tests` for `namada_core` dev-deps
  changelog: add #903
  changelog: add #975
  wasm: update checksums.json
  Fix consensus params config for ABCI++
  wasm: update checksums.json
  Remove boilerplate code in favor of StorageKeys macro
  Update Cargo deps
  Define Keys struct with all ledger param key types
  Fix #882
  changelog: add #926
  changelog: add #974
  changelog: add #973
  wasm: update checksums.json
  Update documentation/docs/src/user-guide/ibc.md
  added ibc docs and new favicon
  Update README.md
  Update README.md
  changelog: add #965
  remove `ChangeIsZero` error
  remove dbg statements
  fix arb rate: prevent same rate and ensure proper bounds
  Revert "Merge pull request #965 from anoma/brent/fix-validator-commission-change-test"
  ci: fix e2e test script
  Reduces block size to 5 MiB
  Add `max_proposal_bytes` ledger param
  Moves ledger sleep
  Refactors ledger sleep
  Adds start time argument to namada ledger
  Update README.md
  Adds  const and default token to basic fee
  changelog: add #968
  add `NAMADA_LOG_FMT` env var with one of: full (default), json or pretty
  [ci] wasm checksums update
  core/storage: remove redundant `StorageWrite` impl for mut ref
  changelog: #966
  core/storage_api: use GATs to hide lifetime in StorageRead trait
  changelog: add #962
  changelog: add #965
  remove `ChangeIsZero` error
  remove dbg statements
  fix arb rate: prevent same rate and ensure proper bounds
  Fixes unit tests
  Fixes process proposal fee token
  Fixes fee value in tx contruction
  Adds fee burning and checks
  core/storage/mockDB: remove unused `reverse_order` flag
  Add JSON as an option for logging by env var
  changed to 0.12.2
  ci: install cargo-about after sccache server up
  Namada 0.12.2
  release: cherry-pick release improvements
  changelog: add #952
  prepare_proposal: update comment to reflect hotfix
  prepare_proposal: use TxRecord struct on ABCI++ build
  missed a chain-id addition
  Prioritize wrapper txs during proposal construction
  Hot fix PrepareProposal
  added chain id and fixed install docs
  update pseudocode
  General housekeeping
  Reward distribution: general improvements
  Cubic slashing: general writing improvements
  Cubic slashing: add new improved pseudocode blurb (Rust-style)
  Cubic slashing: clarify slash iteration procedure and equation
  Cubic slashing: fix and improve plot
  quick fix to cubic slash
  wasm: update checksums.json
  changelog: add #911
  changelog: add #876
  test/core: run less cases on `update_epoch_after_its_duration` test
  Update link to install section
  changelog: add #945
  ci: install cargo-about on release step
  make-package.sh: include license information in tarball
  ...
bengtlofgren pushed a commit that referenced this pull request May 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working ledger
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants