# nvmet.namespace.query

Sent on nvmet.namespace changes.

Type: object

##

#### NVMetNamespaceAddedEvent

Type: object
No Additional Properties

##

#### Id

Type: integer

##

#### NVMetNamespaceEntry

Type: object
No Additional Properties

##

#### Id

Type: integer

Unique identifier for the NVMe-oF namespace.

##

#### Nsid

Default: null

Namespace ID (NSID).

Each namespace within a subsystem has an associated NSID, unique within that subsystem.

If not supplied during `namespace` creation then the next available NSID will be used.

## Any of

Type: integer

Value must be greater or equal to `1` and strictly lesser than `4294967295`

Type: null

##

#### NVMetSubsysEntry

Type: object

NVMe-oF subsystem that contains this namespace.

No Additional Properties

##

#### Id

Type: integer

Unique identifier for the NVMe-oF subsystem.

##

#### Name

Type: string

Human readable name for the subsystem.

If `subnqn` is not provided on creation, then this name will be appended to the `basenqn` from `nvmet.global.config` to generate a subnqn.

Must be at least `1` characters long

##

#### Subnqn

Default: null

NVMe Qualified Name (NQN) for the subsystem.

If not provided during creation, will be auto-generated by appending the `name` to the `basenqn` from `nvmet.global.config`.

## Any of

Type: string

Must be at least `1` characters long

Type: null

##

#### Serial

Type: string

Serial number assigned to the subsystem.

##

#### Allow Any Host

Type: boolean Default: false

Any host can access the storage associated with this subsystem (i.e. no access control).

##

#### Pi Enable

Default: null

Enable Protection Information (PI) for data integrity checking.

## Any of

Type: boolean
Type: null

##

#### Qid Max

Default: null

Maximum number of queue IDs allowed for this subsystem.

## Any of

Type: integer
Type: null

##

#### Ieee Oui

Default: null

IEEE Organizationally Unique Identifier for the subsystem.

## Any of

Type: string
Type: null

##

#### Ana

Default: null

If set to either `True` or `False`, then override the global `ana` setting from `nvmet.global.config` for this subsystem only.

If `null`, then the global `ana` setting will take effect.

## Any of

Type: boolean
Type: null

##

#### Hosts

Default: []

List of host ids which have access to this subsystem.

Only populated on query if `extra.options.verbose` is set.

## Any of

Type: array of integer
No Additional Items

##### Each item of this array must be:

Type: integer
Type: null

##

#### Namespaces

Default: []

List of namespaces ids in this subsystem.

Only populated on query if `extra.options.verbose` is set.

## Any of

Type: array of integer
No Additional Items

##### Each item of this array must be:

Type: integer
Type: null

##

#### Ports

Default: []

List of ports ids on which this subsystem is available.

Only populated on query if `extra.options.verbose` is set.

## Any of

Type: array of integer
No Additional Items

##### Each item of this array must be:

Type: integer
Type: null

##

#### Device Type

Type: enum (of string)

Type of device (or file) used to implement the namespace.

##### Must be one of:

- "ZVOL"
- "FILE"

##

#### Device Path

Type: string

Path to the device or file being used to implement the namespace.

When `device_type` is:

- "ZVOL": `device_path` is e.g. "zvol/poolname/zvolname"
- "FILE": `device_path` is e.g. "/mnt/poolmnt/path/to/file". The file will be created if necessary.

Must be at least `1` characters long

##

#### Dataset

The ZFS dataset containing the file-based namespace (e.g., 'tank/nvmet'). Returns `null` for ZVOL-based namespaces or if the FILE path cannot be resolved yet (encrypted dataset not unlocked, etc.). This is a read-only field automatically populated from "device_path".

## Any of

Type: string
Type: null

##

#### Relative Path

The path of the file-based namespace relative to the dataset mountpoint (e.g., 'namespaces/ns1.img'). An empty string indicates the file is at the dataset root. Returns `null` for ZVOL-based namespaces or if the path cannot be resolved yet. This is a read-only field automatically populated from "device_path".

## Any of

Type: string
Type: null

##

#### Filesize

Default: null

When `device_type` is "FILE" then this will be the size of the file in bytes.

## Any of

Type: integer
Type: null

##

#### Device Uuid

Type: string

Unique device identifier for the namespace.

Must be at least `1` characters long

##

#### Device Nguid

Type: string

Namespace Globally Unique Identifier for the namespace.

Must be at least `1` characters long

##

#### Enabled

Type: boolean Default: true

If `enabled` is `False` then the namespace will not be accessible.

Some namespace configuration changes are blocked when that namespace is enabled.

##

#### Locked

Reflect the locked state of the namespace.

The underlying `device_path` could be an encrypted ZVOL, or a file on an encrypted dataset. In either case `locked` will be `True` if the underlying entity is locked.

## Any of

Type: boolean
Type: null

##

#### NVMetNamespaceChangedEvent

