Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Failed to attach the client to the volume using preempt flag if user do not pass reservation-version parameter to the cli

Closed Beginner friendly
#9 2 comments 0 reactions 1 assignee View on GitHub

@Dori-NVIDIA is already working on this.

Since Oct 6, 2026.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
72/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
cli

Research direction

Start by locating the nvmesh client attach CLI argument definitions and help text, then check how --preempt and --reservation-version are validated. Confirm the behavior with the reported attach command, omitting the reservation version. Done means the command clearly requires or prompts for --reservation-version when used with --preempt.

Written by the indexing model from the issue text.

Description

Is this a new feature, an improvement, or a change to existing functionality?

Change

How would you describe the priority of this feature request

Medium

Please provide a clear description of problem this feature solves

Steps to repro:

  1. Create a RAID-1 Mirrored Volume.
  2. Attach the client1 to the volume in EXCLUSIVE_READ_WRITE mode
  3. Run IO on the volume from client1
  4. Use preempt argument to attach the volume to client2 in EXCLUSIVE_READ_WRITE mode
    Actual Result:
nvmesh client attach --id client2 --volume qa-vol1 --preempt --mode EXCLUSIVE_READ_WRITE
[qa-vol1] failure: Error while getting attach volume configuration. Additional Info: {"id": 1694, "clientID": "client2", "clientUUID": "74de1230-bbed-11f1-b13c-31fd4e608492", "volumeID": "qa-vol1", "volumeUUID": "63bd4690-bc8f-11f1-b13c-31fd4e608492", "ApiRequestUUID": "63054bc0-bc90-11f1-b13c-31fd4e608492"}
Reservation version mismatch Additional Info: {"id": 1717, "volumeReservation": 3, "volumeID": "qa-vol1", "volumeUUID": "63bd4690-bc8f-11f1-b13c-31fd4e608492", "clientID": "client2"}

Expected result: User should be suggested to use argument --reservation-version in the help as a mandatory parameter if we use preempt argument

How it worked after passing argument --reservation-version

Get the reservation-version

[qa@client1 ~]# cat /proc/nvmeibc/volumes/test-vol1/status.json |grep reservation
    "reservation": "EXCLUSIVE_READ_WRITE",
    "reservation_version": 3,

[qa@host-1~]# nvmesh client attach --id client2--volume qa-vol1 --preempt --mode EXCLUSIVE_READ_WRITE --reservation-version 3
[qa-vol1] success
[qa@host-1~]# nvmesh client show
-----------------------------------------------------------------------------------------------------------------------------------------------
| Name            | Version              | Health  | Attached Io Enabled                           | Attached Io Disabled | Attached Recovery |
-----------------------------------------------------------------------------------------------------------------------------------------------
| client2 | 3.5.0-ddn.2026091713 | healthy | qa-vol2,  qa-vol1 |                      |                   |
Feature Description

use of preempt argument during volume attach should throw error if mandatory arguments are missing ex: --reservation-version

Describe your ideal solution

User should be provided help message to use --reservation-version argument while using preempt argument in-order to attach the volume to different client in EXCLUSIVE_READ_WRITE mode.

nvmesh client attach --id client2--volume test-vol1 --preempt --mode EXCLUSIVE_READ_WRITE
error: the following required arguments were not provided
<--reservation-version>
Usage: nvmesh client attach --id <CLIENT ID>-volume <VOLUME NAME> --preempt --mode <MODE> --reservation-version <RESERVATION VERSION>
Describe any alternatives you have considered

No response

Additional context

No response

Code of Conduct
  • I agree to follow NVMesh's Code of Conduct
  • I have searched the open feature requests and have found no duplicates for this feature request
Dominant language
Python
Stars
12
Forks
6
PR merge metrics
No merged PRs in 30d

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.