[Bug]: Got `409 Conflict` when I stop and start my project.
ffguven opened this issue · 1 comments
What happened?
Hi folks,
I am playing with a hello world project so that I can know more about Shuttle.
When I deploy my project, everything is fine and then I'm able to use it right away, that's great. But when I stop
my project via the Web Console, and then
- start it via the
cargo-shuttle project start
, I keep getting the error below:
godis@DESKTOP-T90BDM8:~/shuttle/zort$ cargo-shuttle project start
Project creation failed
Please double-check the project status before retrying:
cargo shuttle project status
If the project creation or retrieving the status fails repeatedly, please check Shuttle status at https://status.shuttle.rs before contacting the team on the Discord server.
Error: failed to make create project request
Caused by:
409 Conflict
Message: project 'zort' is already running
- restart it via the
cargo-shuttle project restart
and get
godis@DESKTOP-T90BDM8:~/shuttle/zort$ cargo-shuttle project restart
Project "zort" is destroyed
Run `cargo shuttle project start` to recreate project environment on Shuttle.
Project "zort" is ready
Your project will sleep if it is idle for 30 minutes.
To change the idle time refer to the docs: https://docs.shuttle.rs/getting-started/idle-projects
Run `cargo shuttle deploy --allow-dirty` to deploy your Shuttle service.
But still I don't see my project is running via the Web console, or I cannot use my hello-world endpoint at all, keep getting
Project is running but is not responding correctly. Try to restart it
- And when I hit
cargo-shuttle project status
godis@DESKTOP-T90BDM8:~/shuttle/zort$ cargo-shuttle project status
Project "zort" is ready
Idle minutes: 30
I would expect hitting the start
or restart
via the CLI will execute my already deployed function, but that's not the case.
Maybe my understanding of this stop/start/restart lifecycle is not correct, but could you help me to understand if that's a genuine issue or not?
Project name: zort
Version
cargo-shuttle 0.47.0
Which operating system(s) are you seeing the problem on?
Linux
Which CPU architectures are you seeing the problem on?
ARM64
Relevant log output
godis@DESKTOP-T90BDM8:~/shuttle/zort$ cargo-shuttle project start
Project creation failed
Please double-check the project status before retrying:
cargo shuttle project status
If the project creation or retrieving the status fails repeatedly, please check Shuttle status at https://status.shuttle.rs before contacting the team on the Discord server.
Error: failed to make create project request
Caused by:
409 Conflict
Message: project 'zort' is already running
Duplicate declaration
- I have searched the issues and there are none like this.
Hey @ffguven, thanks for the report! The 409 error is a bug from Docker that we hit occasionally, where we send a request to the Docker API to start a project, and even though it isn't running, Docker thinks that it is. It shouldn't happen frequently, but during periods of heavy load it may happen more often. While Docker is great, and we've been able to do a lot with it, we're moving away from it in an upcoming re-architecture, which will resolve this issue. I'm happy to let you know when we open for user-testing, if you're interested!
As for the restarted project deployment still being stopped following a restart, that is because when you re-start a project, it will try to start the last running deployment. If you don't have any, it won't start any. The project represents a Docker container that is started for you, and when you make deployments you will build and start your application inside that container. In the upcoming re-architecture, however, you will not need to concern yourself with the container, there you will just run deploy
.