X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fceph%2Fqa%2Fworkunits%2Ffs%2Fmisc%2Fdirect_io.py;fp=src%2Fceph%2Fqa%2Fworkunits%2Ffs%2Fmisc%2Fdirect_io.py;h=0000000000000000000000000000000000000000;hb=7da45d65be36d36b880cc55c5036e96c24b53f00;hp=b5c422654e20907f8f6f7f00ad73694879b6b2b2;hpb=691462d09d0987b47e112d6ee8740375df3c51b2;p=stor4nfv.git diff --git a/src/ceph/qa/workunits/fs/misc/direct_io.py b/src/ceph/qa/workunits/fs/misc/direct_io.py deleted file mode 100755 index b5c4226..0000000 --- a/src/ceph/qa/workunits/fs/misc/direct_io.py +++ /dev/null @@ -1,50 +0,0 @@ -#!/usr/bin/python - -import json -import mmap -import os -import subprocess - - -def get_data_pool(): - cmd = ['ceph', 'fs', 'ls', '--format=json-pretty'] - proc = subprocess.Popen(cmd, stdout=subprocess.PIPE) - out = proc.communicate()[0] - return json.loads(out)[0]['data_pools'][0] - - -def main(): - fd = os.open("testfile", os.O_RDWR | os.O_CREAT | os.O_TRUNC | os.O_DIRECT, 0o644) - - ino = os.fstat(fd).st_ino - obj_name = "{ino:x}.00000000".format(ino=ino) - pool_name = get_data_pool() - - buf = mmap.mmap(-1, 1) - buf.write('1') - os.write(fd, buf) - - proc = subprocess.Popen(['rados', '-p', pool_name, 'get', obj_name, 'tmpfile']) - proc.wait() - - with open('tmpfile', 'r') as tmpf: - out = tmpf.read() - if out != '1': - raise RuntimeError("data were not written to object store directly") - - with open('tmpfile', 'w') as tmpf: - tmpf.write('2') - - proc = subprocess.Popen(['rados', '-p', pool_name, 'put', obj_name, 'tmpfile']) - proc.wait() - - os.lseek(fd, 0, os.SEEK_SET) - out = os.read(fd, 1) - if out != '2': - raise RuntimeError("data were not directly read from object store") - - os.close(fd) - print('ok') - - -main()