numam-spdk/test
Tomasz Zawadzki 0f5157377f lib/blob: merge EP of a clone when deleting a snapshot
In general it is not possible to delete snapshot when
there are clones on top of it.
There is special case when there is just a single clone
on top that snapshot.

In such case the clone is 'merged' with snapshot.
Unallocated clusters in clone, are filled with the ones
in snapshot (if allocated there).

Similar behavior should have occurred for extent pages.

This patch adds the implementation for moving EP from
snapshot to clone along with UT.

The UT exposes the issue by allowing delete_blob
to proceed beyond just unrecoverable snapshot blob.

Fixes #1291

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Ib2824c5737021f8e8d9b533a4cd245c12e6fe9fa
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/1163
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2020-03-23 09:37:27 +00:00
..
app test/iscsi: add application for target fuzz testing. 2020-03-13 08:53:46 +00:00
bdev test/bdev: Move part_dev_by_gpt() into blockdev.sh 2020-03-20 13:59:17 +00:00
blobfs test/rocksdb: fix db_bench build with gcc9 2020-03-05 13:33:23 +00:00
blobstore lib/log: do not put trailing whitespace in fdump 2020-02-04 20:08:02 +00:00
common test/fuse: make the --with-fuse option be consistent with configure 2020-03-23 09:36:46 +00:00
compress module/compress: rename set_compress_pmd RPC to match convention 2020-01-31 12:37:31 +00:00
config_converter test/config_converter: Declare $rootdir, $testdir paths 2020-02-20 09:54:15 +00:00
cpp_headers queue_extras: use SPDK_CONTAINEROF 2019-10-07 15:06:01 +00:00
dpdk_memory_utility test: add test to validate dpdk mem utility 2020-01-24 05:46:43 +00:00
env test: move report_test_completion into run_test 2020-01-14 07:49:08 +00:00
event lib/thread: Fail spdk_thread_exit() if thread has any registered poller 2020-02-13 09:51:15 +00:00
ftl fio: Remove hardcoded path to fio repo 2020-03-17 14:44:20 +00:00
fuzz test/fuzz: Rename FUZZ_APP to VHOST_FUZZ_UP 2020-02-27 10:15:40 +00:00
ioat test: move report_test_completion into run_test 2020-01-14 07:49:08 +00:00
iscsi_tgt test: do not use iter_pci_class_code in tests 2020-03-18 08:03:21 +00:00
json_config subsystem/accel: add entry point for .write_config_json 2020-02-18 08:05:34 +00:00
lvol test/lvol: rewrite delete_snapshot_with_snapshot to bash 2020-03-17 16:37:02 +00:00
make test/make: don't print missing symbols in libs. 2020-03-18 08:02:30 +00:00
nvme memory.h: move to public headers 2020-03-19 08:50:45 +00:00
nvmf test: do not use iter_pci_class_code in tests 2020-03-18 08:03:21 +00:00
ocf test: move report_test_completion into run_test 2020-01-14 07:49:08 +00:00
openstack test/openstack: Add possibility to reinstall devstack on required branch 2019-11-07 13:22:50 +00:00
pmem script: update pmem test script 2020-02-12 12:07:30 +00:00
rpc scripts/rpc.py: add daemon mode 2020-03-11 11:35:03 +00:00
rpc_client test: add timing calls to run_test 2019-12-10 17:12:03 +00:00
spdkcli test: move report_test_completion into run_test 2020-01-14 07:49:08 +00:00
unit lib/blob: merge EP of a clone when deleting a snapshot 2020-03-23 09:37:27 +00:00
vhost test: do not use iter_pci_class_code in tests 2020-03-18 08:03:21 +00:00
vmd fio: Remove hardcoded path to fio repo 2020-03-17 14:44:20 +00:00
Makefile build: add option to disable building unit tests 2020-03-10 09:12:21 +00:00
spdk_cunit.h test: remove leftover spdk_cunit declaration 2018-07-06 22:47:56 +00:00