)]}'
{"manila/api/v2/shares.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"af4141c12d8b967de4419256ee6a2fc8f6d7e1ed","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg % msg_args)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            # Ensure snapshot size is equal to share size"},{"line_number":83,"context_line":"            if share[\u0027size\u0027] !\u003d snapshot[\u0027size\u0027]:"},{"line_number":84,"context_line":"                msg_args \u003d {\u0027s_id\u0027: snapshot_id, \u0027v_id\u0027: share.id}"},{"line_number":85,"context_line":"                msg \u003d _(\"Can\u0027t revert share %(v_id)s \""},{"line_number":86,"context_line":"                        \"%(s_id)s. The share size must be equal to the \""},{"line_number":87,"context_line":"                        \"snapshot size.\")"},{"line_number":88,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg % msg_args)"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"            # Ensure share status is \u0027available\u0027."},{"line_number":91,"context_line":"            if share[\u0027status\u0027] !\u003d constants.STATUS_AVAILABLE:"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_a36dcf05","line":88,"range":{"start_line":83,"start_character":0,"end_line":88,"end_character":68},"updated":"2020-06-18 17:22:18.000000000","message":"You should be able to revert to smaller, or bigger snapshots than your share - did you find a bug someplace?","commit_id":"33ac8f66ecf872c562a1c8c773396f429ded5a8c"},{"author":{"_account_id":31506,"name":"Lin PeiWen","email":"591171850@qq.com","username":"LinPeiWen"},"change_message_id":"4c0888e759d24c4246fc315893031b9b890de067","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg % msg_args)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            # Ensure snapshot size is equal to share size"},{"line_number":83,"context_line":"            if share[\u0027size\u0027] !\u003d snapshot[\u0027size\u0027]:"},{"line_number":84,"context_line":"                msg_args \u003d {\u0027s_id\u0027: snapshot_id, \u0027v_id\u0027: share.id}"},{"line_number":85,"context_line":"                msg \u003d _(\"Can\u0027t revert share %(v_id)s \""},{"line_number":86,"context_line":"                        \"%(s_id)s. The share size must be equal to the \""},{"line_number":87,"context_line":"                        \"snapshot size.\")"},{"line_number":88,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg % msg_args)"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"            # Ensure share status is \u0027available\u0027."},{"line_number":91,"context_line":"            if share[\u0027status\u0027] !\u003d constants.STATUS_AVAILABLE:"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_fa0bacd2","line":88,"range":{"start_line":83,"start_character":0,"end_line":88,"end_character":68},"in_reply_to":"bf51134e_0e490d8a","updated":"2020-06-23 00:49:02.000000000","message":"Useful, thanks for sharing","commit_id":"33ac8f66ecf872c562a1c8c773396f429ded5a8c"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"11843e144ef41f2342b16e44e59a45fa6054ccf9","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg % msg_args)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            # Ensure snapshot size is equal to share size"},{"line_number":83,"context_line":"            if share[\u0027size\u0027] !\u003d snapshot[\u0027size\u0027]:"},{"line_number":84,"context_line":"                msg_args \u003d {\u0027s_id\u0027: snapshot_id, \u0027v_id\u0027: share.id}"},{"line_number":85,"context_line":"                msg \u003d _(\"Can\u0027t revert share %(v_id)s \""},{"line_number":86,"context_line":"                        \"%(s_id)s. The share size must be equal to the \""},{"line_number":87,"context_line":"                        \"snapshot size.\")"},{"line_number":88,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg % msg_args)"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"            # Ensure share status is \u0027available\u0027."},{"line_number":91,"context_line":"            if share[\u0027status\u0027] !\u003d constants.STATUS_AVAILABLE:"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_0e490d8a","line":88,"range":{"start_line":83,"start_character":0,"end_line":88,"end_character":68},"in_reply_to":"bf51134e_3771ebe1","updated":"2020-06-22 17:41:04.000000000","message":"I see, can this issue be resolved then, in the driver? It\u0027s not possible today to differentiate between the different mechanisms of snapshots that backends may have. \n\n \n\nSome backends like ZFS/NetApp/EMC take in-place space efficient snapshots. Some others make entire copies of the filesystem (like LVM) - so perhaps we need this error handling in the driver itself. The GlusterFS driver can check available space prior to reverting and report an error that the revert is not possible - and set the share and the snapshot statuses back to \"available\".\n\n \n\nDoes that work?","commit_id":"33ac8f66ecf872c562a1c8c773396f429ded5a8c"},{"author":{"_account_id":31506,"name":"Lin PeiWen","email":"591171850@qq.com","username":"LinPeiWen"},"change_message_id":"22a66e59aed769c9ecaa8f259f1463c468a57911","unresolved":false,"context_lines":[{"line_number":80,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg % msg_args)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"            # Ensure snapshot size is equal to share size"},{"line_number":83,"context_line":"            if share[\u0027size\u0027] !\u003d snapshot[\u0027size\u0027]:"},{"line_number":84,"context_line":"                msg_args \u003d {\u0027s_id\u0027: snapshot_id, \u0027v_id\u0027: share.id}"},{"line_number":85,"context_line":"                msg \u003d _(\"Can\u0027t revert share %(v_id)s \""},{"line_number":86,"context_line":"                        \"%(s_id)s. The share size must be equal to the \""},{"line_number":87,"context_line":"                        \"snapshot size.\")"},{"line_number":88,"context_line":"                raise exc.HTTPBadRequest(explanation\u003dmsg % msg_args)"},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"            # Ensure share status is \u0027available\u0027."},{"line_number":91,"context_line":"            if share[\u0027status\u0027] !\u003d constants.STATUS_AVAILABLE:"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_3771ebe1","line":88,"range":{"start_line":83,"start_character":0,"end_line":88,"end_character":68},"in_reply_to":"bf51134e_a36dcf05","updated":"2020-06-19 08:43:08.000000000","message":"The result is recoverable, is it allowed to revert to a smaller or larger snapshot than the share? Assuming that my share snapshot is 1TB, but my share has shrunk to 100MB, and the hard disk storage is 500MB remaining, if it is restored at this time, will the hard disk be overweight or the risk of data overflow, at least I will have this situation during the glusterfs test, So I made a suggestion that snapshot size is equal to share size.","commit_id":"33ac8f66ecf872c562a1c8c773396f429ded5a8c"}]}
