Skip to content

Signer does not handle properly signature signed entity timeout #2229

Closed
@jpraynaud

Description

@jpraynaud

Why

The signer can get stuck when an open message has expired on the aggregator (as described in https://discord.com/channels/826816523368005654/1014019542504185876/1328667162524516384 and https://discord.com/channels/826816523368005654/1014019542504185876/1328523813352116327):

  • it tries to sign over and over again the same signed entity type (here the Cardano stake distribution)
  • each time the aggregator answers a 500 error stating that the message has expired
  • this error prevents the signer to record the signature (which would allow to sign the next signed entity type at the following cycle)

What

Have the signer consider a message signed even if the aggregator returns an error because of an expired open message when the signature is submitted.

How

  • Return a GONE HTTP code when the CertifierServiceError returned is Expired
  • In the signer, enhance the handling of the GONE HTTP code in register_signatures function to use the error message returned by the aggregator
  • In the signer, remove the CONFLICT handling of the register_signatures signature function

Metadata

Metadata

Assignees

Labels

bug ⚠️Something isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions