popstellar icon indicating copy to clipboard operation
popstellar copied to clipboard

[BUG] Opening a roll call fails in some execution flows

Open matteosz opened this issue 1 year ago • 4 comments

Description (Actual behavior)

These errors are generated from the servers.

  • Opening a roll call triggers the following error:
An error response was replied by the server
Error -4 - invalid message field: failed to publish: failed to handle publish message: failed to process message: failed to process action 'roll_call#open': The field `opens` does not correspond to the id of the previous roll call message]
com.github.dedis.popstellar.utility.error.JsonRPCErrorException: Error -4 - invalid message field: failed to publish: failed to handle publish message: failed to process message: failed to process action **'roll_call#open'**: The field `opens` does not correspond to the id of the previous roll call message

This happens when the organizer creates a Roll Call X, then creates a Roll Call Y and tries to open the Roll Call X.

Expected behavior

The errors shouldn't happen.

How to reproduce

In the following video there's an execution flow that shows the problem: opening.webm

Version & Environment

This bug was reproduced on this commit, however it was present since this other commit.

Front-ends:
  • [ ] Fe1-Web (please include browser's names & version)
  • [ ] Fe2-Android (please specify if phone or emulation, and Android version)
  • [X] Not applicable
Back-ends:
  • [X] Be1-Go
  • [X] Be2-Scala
  • [ ] Not applicable

Workaround

When it happens that the opening is blocked, then the user is forced to create a new roll call.

matteosz avatar Mar 07 '23 13:03 matteosz

Since it's the backend rejecting this, which backend have you tested this against? Both?

pierluca avatar Mar 07 '23 16:03 pierluca

[EDIT] We tested with both backends and the behavior is the same, also it happens on fe1.

matteosz avatar Mar 07 '23 16:03 matteosz

What's the status on this ? @matteosz

If I recall correctly, some issues were addressed on the front-end (considering the operations invalid in the first place), while others run deeper and required an actual fix.

If it makes sense to track the fixing more easily, feel free to split this issue into multiple issues addressing just one problem at a time.

pierluca avatar May 04 '23 08:05 pierluca

Yes, I put them in a single issue since the errors I was getting were almost identical, so perhaps there's a common problem at the root.

Also I guess this is a backend related error, as it is generated by the server response.

I'll split them for better traceability :)

matteosz avatar May 04 '23 08:05 matteosz