)]}'
{"nova/virt/storage_users.py":[{"author":{"_account_id":5638,"name":"Davanum Srinivas","email":"davanum@gmail.com","username":"dims-v"},"change_message_id":"a0c350ccf70f00a07bcda92e6a7f0270bfbb33c2","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from nova import utils"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"TWENTY_FOUR_HOURS \u003d 3600 * 24"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"@utils.synchronized(\u0027storage-registry-lock\u0027, external\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAS3%2F%2Fm84%3D","side":"PARENT","line":25,"updated":"2013-09-24 00:47:10.000000000","message":"Can you please add \"CONF.import_opt(\u0027instances_path\u0027, \u0027nova.compute.manager\u0027)\" - see nova/virt/libvirt/utils.py for example","commit_id":"f1de2b2af4529ddebd1efa96e3f30adee43c925e"},{"author":{"_account_id":2903,"name":"Morgan Fainberg","email":"morgan.fainberg@gmail.com","username":"mdrnstm"},"change_message_id":"182c6a25b44a18acc462bb2c94265fa2f7d759fc","unresolved":false,"context_lines":[{"line_number":22,"context_line":"from nova import utils"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"TWENTY_FOUR_HOURS \u003d 3600 * 24"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"@utils.synchronized(\u0027storage-registry-lock\u0027, external\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAS3%2F%2Fm8E%3D","side":"PARENT","line":25,"in_reply_to":"AAAAS3%2F%2Fm84%3D","updated":"2013-09-24 00:50:49.000000000","message":"Done","commit_id":"f1de2b2af4529ddebd1efa96e3f30adee43c925e"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"2e4a2805aceec262ce083d5fab00727d75ef0738","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        id_path \u003d os.path.join(storage_path, \u0027compute_nodes\u0027)"},{"line_number":90,"context_line":"        if os.path.exists(id_path):"},{"line_number":91,"context_line":"            with open(id_path) as f:"},{"line_number":92,"context_line":"                d \u003d json.loads(f.read())"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        recent_users \u003d []"},{"line_number":95,"context_line":"        for node in d:"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAS3%2F%2FaOA%3D","line":92,"updated":"2013-09-27 09:07:55.000000000","message":"I don\u0027t really like the cut and paste from the above function, but that should be a separate change I guess.","commit_id":"150af94d881482d3d2fe1ac7c2e71ff1179d16ca"}]}
