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

Transmit response signature failures as gRPC status error instead of panic #3086

Open
cthulhu-rider opened this issue Jan 21, 2025 · 1 comment
Labels
enhancement Improving existing functionality I4 No visible changes neofs-storage Storage node application issues S4 Routine U4 Nothing urgent

Comments

@cthulhu-rider
Copy link
Contributor

cthulhu-rider commented Jan 21, 2025

response signature problem cannot be transmitted as valid NeoFS API response. Currently, node just panics:

if err := signature.SignServiceMessage(signer, r2); err != nil {
// We can't pass this error as NeoFS status code since response will be unsigned.
// Isn't expected in practice, so panic is ok here.
panic(err)
}

i propose to replace panic with gRPC status error:

  • client will be able to realize whats goin on
  • no panic in realistic, although not much expected, case

Context

#3084

@cthulhu-rider cthulhu-rider added enhancement Improving existing functionality neofs-storage Storage node application issues labels Jan 21, 2025
@cthulhu-rider
Copy link
Contributor Author

Object service also pushes exec errors into metrics. We should definitely submit the original error, not just signing one. Do we need to also push sign error? Well, it can be useful overall. Joining can also be considered

we can also consider switching to degraded state when a node loses the ability to sign responses, but this is a separete issue

@roman-khimov roman-khimov added U4 Nothing urgent S4 Routine I4 No visible changes labels Jan 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Improving existing functionality I4 No visible changes neofs-storage Storage node application issues S4 Routine U4 Nothing urgent
Projects
None yet
Development

No branches or pull requests

2 participants