)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"745ef523752cf03c9d1e16fa97f2a4e481284b7c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"c9ff9eaf_1439cd78","updated":"2024-01-09 19:14:25.000000000","message":"@Clay thanks for pushing on this, it\u0027s a nice-to-have and *this is better* than no %\n\nI guess that I\u0027d originally had in mind a  different format. Given that you have done the hard work of identifying the tests etc, I threw together: https://review.opendev.org/c/openstack/swift/+/905143 which keeps the percent values in the message as they are on master\n\nI\u0027m ok with either, WDYT?","commit_id":"22993ab7ae57c59c16cb20708630e57df0e4978f"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"f0d9cfd38f95d4c4e4098f5f080c687127566696","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"01a1c06b_5a2cb679","updated":"2024-01-09 03:11:39.000000000","message":"Good job on not screwing with the tests, now you know that the new behavior differs on py2.","commit_id":"22993ab7ae57c59c16cb20708630e57df0e4978f"}],"swift/common/utils/__init__.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"cbf0f9eb61a94781134153b0d26d0b235ac379e7","unresolved":true,"context_lines":[{"line_number":824,"context_line":"        st \u003d os.statvfs(fs_path_or_fd)"},{"line_number":825,"context_line":"    free_bytes \u003d st.f_frsize * st.f_bavail"},{"line_number":826,"context_line":"    if is_percent:"},{"line_number":827,"context_line":"        size_bytes \u003d st.f_frsize * st.f_blocks"},{"line_number":828,"context_line":"        reserve_bytes \u003d int(reserve_space / 100.0 * size_bytes)"},{"line_number":829,"context_line":"    else:"},{"line_number":830,"context_line":"        reserve_bytes \u003d reserve_space"}],"source_content_type":"text/x-python","patch_set":2,"id":"2acb3647_c3d0713c","side":"PARENT","line":827,"updated":"2024-01-08 22:12:47.000000000","message":"I wonder if it would be \"more correct\" to use `st.f_bsize * st.f_blocks` here?\n\nhttps://docs.python.org/3/library/os.html#os.statvfs\nhttps://stackoverflow.com/questions/54823541/what-do-f-bsize-and-f-frsize-in-struct-statvfs-stand-for","commit_id":"86212fd89a986c9d14f92bbf11303f4597412368"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"cbf0f9eb61a94781134153b0d26d0b235ac379e7","unresolved":true,"context_lines":[{"line_number":823,"context_line":"    else:"},{"line_number":824,"context_line":"        st \u003d os.statvfs(fs_path_or_fd)"},{"line_number":825,"context_line":"    free_bytes \u003d st.f_frsize * st.f_bavail"},{"line_number":826,"context_line":"    size_bytes \u003d st.f_frsize * st.f_blocks"},{"line_number":827,"context_line":"    free_percent \u003d free_bytes / size_bytes * 100.0"},{"line_number":828,"context_line":"    if is_percent:"},{"line_number":829,"context_line":"        reserve_bytes \u003d int(reserve_space / 100.0 * size_bytes)"}],"source_content_type":"text/x-python","patch_set":2,"id":"d014e5e0_6835ede2","line":826,"updated":"2024-01-08 22:12:47.000000000","message":"despite the \"f_fr\" I\u0027m pretty sure this is supposed to be the file system *size* (like the demoninator)\n\n... but OMM I noticed if you do strange things like \"check the size of the fileystem for stdout\" (!? like we do in tests sometimes)\n\n```\n\u003e\u003e\u003e os.fstatvfs(0)\nos.statvfs_result(f_bsize\u003d4096, f_frsize\u003d4096, f_blocks\u003d0, f_bfree\u003d0, f_bavail\u003d0, f_files\u003d0, f_ffree\u003d0, f_favail\u003d0, f_flag\u003d4106, f_namemax\u003d255)\n```\n\nyou can have a 0/0 ZeroDivisionError situation","commit_id":"afb1d1770d5606e3e8b8b69cca3bc11e09658e88"}]}
