removing exception handling in do_mkdir

This change is being made to allow callers to handle
any exception thrown by os.mkdir.

This function is currently never called anywhere in the code.
It was introduced as part of the first commit to this project
but it was never used.

This patch (http://review.gluster.org/#/c/5304/) removed the
early version of this function, and this patch
(http://review.gluster.org/#/c/5305/) added it back with new
exception handling.

Change-Id: I71325660cb47594b0804da3da21920e26d2055f2
Signed-off-by: Thiago da Silva <thiago@redhat.com>
Reviewed-on: http://review.gluster.org/7350
Reviewed-by: Prashanth Pai <ppai@redhat.com>
Reviewed-by: Chetan Risbud <crisbud@redhat.com>
Tested-by: Chetan Risbud <crisbud@redhat.com>
This commit is contained in:
Thiago da Silva 2014-03-26 14:57:55 -04:00 committed by Chetan Risbud
parent 7af0525a00
commit b00a996732
2 changed files with 14 additions and 24 deletions

View File

@ -105,17 +105,7 @@ def do_ismount(path):
def do_mkdir(path):
try:
os.mkdir(path)
except OSError as err:
if err.errno == errno.EEXIST:
logging.warn("fs_utils: os.mkdir - path %s already exists", path)
elif err.errno in (errno.ENOSPC, errno.EDQUOT):
do_log_rl("do_mkdir(%s) failed: %s", path, err)
raise DiskFileNoSpace()
else:
raise GlusterFileSystemOSError(
err.errno, '%s, os.mkdir("%s")' % (err.strerror, path))
os.mkdir(path)
def do_listdir(path):

View File

@ -348,36 +348,36 @@ class TestFsUtils(unittest.TestCase):
try:
path = os.path.join('/tmp', str(random.random()))
fs.do_mkdir(path)
assert os.path.exists(path)
assert fs.do_mkdir(path) is None
self.assertTrue(os.path.exists(path))
self.assertRaises(OSError, fs.do_mkdir, path)
finally:
os.rmdir(path)
def test_do_mkdir_err(self):
try:
path = os.path.join('/tmp', str(random.random()), str(random.random()))
path = os.path.join('/tmp', str(random.random()),
str(random.random()))
fs.do_mkdir(path)
except GlusterFileSystemOSError:
pass
except OSError as err:
self.assertEqual(err.errno, errno.ENOENT)
else:
self.fail("GlusterFileSystemOSError expected")
self.fail("OSError with errno.ENOENT expected")
with patch('os.mkdir', mock_os_mkdir_makedirs_enospc):
try:
fs.do_mkdir("blah")
except DiskFileNoSpace:
pass
except OSError as err:
self.assertEqual(err.errno, errno.ENOSPC)
else:
self.fail("Expected DiskFileNoSpace exception")
self.fail("Expected OSError with errno.ENOSPC exception")
with patch('os.mkdir', mock_os_mkdir_makedirs_edquot):
try:
fs.do_mkdir("blah")
except DiskFileNoSpace:
pass
except OSError as err:
self.assertEqual(err.errno, errno.EDQUOT)
else:
self.fail("Expected DiskFileNoSpace exception")
self.fail("Expected OSError with errno.EDQUOT exception")
def test_do_listdir(self):
tmpdir = mkdtemp()