Type: object
No Additional Properties

##

#### Id

Type: integer

##

#### NVMetNamespaceEntry

Type: object
No Additional Properties

##

#### Id

Type: integer

Unique identifier for the NVMe-oF namespace.

##

#### Nsid

Default: null

Namespace ID (NSID).

Each namespace within a subsystem has an associated NSID, unique within that subsystem.

If not supplied during `namespace` creation then the next available NSID will be used.

## Any of

Type: integer

Value must be greater or equal to `1` and strictly lesser than `4294967295`

Type: null

##

#### NVMetSubsysEntry

Type: object

NVMe-oF subsystem that contains this namespace.

No Additional Properties

##

#### Id

Type: integer

Unique identifier for the NVMe-oF subsystem.

##

#### Name

Type: string

Human readable name for the subsystem.

If `subnqn` is not provided on creation, then this name will be appended to the `basenqn` from `nvmet.global.config` to generate a subnqn.

Must be at least `1` characters long

##

#### Subnqn

Default: null

NVMe Qualified Name (NQN) for the subsystem.

If not provided during creation, will be auto-generated by appending the `name` to the `basenqn` from `nvmet.global.config`.

## Any of

Type: string

Must be at least `1` characters long

Type: null

##

#### Serial

Type: string

Serial number assigned to the subsystem.

##

#### Allow Any Host

Type: boolean Default: false

Any host can access the storage associated with this subsystem (i.e. no access control).

##

#### Pi Enable

Default: null

Enable Protection Information (PI) for data integrity checking.

## Any of

Type: boolean
Type: null

##

#### Qid Max

Default: null

Maximum number of queue IDs allowed for this subsystem.

## Any of

Type: integer
Type: null

##

#### Ieee Oui

Default: null

IEEE Organizationally Unique Identifier for the subsystem.

## Any of

Type: string
Type: null

##

#### Ana

Default: null

If set to either `True` or `False`, then override the global `ana` setting from `nvmet.global.config` for this subsystem only.

If `null`, then the global `ana` setting will take effect.

## Any of

Type: boolean
Type: null

##

#### Hosts

Default: []

List of host ids which have access to this subsystem.

Only populated on query if `extra.options.verbose` is set.

## Any of

Type: array of integer
No Additional Items

##### Each item of this array must be:

Type: integer
Type: null

##

#### Namespaces

Default: []

List of namespaces ids in this subsystem.

Only populated on query if `extra.options.verbose` is set.

## Any of

Type: array of integer
No Additional Items

##### Each item of this array must be:

Type: integer
Type: null

##

#### Ports

Default: []

List of ports ids on which this subsystem is available.

Only populated on query if `extra.options.verbose` is set.

## Any of

Type: array of integer
No Additional Items

##### Each item of this array must be:

Type: integer
Type: null

##

#### Device Type

Type: enum (of string)

Type of device (or file) used to implement the namespace.

##### Must be one of:

- "ZVOL"
- "FILE"

##

#### Device Path

Type: string

Path to the device or file being used to implement the namespace.

When `device_type` is:

- "ZVOL": `device_path` is e.g. "zvol/poolname/zvolname"
- "FILE": `device_path` is e.g. "/mnt/poolmnt/path/to/file". The file will be created if necessary.

Must be at least `1` characters long

##

#### Dataset

The ZFS dataset containing the file-based namespace (e.g., 'tank/nvmet'). Returns `null` for ZVOL-based namespaces or if the FILE path cannot be resolved yet (encrypted dataset not unlocked, etc.). This is a read-only field automatically populated from "device_path".

## Any of

Type: string
Type: null

##

#### Relative Path

The path of the file-based namespace relative to the dataset mountpoint (e.g., 'namespaces/ns1.img'). An empty string indicates the file is at the dataset root. Returns `null` for ZVOL-based namespaces or if the path cannot be resolved yet. This is a read-only field automatically populated from "device_path".

## Any of

Type: string
Type: null

##

#### Filesize

Default: null

When `device_type` is "FILE" then this will be the size of the file in bytes.

## Any of

Type: integer
Type: null

##

#### Device Uuid

Type: string

Unique device identifier for the namespace.

Must be at least `1` characters long

##

#### Device Nguid

Type: string

Namespace Globally Unique Identifier for the namespace.

Must be at least `1` characters long

##

#### Enabled

Type: boolean Default: true

If `enabled` is `False` then the namespace will not be accessible.

Some namespace configuration changes are blocked when that namespace is enabled.

##

#### Locked

Reflect the locked state of the namespace.

The underlying `device_path` could be an encrypted ZVOL, or a file on an encrypted dataset. In either case `locked` will be `True` if the underlying entity is locked.

## Any of

Type: boolean
Type: null

##

#### NVMetNamespaceRemovedEvent

Type: object
No Additional Properties

##

#### Id

Type: integer

Required roles: SHARING_NVME_TARGET_READ