)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"6610676936158ef19eefc1e1b9846da3d873bf66","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Fix the unicode encode error when create volume"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When creating volume from image with Chinese image name,"},{"line_number":10,"context_line":"catch the UnicodeEncodeError when str(value) and set the"},{"line_number":11,"context_line":"value to vol_glance_metadata.value directly"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I30542df18f31a3e07cb4b9a61521ebded62ffbc4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"9a80dd14_39cc526a","line":10,"updated":"2015-03-06 14:08:59.000000000","message":"I don\u0027t think this is accurate anymore.","commit_id":"f5969602ad605c9001aeda4deab1260cc0d757b7"},{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"c08d03fafdb50db75fe730c1ecd27dfe939e9315","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Fix the unicode encode error when create volume"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When creating volume from image with Chinese image name,"},{"line_number":10,"context_line":"catch the UnicodeEncodeError when str(value) and set the"},{"line_number":11,"context_line":"value to vol_glance_metadata.value directly"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I30542df18f31a3e07cb4b9a61521ebded62ffbc4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"9a80dd14_2eabfc75","line":10,"in_reply_to":"9a80dd14_39cc526a","updated":"2015-03-09 08:52:57.000000000","message":"Done","commit_id":"f5969602ad605c9001aeda4deab1260cc0d757b7"}],"cinder/db/sqlalchemy/api.py":[{"author":{"_account_id":14271,"name":"Kallebe Monteiro","email":"kallebe.monteiro@lsbd.ufc.br","username":"kallebe"},"change_message_id":"cb9b2cf126e56be6fb5501b00c7387668e6038cf","unresolved":false,"context_lines":[{"line_number":15,"context_line":"#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":16,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":17,"context_line":"#    under the License."},{"line_number":18,"context_line":"from migrate.versioning.util import catch_known_errors"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"\"\"\"Implementation of SQLAlchemy backend.\"\"\""},{"line_number":21,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ba7be1f8_a1094ddf","line":18,"updated":"2015-02-27 14:46:24.000000000","message":"See import guidelines. This import should be grouped with other 3rd party imports","commit_id":"70c79ff01c29b1161bdca2dd7d9245f43a784726"},{"author":{"_account_id":14271,"name":"Kallebe Monteiro","email":"kallebe.monteiro@lsbd.ufc.br","username":"kallebe"},"change_message_id":"cb9b2cf126e56be6fb5501b00c7387668e6038cf","unresolved":false,"context_lines":[{"line_number":43,"context_line":"from sqlalchemy.orm import RelationshipProperty"},{"line_number":44,"context_line":"from sqlalchemy.schema import Table"},{"line_number":45,"context_line":"from sqlalchemy.sql.expression import literal_column"},{"line_number":46,"context_line":"from sqlalchemy.sql.expression import true"},{"line_number":47,"context_line":"from sqlalchemy.sql import func"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"from cinder.common import sqlalchemyutils"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba7be1f8_e12a652b","line":46,"updated":"2015-02-27 14:46:24.000000000","message":"from migrate.versioning.util import catch_known_errors should be around here, in this group","commit_id":"70c79ff01c29b1161bdca2dd7d9245f43a784726"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"e37df6eb5cf7251819dfe2e7ab0acdff74b659bd","unresolved":false,"context_lines":[{"line_number":2776,"context_line":"        vol_glance_metadata.key \u003d key"},{"line_number":2777,"context_line":""},{"line_number":2778,"context_line":"        try:"},{"line_number":2779,"context_line":"            vol_glance_metadata.value \u003d str(value)"},{"line_number":2780,"context_line":"        except UnicodeEncodeError:"},{"line_number":2781,"context_line":"            vol_glance_metadata.value \u003d value"},{"line_number":2782,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"ba7be1f8_8b8fe622","line":2779,"updated":"2015-02-28 14:34:04.000000000","message":"Please, replace it with\nvol_glance_metadata.value \u003d six.text_type(value)\ninstead of using str and try-except statement.","commit_id":"2b6a56e6c43bd5ae61248f5832138f52e04a513b"},{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"785138a452ddbd7b9f02dd263f13c1057f31258a","unresolved":false,"context_lines":[{"line_number":2776,"context_line":"        vol_glance_metadata.key \u003d key"},{"line_number":2777,"context_line":""},{"line_number":2778,"context_line":"        try:"},{"line_number":2779,"context_line":"            vol_glance_metadata.value \u003d str(value)"},{"line_number":2780,"context_line":"        except UnicodeEncodeError:"},{"line_number":2781,"context_line":"            vol_glance_metadata.value \u003d value"},{"line_number":2782,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"ba7be1f8_bfe69614","line":2779,"in_reply_to":"ba7be1f8_8b8fe622","updated":"2015-03-02 03:48:38.000000000","message":"OK","commit_id":"2b6a56e6c43bd5ae61248f5832138f52e04a513b"}],"cinder/tests/test_db_api.py":[{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"0a5b9a76ed760b2fe61d960a31976787e4c6f6d2","unresolved":false,"context_lines":[{"line_number":890,"context_line":"        metadata.pop(\u0027c\u0027)"},{"line_number":891,"context_line":"        self.assertEqual(metadata, db.volume_metadata_get(self.ctxt, 1))"},{"line_number":892,"context_line":""},{"line_number":893,"context_line":"    def test_volume_glance_metadata_create(self):"},{"line_number":894,"context_line":"        volume \u003d db.volume_create(self.ctxt, {\u0027host\u0027: \u0027h1\u0027})"},{"line_number":895,"context_line":"        db.volume_glance_metadata_create(self.ctxt, volume[\u0027id\u0027],"},{"line_number":896,"context_line":"                                         \u0027image_name\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"9a80dd14_9728679b","line":893,"updated":"2015-03-09 15:21:11.000000000","message":"If you upload another patch set, I think it would be good to call out the fact that this tests a unicode image name, i.e function could be something like:\ntest_volume_glance_metadata_unicode_create()\nThis can help developers in the future when fixing issues with unicode characters, as they could now search for an example test.","commit_id":"72bcebf88ef8b5f7a6b1d712b0e9328e5447af8f"}]}
