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

Set Fee Schedule in 1.8.0 Upgrade #616

Closed
4 tasks
iramiller opened this issue Jan 24, 2022 · 3 comments · Fixed by #618 or #623
Closed
4 tasks

Set Fee Schedule in 1.8.0 Upgrade #616

iramiller opened this issue Jan 24, 2022 · 3 comments · Fixed by #618 or #623
Assignees
Labels
msgfees Msg based fee module
Milestone

Comments

@iramiller
Copy link
Member

Summary

As part of the 1.8.0 release the new msg fee module exposes important capabilities for spam control. Add a new set of base fees to the upgrade handler in 1.8.0 to ensure that base operations have initial fees set

Problem Definition

Controlling spam and creation of large amount of assets on chain can be done through gas to a limited extent. Extending these controls is performed with msg based fees on select operations.

Proposal

  • Limit the maximum attribute value length to 1000 (down from 10,000 currently)
  • Add Msg Fees for select operations
    • provenance.name.v1.MsgBindNameRequest (10HASH)
    • provenance.marker.v1.MsgAddMarkerRequest (100HASH)
    • provenance.attribute.v1.MsgAddAttributeRequest (10HASH)
    • provenance.metadata.v1.MsgWriteScopeRequest (10HASH)
    • provenance.metadata.v1.MsgP8eMemorializeContractRequest(10HASH)

Note: based on current pricing 10HASH is $1


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@iramiller
Copy link
Member Author

Based on analysis of mainnet attributes the largest ones are for passport records ... and are approximately 480 bytes in length meaning the 1000 byte limit above is more than double the current active use.

@arnabmitra
Copy link
Contributor

kotlin example of estimating fee for msg's which may or may not have additional fee here https://github.com/arnabmitra/pb-grpc-client-kotlin/blob/572731e37edc4b970fe6723a208cbfcd1085f6dc/src/main/kotlin/io/provenance/client/grpc/PbClient.kt#L126

@iramiller iramiller added the msgfees Msg based fee module label Jan 24, 2022
@channa-figure
Copy link
Contributor

channa-figure commented Jan 24, 2022

Can we add some logging for these in the upgrade handler? Also, I can run some scripts with these txs to simulate and to execute these transactions to confirm that they work. 1.) upgrade from 1.7.6 to 1.8.0 locally 2.) confirm logging and query msg fees module 3.) run simulate and tx for each of the cases stated above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
msgfees Msg based fee module
Projects
3 participants