Closed jnels124 closed 1 month ago
@jnels124 Thanks for creating a separate issue. Would you be interested in taking this up or maybe you can create a design proposal for the same so that the community can review and take this forward. Thanks
@Abhinandan-Purkait should be able to get around to implementing the fix for this in the next few weeks
@Abhinandan-Purkait should be able to get around to implementing the fix for this in the next few weeks
That's great!
What steps did you take and what happened: [A clear and concise description of what the bug is, and what commands you ran.]
openebs.io/nodeid
What did you expect to happen: It should utilize the correct ids when identifying the node and create the volume from snapshot successfully.
Anything else you would like to add: We pre-label (before starting zfs components) our nodes with unique identifiers for
openebs.io/nodeid
and these identifiers differ from the node name.With this configuration, I am able to create new ZFS volumes without issue. However, when you attempt to create a zfs volume from a snapshot definition it fails.
In the logs I can see
failed to get the node {VALUE_OF_OPENEBS_NODEID}
which highlights the issue. ThisGetNodeID
method involume.go
only works when it is passed the nodename.In the case of creating a new volume
GetNodeID
is called with the nodename but when it is from a volume clone or a snapshot it gets called with the value ofopenebs.io/nodeid
. This is because this block here indriver/controller.go
in theCreateVolume
method:CreateSnapClone
--> returns spec.OwnerNodeIdCreateVolClone
--> returns spec.OwnerNodeIdCreateZFSVolume
--> returns nodename loop variableEnvironment:
kubectl version
): 1.29/etc/os-release
):