Skip to content

FEAT: reconnect and reconstrcut model replicas after restart supervisor#4731

Merged
qinxuye merged 8 commits into
xorbitsai:mainfrom
leslie2046:restart
Apr 6, 2026
Merged

FEAT: reconnect and reconstrcut model replicas after restart supervisor#4731
qinxuye merged 8 commits into
xorbitsai:mainfrom
leslie2046:restart

Conversation

@leslie2046

@leslie2046 leslie2046 commented Mar 27, 2026

Copy link
Copy Markdown
Collaborator

close #2402

Problem solved:

Resolving the issue that workers must restart and the model must be redeployed after the supervisor restarts.

Technical solution:

After the supervisor restarts, the worker automatically reconnects to the supervisor and uploads its own status and model replica status information.

@XprobeBot XprobeBot added this to the v2.x milestone Mar 27, 2026
@leslie2046

Copy link
Copy Markdown
Collaborator Author

@qinxuye

@nasircsms

Copy link
Copy Markdown
Contributor

@leslie2046 can you please have a look at #2402 (comment)

@qinxuye

qinxuye commented Mar 31, 2026

Copy link
Copy Markdown
Contributor

@leslie2046 can you please have a look at #2402 (comment)

Maybe it's a different issue, the solution might be if some replica failed, it should be blacklisted.

@nasircsms

Copy link
Copy Markdown
Contributor

@leslie2046 can you please have a look at #2402 (comment)

Maybe it's a different issue, the solution might be if some replica failed, it should be blacklisted.

Yes.. I have tested it with v2.4.0 as well. As soon as a worker becomes unavailable then whole cluster fails. Even if that worker joins again on the same port but still cluster remains unavailable. Need to restart supervisor and all the workers to make the cluster available again.

@qinxuye

qinxuye commented Apr 6, 2026

Copy link
Copy Markdown
Contributor

@leslie2046 can you please have a look at #2402 (comment)

Maybe it's a different issue, the solution might be if some replica failed, it should be blacklisted.

Yes.. I have tested it with v2.4.0 as well. As soon as a worker becomes unavailable then whole cluster fails. Even if that worker joins again on the same port but still cluster remains unavailable. Need to restart supervisor and all the workers to make the cluster available again.

I guess the worker is not dead right? Maybe just because the heartbeat is not sent just in time.

@qinxuye qinxuye left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

@qinxuye
qinxuye merged commit 7d5227f into xorbitsai:main Apr 6, 2026
14 checks passed
@nasircsms

Copy link
Copy Markdown
Contributor

@leslie2046 can you please have a look at #2402 (comment)

Maybe it's a different issue, the solution might be if some replica failed, it should be blacklisted.

Yes.. I have tested it with v2.4.0 as well. As soon as a worker becomes unavailable then whole cluster fails. Even if that worker joins again on the same port but still cluster remains unavailable. Need to restart supervisor and all the workers to make the cluster available again.

I guess the worker is not dead right? Maybe just because the heartbeat is not sent just in time.

In my case worker machine is powered-off or restarted. Although I am running xinference as service so on boot it auto-connect to supervisor again on same port, but even if worker comes back or not the cluster is done for.

@leslie2046
leslie2046 deleted the restart branch April 7, 2026 00:46
@qinxuye

qinxuye commented Apr 7, 2026

Copy link
Copy Markdown
Contributor

@leslie2046 can you please have a look at #2402 (comment)

Maybe it's a different issue, the solution might be if some replica failed, it should be blacklisted.

Yes.. I have tested it with v2.4.0 as well. As soon as a worker becomes unavailable then whole cluster fails. Even if that worker joins again on the same port but still cluster remains unavailable. Need to restart supervisor and all the workers to make the cluster available again.

I guess the worker is not dead right? Maybe just because the heartbeat is not sent just in time.

In my case worker machine is powered-off or restarted. Although I am running xinference as service so on boot it auto-connect to supervisor again on same port, but even if worker comes back or not the cluster is done for.

You can try this PR, it might address this issue.

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

集群模式部署,如果重启supervisor,必须重启所有woker吗?

4 participants