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

Find a way to avoid multiple mesh wide transactions at same time #1066

Open
selankon opened this issue Jan 10, 2024 · 1 comment
Open

Find a way to avoid multiple mesh wide transactions at same time #1066

selankon opened this issue Jan 10, 2024 · 1 comment
Assignees
Milestone

Comments

@selankon
Copy link
Collaborator

selankon commented Jan 10, 2024

Related to #1031

During the development of the mesh wide firmware upgrade we faced the problem of how avoid multiple mesh wide firmware upgrades to be executed at same time.

We need to find an implementation on the mesh wide ecosystem to avoid multiple transactions at the same time. For example:

  • Start a mesh upgrade when another mesh upgrade is started
  • Change mesh wide configuration at same tame a mesh upgrade is running.
  • etc

A solution could be to use a shared state transaction state, with a global transaction state to check if a transaction is already running.

{
    DEFAULT = "default", -- default state
    STARTED = "started", -- there is a transaction in progress
    FINISHED = "finished" -- similar to no transaction
}
@selankon selankon added this to the mesh-wide milestone Jan 10, 2024
@selankon selankon changed the title Find a way to avoid multiple mesh wide transactions at same tim Find a way to avoid multiple mesh wide transactions at same time Jan 10, 2024
@ilario
Copy link
Member

ilario commented Jan 10, 2024

I recall some talk from Freifunk people about automated upgrades in Gluon, we should ask them how they solved this.
Also, maybe there is even a solution already implemented somewhere in ASU by @aparcar...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants