)]}'
{"searchlight/api/middleware/context.py":[{"author":{"_account_id":10151,"name":"kexiaodong","email":"kexiaodong@huawei.com","username":"kexiaodong"},"change_message_id":"50625684afca46781b9da9549854d8852f44debc","unresolved":false,"context_lines":[{"line_number":56,"context_line":"            # For python 3 compatibility need to use bytes type"},{"line_number":57,"context_line":"            prefix \u003d \u0027req-\u0027"},{"line_number":58,"context_line":"            if isinstance(request_id, bytes):"},{"line_number":59,"context_line":"                prefix \u003d b\u0027req-\u0027"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"            if not request_id.startswith(prefix):"},{"line_number":62,"context_line":"                request_id \u003d prefix + request_id"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_4c0a9221","line":59,"updated":"2015-07-29 11:29:46.000000000","message":"Using \"startswith\" means request_id is a string.\nSo I think \"isinstance of bytes\" is not need.","commit_id":"2031d218128b53e6705d4bde574789507fd3eeb7"},{"author":{"_account_id":8300,"name":"Abhijeet Malawade","email":"abhijeet.malawade@gmail.com","username":"abhijeet"},"change_message_id":"e8d76056e957d2ea5da5d77552014887af4ef02e","unresolved":false,"context_lines":[{"line_number":56,"context_line":"            # For python 3 compatibility need to use bytes type"},{"line_number":57,"context_line":"            prefix \u003d \u0027req-\u0027"},{"line_number":58,"context_line":"            if isinstance(request_id, bytes):"},{"line_number":59,"context_line":"                prefix \u003d b\u0027req-\u0027"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"            if not request_id.startswith(prefix):"},{"line_number":62,"context_line":"                request_id \u003d prefix + request_id"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_c7475ba1","line":59,"in_reply_to":"3a50d1a3_4c0a9221","updated":"2015-07-29 12:03:29.000000000","message":"Hi kexiaodong,\n\nIn python 3 we get request id as bytes not string (str). \noslo_context generates new request-id if we do not provide it while creating \u0027RequestContext\u0027 object. https://github.com/openstack/oslo.context/blob/master/oslo_context/context.py#L32\n\nIn python 2 it is returning str (string) and in python 3 it is returning  bytes. \nBecause of this need to use isinstance, otherwise it will throw TypeError in python 3.","commit_id":"2031d218128b53e6705d4bde574789507fd3eeb7"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"0bad2c8fab78001f722888f3d74d6e37a52a9ca9","unresolved":false,"context_lines":[{"line_number":56,"context_line":"            # For python 3 compatibility need to use bytes type"},{"line_number":57,"context_line":"            prefix \u003d \u0027req-\u0027"},{"line_number":58,"context_line":"            if isinstance(request_id, bytes):"},{"line_number":59,"context_line":"                prefix \u003d b\u0027req-\u0027"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"            if not request_id.startswith(prefix):"},{"line_number":62,"context_line":"                request_id \u003d prefix + request_id"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_9eb4dcd4","line":59,"in_reply_to":"3a50d1a3_c7475ba1","updated":"2015-07-31 04:55:00.000000000","message":"Thanks for the additional explanation!","commit_id":"2031d218128b53e6705d4bde574789507fd3eeb7"}]}
