From: Greg Farnum Date: Wed, 4 Sep 2013 20:44:47 +0000 (-0700) Subject: test: update cache test since OSDs support redirects X-Git-Tag: v0.71~137^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F580%2Fhead;p=ceph.git test: update cache test since OSDs support redirects Signed-off-by: Greg Farnum --- diff --git a/qa/workunits/rados/caching_redirects.sh b/qa/workunits/rados/caching_redirects.sh index a8eda4872462..19b940b5b4c6 100755 --- a/qa/workunits/rados/caching_redirects.sh +++ b/qa/workunits/rados/caching_redirects.sh @@ -11,9 +11,9 @@ expect_false() #create pools, set up tier relationship ceph osd pool create base_pool 2 -ceph osd pool create empty_cache 2 +ceph osd pool create partial_cache 2 ceph osd pool create data_cache 2 -ceph osd tier add base_pool empty_cache +ceph osd tier add base_pool partial_cache ceph osd tier add base_pool data_cache # populate base_pool and data_cache with some data @@ -25,6 +25,8 @@ rados -p base_pool put barobj bar.txt # data_cache is backwards so we can tell we read from it rados -p data_cache put fooobj bar.txt rados -p data_cache put barobj foo.txt +# partial_cache gets barobj backwards +rados -p partial_cache put barobj foo.txt # get the objects back before setting a caching pool rados -p base_pool get fooobj tmp.txt @@ -32,20 +34,18 @@ diff -q tmp.txt foo.txt rados -p base_pool get barobj tmp.txt diff -q tmp.txt bar.txt -# set up redirect and make sure we get nothing -ceph osd tier set-overlay base_pool empty_cache -expect_false rados -p base_pool get fooobj tmp.txt -expect_false rados -p base_pool get barobj tmp.txt -#let's write as well -rados -p base_pool put fooobj baz.txt -rados -p base_pool put barobj baz.txt -#and make sure we can look at the cache pool directly -rados -p empty_cache get fooobj tmp.txt -diff -q tmp.txt baz.txt +# set up redirect and make sure we get redirect-based results +ceph osd tier set-overlay base_pool partial_cache +ceph osd tier cache-mode partial_cache writeback +rados -p base_pool get fooobj tmp.txt +diff -q tmp.txt foo.txt +rados -p base_pool get barobj tmp.txt +diff -q tmp.txt foo.txt # switch cache pools and make sure contents differ ceph osd tier remove-overlay base_pool ceph osd tier set-overlay base_pool data_cache +ceph osd tier cache-mode data_cache writeback rados -p base_pool get fooobj tmp.txt diff -q tmp.txt bar.txt rados -p base_pool get barobj tmp.txt