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

Removed Epoch Unbonding Record's with Zero Amount #612

Merged
merged 3 commits into from
Feb 16, 2023
Merged

Conversation

sampocs
Copy link
Collaborator

@sampocs sampocs commented Feb 9, 2023

Closes: #609

Thanks @gloryan0829 for catching this!

Context and purpose of the change

The comparison check in the condition that removes 0-amount epoch unbonding records is stale since migrating to sdk.Ints, preventing the records from being deleted.

Brief Changelog

  • Fixed comparison
  • Fixed broken unit test

Author's Checklist

I have...

  • Run and PASSED locally all GAIA integration tests
  • If the change is contentful, I either:
    • Added a new unit test OR
    • Added test cases to existing unit tests
  • OR this change is a trivial rework / code cleanup without any test coverage

If skipped any of the tests above, explain.

Reviewers Checklist

All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.

I have...

  • reviewed state machine logic
  • reviewed API design and naming
  • manually tested (if applicable)
  • confirmed the author wrote unit tests for new logic
  • reviewed documentation exists and is accurate

Documentation and Release Note

  • Does this pull request introduce a new feature or user-facing behavior changes?
  • Is a relevant changelog entry added to the Unreleased section in CHANGELOG.md?
  • This pull request updates existing proto field values (and require a backend and frontend migration)?
  • Does this pull request change existing proto field names (and require a frontend migration)?
    How is the feature or change documented?
    • not applicable
    • jira ticket XXX
    • specification (x/<module>/spec/)
    • README.md
    • not documented

@sampocs sampocs mentioned this pull request Feb 15, 2023
19 tasks
Copy link
Contributor

@shellvish shellvish left a comment

Choose a reason for hiding this comment

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

Good catch, and I think nothing bad will happen while we wait for the next software upgrade. The epoch unbonding records persisting is annoying, but not harmful afaik.

@@ -282,7 +282,7 @@ func (k Keeper) CleanupEpochUnbondingRecords(ctx sdk.Context, epochNumber uint64
for _, hostZoneUnbonding := range hostZoneUnbondings {
// if an EpochUnbondingRecord has any HostZoneUnbonding with non-zero balances, we don't delete the EpochUnbondingRecord
// because it has outstanding tokens that need to be claimed
if hostZoneUnbonding.NativeTokenAmount != sdkmath.ZeroInt() {
if !hostZoneUnbonding.NativeTokenAmount.Equal(sdkmath.ZeroInt()) {
Copy link
Contributor

Choose a reason for hiding this comment

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

Wow, great catch

@sampocs
Copy link
Collaborator Author

sampocs commented Feb 16, 2023

persisting is annoying, but not harmful afaik
@shellvish Agreed! Just clogging up state but doesn't logically affect anything

@sampocs sampocs merged commit 470268d into main Feb 16, 2023
sontrinh16 pushed a commit to notional-labs/stride that referenced this pull request Mar 27, 2023
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.

Unbonding records of amount zero should be deleted every epoch, but it is not deleted.
2 participants