5 source $
(dirname $0)/..
/..
/standalone
/ceph-helpers.sh
9 PS4
='${BASH_SOURCE[0]}:$LINENO: ${FUNCNAME[0]}: '
13 echo note
: test ceph_kvstore_tool with bluestore
18 if "$@"; then return 1; else return 0; fi
21 TEMP_DIR
=$
(mktemp
-d .
/cephtool.XXX
)
22 trap "rm -fr $TEMP_DIR" 0
24 TEMP_FILE
=$
(mktemp
$TEMP_DIR/test_invalid.XXX
)
26 function test_ceph_kvstore_tool
()
28 # create a data directory
29 ceph-objectstore-tool
--data-path ${TEMP_DIR} --op mkfs
--no-mon-config
32 origin_kv_nums
=`ceph-kvstore-tool bluestore-kv ${TEMP_DIR} list 2>/dev/null | wc -l`
35 prefix
=`ceph-kvstore-tool bluestore-kv ${TEMP_DIR} list 2>/dev/null | head -n 1 | awk '{print $1}'`
36 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} exists
${prefix}
37 expect_false ceph-kvstore-tool bluestore-kv
${TEMP_DIR} exists
${prefix}notexist
40 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} list-crc
41 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} list-crc
${prefix}
44 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} list
${prefix}
47 echo "helloworld" >> ${TEMP_FILE}
48 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} set TESTPREFIX TESTKEY
in ${TEMP_FILE}
49 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} exists TESTPREFIX TESTKEY
52 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} get TESTPREFIX TESTKEY out
${TEMP_FILE}.bak
53 diff ${TEMP_FILE} ${TEMP_FILE}.bak
56 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} rm TESTPREFIX TESTKEY
57 expect_false ceph-kvstore-tool bluestore-kv
${TEMP_DIR} exists TESTPREFIX TESTKEY
60 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} compact
63 ceph-kvstore-tool bluestore-kv
${TEMP_DIR} destructive-repair
65 current_kv_nums
=`ceph-kvstore-tool bluestore-kv ${TEMP_DIR} list 2>/dev/null | wc -l`
66 test ${origin_kv_nums} -eq ${current_kv_nums}
69 test_ceph_kvstore_tool