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

Revised Extension crash failsafe #1177

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

Variable-ind
Copy link
Contributor

@Variable-ind Variable-ind commented Feb 14, 2025

The Main philosophy behind the failsafe is to make sure PIXELORAMA loads up without an issue:

  • This revision adds an additional algorithm that check if extensions crash DURING the time they are enabled. This will make it almost impossible for an extension to keep crashing pixelorama (it will do the necessary actions to auto recover in the next session)

(This isn't playing well if multiple instances are running, till i figure it out it's a draft)

  • If another instance is run, How does it decide if the previous session crashed?
    • The system uses a sane_timer that pings the monitor file every 10 seconds. If the Monitor.ini file exists AND the time difference between the last updated time and the time of creation of a new instance is greater than the wait_time (10 seconds), it would mean that for some reason, the the previous instance failed to update the time (which would be interpreted as s crash).

I would have liked to make it work without the timer but this is the ONLY way this can work

@Variable-ind Variable-ind marked this pull request as draft February 15, 2025 04:39
@Variable-ind Variable-ind marked this pull request as ready for review February 15, 2025 10:51
@Variable-ind
Copy link
Contributor Author

This pr is now ready for review

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

Successfully merging this pull request may close these issues.

1 participant