Comment 7 for bug 1798917

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (master)

Reviewed: https://review.openstack.org/612490
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=f3d6ae88add6e06107fc3ece30d8535693f739a2
Submitter: Zuul
Branch: master

commit f3d6ae88add6e06107fc3ece30d8535693f739a2
Author: Corey Bryant <email address hidden>
Date: Mon Oct 22 14:45:33 2018 -0400

    PY3: Ensure rados.Object.read/write use byte data

    rados.Object.write(string_to_write) [1] and rados.Ioctx.write(data) [2]
    expect to write byte data for the above named arguments.
    rados.Object.read() returns that data.

    Ensure that the json_meta argument passed to rados.Object.write() in
    VolumeMetadataBackup.set() is encoded as a UTF-8 bytes object and decoded
    after rados.Object.read().

    Also update the corresponding unit tests to ensure that metadata
    dictionaries are JSON serialized, encoded, and decoded similar to
    how the actual code behaves. [3]

    [1] https://github.com/ceph/ceph/blob/v13.2.1/src/pybind/rados/rados.pyx#L3984
    [2] https://github.com/ceph/ceph/blob/v13.2.1/src/pybind/rados/rados.pyx#L2641
    [3] https://bugs.launchpad.net/cinder/+bug/1798917/comments/4

    Change-Id: Idb225b5c84be3beac0c272ed4b8d69ebb04c5858
    Closes-Bug: #1798917