[−][src]Struct lsm::Pool
Fields
id: String
Identifier.
name: String
Human friendly name.
element_type: u64
The type of elements this pool could create. Valid element types are:
Pool::ELEMENT_TYPE_POOL
Pool::ELEMENT_TYPE_VOLUME
Pool::ELEMENT_TYPE_FS
Pool::ELEMENT_TYPE_DELTA
Pool::ELEMENT_TYPE_VOLUME_FULL
Pool::ELEMENT_TYPE_VOLUME_THIN
Pool::ELEMENT_TYPE_SYS_RESERVED
The values are stored in bitmap:
if (p.element_type & Pool::ELEMENT_TYPE_VOLUME) == 0 { println!("Pool {}/{} could create volume", p.name, p.id); }
unsupported_actions: u64
The actions does not supported by this pool. Valid values are:
The values are stored in bitmap:
if (p.unsupported_actions & Pool::UNSUPPORTED_VOLUME_GROW) == 0 { println!("Pool {}/{} cannot grow size of volume", p.name, p.id); }
total_space: u64
Total space in bytes.
free_space: u64
Free space in bytes.
status: u64
Pool status stored in bitmap. Valid status value are:
Pool::STATUS_UNKNOWN
Pool::STATUS_OK
Pool::STATUS_OTHER
Pool::STATUS_DEGRADED
Pool::STATUS_ERROR
Pool::STATUS_STOPPED
Pool::STATUS_STARTING
Pool::STATUS_RECONSTRUCTING
Pool::STATUS_VERIFYING
Pool::STATUS_INITIALIZING
Pool::STATUS_GROWING
if (p.status & Pool::STATUS_OK) == 0 { println!("Pool {}/{} is not healthy", p.name, p.id); }
status_info: Option<String>
Additional message for status.
system_id: String
Identifier of owner system.
Methods
impl Pool
[src]
pub const ELEMENT_TYPE_POOL: u64
[src]
This pool could allocate space for sub-pool.
pub const ELEMENT_TYPE_VOLUME: u64
[src]
This pool could create volume.
pub const ELEMENT_TYPE_FS: u64
[src]
This pool could create file system.
pub const ELEMENT_TYPE_DELTA: u64
[src]
This pool could hold delta data for snapshots.
pub const ELEMENT_TYPE_VOLUME_FULL: u64
[src]
This pool could create fully allocated volume.
pub const ELEMENT_TYPE_VOLUME_THIN: u64
[src]
This pool could create thin provisioned volume.
pub const ELEMENT_TYPE_SYS_RESERVED: u64
[src]
This pool is reserved for system internal use.
pub const UNSUPPORTED_VOLUME_GROW: u64
[src]
This pool cannot grow size of its volume.
pub const UNSUPPORTED_VOLUME_SHRINK: u64
[src]
This pool cannot shrink size of its volume.
pub const STATUS_UNKNOWN: u64
[src]
Plugin failed to query pool status.
pub const STATUS_OK: u64
[src]
The data of this pool is accessible with not data lose. But it might
along with Pool::STATUS_DEGRADED
to indicate redundancy lose.
pub const STATUS_OTHER: u64
[src]
Vendor specific status. The Pool.status_info
property will explain
the detail.
pub const STATUS_DEGRADED: u64
[src]
Pool is lost data redundancy due to I/O error or offline of one or more
RAID member. Often come with Pool::STATUS_OK
to indicate data is
still accessible with not data lose. Example:
-
RAID 6 pool lost access to 1 disk or 2 disks.
-
RAID 5 pool lost access to 1 disk.
pub const STATUS_ERROR: u64
[src]
Pool data is not accessible due to some members offline. Example:
-
RAID 5 pool lost access to 2 disks.
-
RAID 0 pool lost access to 1 disks.
pub const STATUS_STOPPED: u64
[src]
Pool is stopping by administrator. Pool data is not accessible.
pub const STATUS_STARTING: u64
[src]
Pool is reviving from STOPPED status. Pool data is not accessible yet.
pub const STATUS_RECONSTRUCTING: u64
[src]
Pool is reconstructing the hash data or mirror data. Mostly happen
when disk revive from offline or disk replaced. Pool.status_info
may
contain progress of this reconstruction job. Often come with
Pool::STATUS_DEGRADED
and Pool::STATUS_OK
.
pub const STATUS_VERIFYING: u64
[src]
Array is running integrity check on data of current pool. It might be
started by administrator or array itself. The I/O performance will be
impacted. Pool.status_info may contain progress of this verification
job. Often come with Pool::STATUS_OK
to indicate data is still
accessible.
pub const STATUS_INITIALIZING: u64
[src]
Pool is not accessible and performing initializing task. Often happen on newly created pool.
pub const STATUS_GROWING: u64
[src]
Pool is growing its size and doing internal jobs. Pool.status_info
can contain progress of this growing job. Often come with
Pool::STATUS_OK
to indicate data is still accessible.
Trait Implementations
impl Clone for Pool
[src]
impl Debug for Pool
[src]
impl<'de> Deserialize<'de> for Pool
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl Serialize for Pool
[src]
Auto Trait Implementations
impl RefUnwindSafe for Pool
impl Send for Pool
impl Sync for Pool
impl Unpin for Pool
impl UnwindSafe for Pool
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: Deserialize<'de>,
[src]
T: Deserialize<'de>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,