From 925331eb0ba95e9ec7314bdff8f8cd1ec25a7d9e Mon Sep 17 00:00:00 2001 From: Slawomir Jankowski Date: Tue, 9 Mar 2021 15:21:37 +0100 Subject: [PATCH 1/6] Add the requirements for the `add-core` command Signed-off-by: Slawomir Jankowski --- doc/requirements/management | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 doc/requirements/management diff --git a/doc/requirements/management b/doc/requirements/management new file mode 100644 index 000000000..4c9831f65 --- /dev/null +++ b/doc/requirements/management @@ -0,0 +1,24 @@ +--- +group: Management +--- + +Management operations allows the user to control and maintain the Open CAS +Linux. They are performed from console line with management tool. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Add core device +id: add_core_device +--- + +The management tool shall allow to add the core device to the cache instance. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Add core device repeatedly +id: add_core_device_repeatedly +--- + +While the core device is added to the cache instance, the management tool shall +not allow to add the core device to any cache instance. + From 1a74b9d4c1acc674f2a0b2defc2b0cb39fe9f2af Mon Sep 17 00:00:00 2001 From: Slawomir Jankowski Date: Tue, 9 Mar 2021 15:22:19 +0100 Subject: [PATCH 2/6] Add the requirements for the core states Signed-off-by: Slawomir Jankowski --- doc/requirements/management | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/doc/requirements/management b/doc/requirements/management index 4c9831f65..549021976 100644 --- a/doc/requirements/management +++ b/doc/requirements/management @@ -22,3 +22,23 @@ id: add_core_device_repeatedly While the core device is added to the cache instance, the management tool shall not allow to add the core device to any cache instance. +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Cache volume states +id: cache_volume_states +--- + +The cache volume shall be allowed to switch between the following states: + +1. active +2. inactive + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Cache volume default state +id: cache_volume_default_state +--- + +When the cache volume is added to the cache instance its state is set to the +_active_ state by default. + From cff02061f1283bcfb98d26559b1a5a4791f1c7a5 Mon Sep 17 00:00:00 2001 From: Slawomir Jankowski Date: Tue, 9 Mar 2021 15:25:00 +0100 Subject: [PATCH 3/6] Add the requirements for the `remove-core` command Signed-off-by: Slawomir Jankowski --- doc/requirements/management | 41 +++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/doc/requirements/management b/doc/requirements/management index 549021976..908e804e5 100644 --- a/doc/requirements/management +++ b/doc/requirements/management @@ -42,3 +42,44 @@ id: cache_volume_default_state When the cache volume is added to the cache instance its state is set to the _active_ state by default. +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Remove cache volume +id: remove_cache_volume +--- + +The management tool shall allow to remove the cache volume from the cache +instance. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Remove cache volume with flush +id: remove_cache_volume_flush +--- + +When the removing operation is invoked while the cache volume contains the dirty +data, the management tool shall trigger the flush before removing the cache +volume from the cache instance as the default behaviour. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Remove cache volume without flush +id: remove_cache_volume_no_flush +--- + +When the removing operation is invoked while the cache volume contains the dirty +data and it is explicitly specified, the management tool shall not trigger the +flush before removing the cache volume from the cache instance and shall inform +about the consequences. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Interrupt flush during cache volume removal +id: remove_cache_volume_flush_interrupt +--- + +While the cache volume that contains dirty data is removed with flush, the +management tool shall allow to interrupt the removal operation and the cache +volume shall remain its previous state and proper information shall be +displayed. + From 56e09aa7e3d93f7f8a22023c13e8511970f9e666 Mon Sep 17 00:00:00 2001 From: Slawomir Jankowski Date: Tue, 9 Mar 2021 15:28:53 +0100 Subject: [PATCH 4/6] Add the requirements for the `remove-core detach` script command Signed-off-by: Slawomir Jankowski --- doc/requirements/management | 51 +++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/doc/requirements/management b/doc/requirements/management index 908e804e5..2559a29f9 100644 --- a/doc/requirements/management +++ b/doc/requirements/management @@ -83,3 +83,54 @@ management tool shall allow to interrupt the removal operation and the cache volume shall remain its previous state and proper information shall be displayed. +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Detach cache volume +id: detach_cache_volume +--- + +The management tool shall allow to detach the active cache volume from the cache +instance. After the detaching operation the cache volume shall stay in the core +pool of the cache instance from which the cache volume was detached. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Detach inactive cache volume +id: detach_cache_volume_inactive +--- + +The management tool shall not allow to detach the inactive cache volume from the +cache instance. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Detach cache volume with flush +id: detach_cache_volume_flush +--- + +When the detaching operation is invoked while the cache volume contains the +dirty data, the management tool shall trigger the flush before detaching the +cache volume from the cache instance as the default behaviour. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Detach cache volume without flush +id: detach_cache_volume_no_flush +--- + +When the detaching operation is invoked while the cache volume contains the +dirty data and it is explicitly stated, the management tool shall not trigger +the flush before detaching the cache volume from the cache instance and shall +inform about the consequences. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Interrupt flush during cache volume detaching +id: detach_cache_volume_flush_interrupt +--- + +While the cache volume that contains dirty data is removed with flush, the +management tool shall allow to interrupt the removal operation and the cache +volume shall remain its previous state and proper information shall be +displayed. + From d3dcee0b280333e542e54f986a26b4fc92ce31b9 Mon Sep 17 00:00:00 2001 From: Slawomir Jankowski Date: Tue, 9 Mar 2021 15:30:27 +0100 Subject: [PATCH 5/6] Add the requirements for the `add-core try-add` script command Signed-off-by: Slawomir Jankowski --- doc/requirements/management | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/doc/requirements/management b/doc/requirements/management index 2559a29f9..cf72eb2e5 100644 --- a/doc/requirements/management +++ b/doc/requirements/management @@ -134,3 +134,22 @@ management tool shall allow to interrupt the removal operation and the cache volume shall remain its previous state and proper information shall be displayed. +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Attach inactive cache volume +id: attach_inactive_cache_volume +--- + +While the cache volume is in inactive state, the management tool shall allow to +attach the cache volume to the cache instance to which core pool the cache +volume belongs. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Attach active cache volume +id: attach_inactive_cache_volume +--- + +While the cache volume is in active state, the management tool shall not allow +to attach the cache volume to any cache instance. + From dcd7bb905fb34faad8ae29580534db9d8e648978 Mon Sep 17 00:00:00 2001 From: Slawomir Jankowski Date: Tue, 9 Mar 2021 15:32:20 +0100 Subject: [PATCH 6/6] Add the requirements for the `remove-inactive` command Signed-off-by: Slawomir Jankowski --- doc/requirements/management | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/doc/requirements/management b/doc/requirements/management index cf72eb2e5..ff954de73 100644 --- a/doc/requirements/management +++ b/doc/requirements/management @@ -153,3 +153,12 @@ id: attach_inactive_cache_volume While the cache volume is in active state, the management tool shall not allow to attach the cache volume to any cache instance. +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Remove inactive cache volume +id: remove_inactive_cache_volume +--- + +While the cache volume is in the inactive state, the management tool shall allow +to remove the cache volume from the core pool of the cache instance to which the +cache volume belongs.