]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
pybind/rados: return pool_reverse_lookup() result as a string
authorJosh Durgin <jdurgin@redhat.com>
Thu, 12 Nov 2015 08:57:36 +0000 (00:57 -0800)
committerJosh Durgin <jdurgin@redhat.com>
Fri, 13 Nov 2015 03:35:34 +0000 (19:35 -0800)
This makes it symmetric with create_pool() in python 3.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
src/pybind/rados.py
src/test/pybind/test_rados.py

index 75eb262a5a594d140de36d4c550294c729a19c07..81aa4094fe7f9c1604424d237d06a187c7ec58e8 100644 (file)
@@ -629,7 +629,7 @@ Rados object in state %s." % self.state)
             elif ret < 0:
                 raise make_ex(ret, "error reverse looking up pool '%s'" % pool_id)
             else:
-                return c_name.value
+                return decode_cstr(c_name.value)
                 break
 
     @requires(('pool_name', str_type), ('auid', opt(int)), ('crush_rule', opt(int)))
index 1991d0c815a66061dc7208f0fa704baa35c35d21..9a5f15762aec2bba98cc8a2a3e91e83040ffc6db 100644 (file)
@@ -141,6 +141,18 @@ class TestRados(object):
         assert self.rados.pool_exists(u"\u9ec4")
         self.rados.delete_pool(poolname)
 
+    def test_pool_lookup_utf8(self):
+        if _python2:
+            poolname = u'\u9ec4'
+        else:
+            poolname = '\u9ec4'
+        self.rados.create_pool(poolname)
+        try:
+            poolid = self.rados.pool_lookup(poolname)
+            eq(poolname, self.rados.pool_reverse_lookup(poolid))
+        finally:
+            self.rados.delete_pool(poolname)
+
     def test_create_auid(self):
         self.rados.create_pool('foo', 100)
         assert self.rados.pool_exists('foo')