oxidecomputer / oxidecomputer/oxide.rs
CLI creating instances with huge local disks succeeds, but user receives a timeout error.
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 75
- Forks
- 21
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 19
Description
Component
- CLI
- SDK
- Something else
- Not sure
What was the expected behaviour
It is known that creating bigger local disks takes longer, and this can be easily observed if one creates them via console without any special/additional settings. However, if we create them via CLI, we MUST add a timeout explicitly on the command or else it will throw a timeout error.
This would be ok if the action didn't go through (i.e., create an instance with that big of a disk, think 1.5 TB+). However, the instances DO get created successfully.
Yes, the workaround is adding the timeout but the user gets the wrong idea that the intended process failed. So this is more like a false negative.
What is the current behaviour and what actions did you take to get there
Currently, if we launch an instance creation without an explicit timeout,:
oxide --profile $PROFILE api "/v1/instances?project=$proj" --method POST --input - <<EOF ...
we get an error in the command line, but the instance and disks are created and one can see them in console.
error sending request for url (https://oxide.sys.r3.oxide-preview.com/v1/instances?project=verdant): operation timed out
With the timeout, it comes back a bit later and delivers the output of the creation:
oxide --profile $PROFILE api "/v1/instances?project=$proj" --method POST --input - <<EOF...
Output:
{
"auto_restart_cooldown_expiration": null,
"auto_restart_enabled": true,
"auto_restart_policy": null,
"boot_disk_id": null,
"cpu_platform": null,
"description": "TPCDS Spark benchmarks",
"hostname": "spark",
"id": "ee084d00-95f4-408b-ab65-014a7edcddd5",
"memory": 34359738368,
"name": "tpcds-pyspark-ext4-bs4096",
"ncpus": 4,
"project_id": "54b9bdc4-313e-46c9-a9bc-2328c14cc303",
"run_state": "starting",
"time_created": "2026-03-02T17:54:45.927650Z",
"time_last_auto_restarted": null,
"time_modified": "2026-03-02T17:54:45.927650Z",
"time_run_state_updated": "2026-03-02T17:55:26.433778Z"
}
CLI or SDK version
Oxide CLI 0.15.0+2026021301.0.0
Operating system
Ubuntu 24.04.3 LTS
Anything else you would like to add?
No response
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the documented Oxide CLI API command with a large local disk and without an explicit timeout, then trace the CLI request timeout handling. Compare its behavior with the explicit-timeout invocation; done means a successfully created instance does not report a misleading timeout error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100