)]}'
{"cinder/volume/drivers/dell_emc/vnx/utils.py":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"0f84a2f56d70c888756e2ffd41a779cadda3cef9","unresolved":false,"context_lines":[{"line_number":457,"context_line":"    if volume.volume_type:"},{"line_number":458,"context_line":"        qos_specs \u003d volume.volume_type.qos_specs"},{"line_number":459,"context_line":"    else:"},{"line_number":460,"context_line":"        qos_specs \u003d None"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"    if qos_specs is None:"},{"line_number":463,"context_line":"        return None"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    qos_specs \u003d qos_specs[\u0027qos_specs\u0027]"},{"line_number":466,"context_line":"    if qos_specs is None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f515b1d_778b731e","line":463,"range":{"start_line":460,"start_character":0,"end_line":463,"end_character":19},"updated":"2017-09-28 07:01:15.000000000","message":"we can return None immediately","commit_id":"86638efe77f7b5ac7d936c902058dd18f82ff294"},{"author":{"_account_id":10628,"name":"Peter Wang","email":"peter.wang13@emc.com","username":"peter_wang"},"change_message_id":"86a7acd0f6dce163b84359534aab9b51b541aef3","unresolved":false,"context_lines":[{"line_number":457,"context_line":"    if volume.volume_type:"},{"line_number":458,"context_line":"        qos_specs \u003d volume.volume_type.qos_specs"},{"line_number":459,"context_line":"    else:"},{"line_number":460,"context_line":"        qos_specs \u003d None"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"    if qos_specs is None:"},{"line_number":463,"context_line":"        return None"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    qos_specs \u003d qos_specs[\u0027qos_specs\u0027]"},{"line_number":466,"context_line":"    if qos_specs is None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f515b1d_3a43a26e","line":463,"range":{"start_line":460,"start_character":0,"end_line":463,"end_character":19},"in_reply_to":"7f515b1d_778b731e","updated":"2017-09-28 07:58:16.000000000","message":"Done","commit_id":"86638efe77f7b5ac7d936c902058dd18f82ff294"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"0f84a2f56d70c888756e2ffd41a779cadda3cef9","unresolved":false,"context_lines":[{"line_number":454,"context_line":""},{"line_number":455,"context_line":""},{"line_number":456,"context_line":"def get_backend_qos_specs(volume):"},{"line_number":457,"context_line":"    if volume.volume_type:"},{"line_number":458,"context_line":"        qos_specs \u003d volume.volume_type.qos_specs"},{"line_number":459,"context_line":"    else:"},{"line_number":460,"context_line":"        qos_specs \u003d None"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"    if qos_specs is None:"},{"line_number":463,"context_line":"        return None"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    qos_specs \u003d qos_specs[\u0027qos_specs\u0027]"},{"line_number":466,"context_line":"    if qos_specs is None:"},{"line_number":467,"context_line":"        return None"},{"line_number":468,"context_line":""},{"line_number":469,"context_line":"    consumer \u003d qos_specs[\u0027consumer\u0027]"},{"line_number":470,"context_line":"    # Front end QoS specs are handled by nova. Just ignore them here."}],"source_content_type":"text/x-python","patch_set":1,"id":"7f515b1d_f73f6322","line":467,"range":{"start_line":457,"start_character":0,"end_line":467,"end_character":19},"updated":"2017-09-28 07:01:15.000000000","message":"or even with try/except:\n\n    try:\n        qos_specs \u003d volume.volume_type.qos_specs[\u0027qos_specs\u0027]\n        if qos_specs is None:\n            return None\n    except:\n        return None","commit_id":"86638efe77f7b5ac7d936c902058dd18f82ff294"},{"author":{"_account_id":10628,"name":"Peter Wang","email":"peter.wang13@emc.com","username":"peter_wang"},"change_message_id":"86a7acd0f6dce163b84359534aab9b51b541aef3","unresolved":false,"context_lines":[{"line_number":454,"context_line":""},{"line_number":455,"context_line":""},{"line_number":456,"context_line":"def get_backend_qos_specs(volume):"},{"line_number":457,"context_line":"    if volume.volume_type:"},{"line_number":458,"context_line":"        qos_specs \u003d volume.volume_type.qos_specs"},{"line_number":459,"context_line":"    else:"},{"line_number":460,"context_line":"        qos_specs \u003d None"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"    if qos_specs is None:"},{"line_number":463,"context_line":"        return None"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    qos_specs \u003d qos_specs[\u0027qos_specs\u0027]"},{"line_number":466,"context_line":"    if qos_specs is None:"},{"line_number":467,"context_line":"        return None"},{"line_number":468,"context_line":""},{"line_number":469,"context_line":"    consumer \u003d qos_specs[\u0027consumer\u0027]"},{"line_number":470,"context_line":"    # Front end QoS specs are handled by nova. Just ignore them here."}],"source_content_type":"text/x-python","patch_set":1,"id":"7f515b1d_ba567229","line":467,"range":{"start_line":457,"start_character":0,"end_line":467,"end_character":19},"in_reply_to":"7f515b1d_f73f6322","updated":"2017-09-28 07:58:16.000000000","message":"I tend to avoid wide try-catch cause. will revise them all.","commit_id":"86638efe77f7b5ac7d936c902058dd18f82ff294"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"8c7bcabf621000f7d0ba98e8eb0795a260182e63","unresolved":false,"context_lines":[{"line_number":459,"context_line":"    else:"},{"line_number":460,"context_line":"        return None"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"    if not qos_specs or not qos_specs[\u0027qos_specs\u0027]:"},{"line_number":463,"context_line":"        return None"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    qos_specs \u003d qos_specs[\u0027qos_specs\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f515b1d_163cfa2c","line":462,"range":{"start_line":462,"start_character":28,"end_line":462,"end_character":50},"updated":"2017-10-02 19:59:30.000000000","message":"This will still throw a KeyError if \u0027qos_specs\u0027 is not present in the dict.\n\nNeeds to be\n    or \u0027qos_specs\u0027 not in qos_specs:","commit_id":"3192386d158881fe7816bc1258c959c08dd98d58"},{"author":{"_account_id":10628,"name":"Peter Wang","email":"peter.wang13@emc.com","username":"peter_wang"},"change_message_id":"fc8063519520eb34ada6fc88880241ccf1f2e6b5","unresolved":false,"context_lines":[{"line_number":459,"context_line":"    else:"},{"line_number":460,"context_line":"        return None"},{"line_number":461,"context_line":""},{"line_number":462,"context_line":"    if not qos_specs or not qos_specs[\u0027qos_specs\u0027]:"},{"line_number":463,"context_line":"        return None"},{"line_number":464,"context_line":""},{"line_number":465,"context_line":"    qos_specs \u003d qos_specs[\u0027qos_specs\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"7f515b1d_8ed54d46","line":462,"range":{"start_line":462,"start_character":28,"end_line":462,"end_character":50},"in_reply_to":"7f515b1d_163cfa2c","updated":"2017-10-04 07:33:39.000000000","message":"Yes, could be more safe.\n\nBTW, how it would happen that qos_sepcs is not None while \u0027qos_specs\u0027 is not present in qos_specs?\n\nanyway I while change to your form.\n\n\nThanks\nPeter","commit_id":"3192386d158881fe7816bc1258c959c08dd98d58"}]}
