OS-7602

vmadm fails to create zone with indestructible_delegated set

Status:
In Progress
Created:
2019-02-20T12:27:27.833-0500
Updated:
2025-08-14T16:49:23.605-0400

Description

Reported in #smartos IRC by user senilio.

Using the following JSON:

{
  "indestructible_delegated": true,
  "autoboot": false,
  "brand": "joyent",
  "image_uuid": "c2c31b00-1d60-11e9-9a77-ff9f06554b0f",
  "alias": "foo",
  "ram": 1024
}

The VM will fail to provision with:

# vmadm create -f payload.json 
first of 1 error: Command failed: cannot open 'zones/b98fd75a-33e5-4034-f09d-8b74340e5f78/data': dataset does not exist
usage:
	snapshot [-r] [-o property=value] ... <filesystem|volume>@<snap> ...

For the property list, run: zfs set|get

For the delegated permission list, run: zfs allow|unallow

This leaves the VM in a "stopped" state. Changing indestructible_delegated from true to false using the same payload will result in a successful provision.

Comments (1)

Dan McDonald commented on 2025-08-14T16:49:23.352-0400:

May generalize this bugfix and description, but this is a variant on this misbehavior where trying to set `indestructible_delgated=true` on a zone without delgated datasets times out instead of erroring out immediately.

[root@nuc ~]# vmadm update 833586e6-8b37-4e24-b496-06dcf172a74f indestructible_delegated=true
first of 1 error: vminfod watchForChanges "VM.js update (833586e6-8b37-4e24-b496-06dcf172a74f)" timeout exceeded
[root@nuc ~]#