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

Rework network configuration parameters #372

Open
roman-khimov opened this issue Nov 27, 2023 · 5 comments
Open

Rework network configuration parameters #372

roman-khimov opened this issue Nov 27, 2023 · 5 comments
Labels
enhancement Improving existing functionality I2 Regular impact neofs NeoFS mainnet contract related issue netmap Netmap contract related issue S1 Highly significant U3 Regular

Comments

@roman-khimov
Copy link
Member

Is your feature request related to a problem? Please describe.

I'm always frustrated when I'm looking at SetConfig/Config pair of the netmap contract. Only node knows what can be changed, only node knows what are the defaults, only node knows how to properly encode them and we have all settings in a single contract even though they're often unrelated.

Describe the solution you'd like

Move configuration options into contracts and make proper interfaces for them. No abstract options, please, everything must have a proper documented interface with the default value. Economic options are not a part of netmap, container options are not a part of netmap, reputation options are not a part of netmap.

Describe alternatives you've considered

Leaving opaque container, passing magic values on deploy. No, thanks.

@roman-khimov roman-khimov added enhancement Improving existing functionality netmap Netmap contract related issue labels Nov 27, 2023
@roman-khimov roman-khimov added this to the v0.20.0 milestone Nov 27, 2023
@roman-khimov roman-khimov added U3 Regular S1 Highly significant I2 Regular impact labels Dec 20, 2023
@roman-khimov
Copy link
Member Author

Same goes for neofs contract and its settings.

@roman-khimov roman-khimov added the neofs NeoFS mainnet contract related issue label Dec 20, 2023
@roman-khimov
Copy link
Member Author

Add some sane limits to numerics (like object size) as well to avoid code like in nspcc-dev/neofs-node#2674 (comment).

@cthulhu-rider
Copy link
Contributor

what do you guys think about adding notifications about changing values? They'd help sys nodes react more quickly to reconfigs. Although this is a separate topic, with new interface proposed within this one the notifications would be implemented more clear and less abstract (per-config notifications)

@roman-khimov
Copy link
Member Author

Yep, makes sense.

@roman-khimov
Copy link
Member Author

Triggers too many changes to be done now. API operates with NetworkConfig of KV pairs, SDK is a mix of known/unknown parameters. Postponing for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improving existing functionality I2 Regular impact neofs NeoFS mainnet contract related issue netmap Netmap contract related issue S1 Highly significant U3 Regular
Projects
None yet
Development

No branches or pull requests

2 participants