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

Fix 'Restart' RPC command #894

Merged
merged 2 commits into from
Jul 22, 2020

Conversation

m-seker
Copy link
Contributor

@m-seker m-seker commented Jul 21, 2020

Summary
restart RPC fails because execve doesn't return and blocks the process. Hence we don't return a response to the caller. Also, hyperion->freeObjects() is called on a totally wrong thread, which causes a crash.

This PR introduces a different path for restarting Hyperion. It starts a new instance of Hyperion in a detached state with a special internal command line argument (--wait-hyperion). New instance sees that --wait-hyperion argument is set and waits until previous Hyperion exits. Old instance gracefully quits application. Then new instance continues with normal execution.

What kind of change does this PR introduce? (check at least one)

  • Bugfix
  • Feature
  • Code style update
  • Refactor
  • Docs
  • Build-related changes
  • Other, please describe:

If changing the UI of web configuration, please provide the before/after screenshot:

Does this PR introduce a breaking change? (check one)

  • Yes
  • No

If yes, please describe the impact and migration path for existing setups:

The PR fulfills these requirements:

  • When resolving a specific issue, it's referenced in the PR's body (e.g. Fixes: #xxx[,#xxx], where "xxx" is the issue number)

If adding a new feature, the PR's description includes:

  • A convincing reason for adding this feature
  • Related documents have been updated (docs/docs/en)
  • Related tests have been updated

PLEASE DON'T FORGET TO ADD YOUR CHANGES TO CHANGELOG.MD

  • Yes, CHANGELOG.md is also updated

To avoid wasting your time, it's best to open a feature request issue first and wait for approval before working on it.

Other information:

@m-seker m-seker requested review from brindosch and Paulchen-Panther and removed request for brindosch July 21, 2020 21:06
@hyperion-project
Copy link

Hello @m-seker 👋

I'm your friendly neighborhood bot and would like to say thank you for
submitting a pull request to Hyperion!

So that you and other users can test your changes more quickly,
you can find your workflow artifacts here.

If you make changes to your PR, i create a new link to your workflow artifacts.

Best regards,
Hyperion-Project

@hyperion-project
Copy link

Here is your new link to your workflow artifacts.

@hyperion-project
Copy link

Here is your new link to your workflow artifacts.

@hyperion-project
Copy link

Here is your new link to your workflow artifacts.

@hyperion-project
Copy link

Here is your new link to your workflow artifacts.

@tihoangyeudau
Copy link

You are the King of Fixing bugs!!!

Copy link
Member

@Paulchen-Panther Paulchen-Panther left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works wonderfully. Many thanks

@hyperion-project
Copy link

Here is your new link to your workflow artifacts.

@Paulchen-Panther Paulchen-Panther merged commit df0d411 into hyperion-project:master Jul 22, 2020
@m-seker m-seker mentioned this pull request Jul 27, 2020
14 tasks
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.

3 participants