)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":27582,"name":"Simon Westphahl","email":"simon.westphahl@bmw.de","username":"simon.westphahl"},"change_message_id":"8c05163239535471c3752aba11035b887cdb3547","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"7f7eee76_9aa870b8","updated":"2022-06-29 05:09:48.000000000","message":"recheck","commit_id":"638617091461d0954952283c7c2ab3fd9e87d72e"}],"nodepool/builder.py":[{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"804bc72566525743a2908dcd55330cc88d6dfcc5","unresolved":false,"context_lines":[{"line_number":383,"context_line":"                image_name, build_id \u003d local_build"},{"line_number":384,"context_line":"                build \u003d self._zk.getBuild(image_name, build_id)"},{"line_number":385,"context_line":"                if not build or build.state \u003d\u003d zk.DELETING:"},{"line_number":386,"context_line":"                    self.log.info(\"Deleting on-disk build with no record: \""},{"line_number":387,"context_line":"                                  \"%s-%s\", image_name, build_id)"},{"line_number":388,"context_line":"                    self._deleteLocalBuild(image_name, build_id)"},{"line_number":389,"context_line":"            except Exception:"}],"source_content_type":"text/x-python","patch_set":1,"id":"afd9505b_729d6de0","line":386,"updated":"2022-06-27 19:59:49.000000000","message":"Seems like being less specifc should be okay here.","commit_id":"707490852f11561c66e362dde712a33f9b4b1f96"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"354a023f7df2c880c696497a97e086c29954e894","unresolved":true,"context_lines":[{"line_number":383,"context_line":"                image_name, build_id \u003d local_build"},{"line_number":384,"context_line":"                build \u003d self._zk.getBuild(image_name, build_id)"},{"line_number":385,"context_line":"                if not build or build.state \u003d\u003d zk.DELETING:"},{"line_number":386,"context_line":"                    self.log.info(\"Deleting on-disk build with no record: \""},{"line_number":387,"context_line":"                                  \"%s-%s\", image_name, build_id)"},{"line_number":388,"context_line":"                    self._deleteLocalBuild(image_name, build_id)"},{"line_number":389,"context_line":"            except Exception:"}],"source_content_type":"text/x-python","patch_set":1,"id":"fb51a2f4_6575c4ea","line":386,"range":{"start_line":386,"start_character":35,"end_line":386,"end_character":72},"updated":"2022-06-27 18:19:49.000000000","message":"This log is slightly misleading in the case where build exists and build.state \u003d\u003d zk.DELETING. Maybe split the two cases to log them separately? Or update the log to be less specific?","commit_id":"707490852f11561c66e362dde712a33f9b4b1f96"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"804bc72566525743a2908dcd55330cc88d6dfcc5","unresolved":false,"context_lines":[{"line_number":508,"context_line":"            for p in self._zk.getBuildProviders(image, build.id):"},{"line_number":509,"context_line":"                uploads +\u003d self._zk.getUploads(image, build.id, p)"},{"line_number":510,"context_line":""},{"line_number":511,"context_line":"            # If we own this build, delete the local DIB files as soon as all"},{"line_number":512,"context_line":"            # provider uploads are in a deleting state. This prevents us from"},{"line_number":513,"context_line":"            # keeping local files around while we wait on clouds to remove"},{"line_number":514,"context_line":"            # the image on their side (which can be very slow)."}],"source_content_type":"text/x-python","patch_set":1,"id":"6614c361_a64079c6","line":511,"updated":"2022-06-27 19:59:49.000000000","message":"Done.","commit_id":"707490852f11561c66e362dde712a33f9b4b1f96"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"354a023f7df2c880c696497a97e086c29954e894","unresolved":true,"context_lines":[{"line_number":508,"context_line":"            for p in self._zk.getBuildProviders(image, build.id):"},{"line_number":509,"context_line":"                uploads +\u003d self._zk.getUploads(image, build.id, p)"},{"line_number":510,"context_line":""},{"line_number":511,"context_line":"            # If we own this build, delete the local DIB files as soon as all"},{"line_number":512,"context_line":"            # provider uploads are in a deleting state. This prevents us from"},{"line_number":513,"context_line":"            # keeping local files around while we wait on clouds to remove"},{"line_number":514,"context_line":"            # the image on their side (which can be very slow)."}],"source_content_type":"text/x-python","patch_set":1,"id":"06ba7543_5419e4ae","line":511,"updated":"2022-06-27 18:19:49.000000000","message":"This comment is no longer accurate as we don\u0027t care about the local DIB files here anymore. Instead we adjust the zk records then let periodic cleanups delete the files.","commit_id":"707490852f11561c66e362dde712a33f9b4b1f96"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"354a023f7df2c880c696497a97e086c29954e894","unresolved":true,"context_lines":[{"line_number":685,"context_line":"        data.builder \u003d self._hostname"},{"line_number":686,"context_line":"        data.formats \u003d list(diskimage.image_types)"},{"line_number":687,"context_line":""},{"line_number":688,"context_line":"        bnum \u003d self._zk.storeBuild(diskimage.name, data)"},{"line_number":689,"context_line":""},{"line_number":690,"context_line":"        try:"},{"line_number":691,"context_line":"            data \u003d self._buildImage(bnum, diskimage)"}],"source_content_type":"text/x-python","patch_set":1,"id":"e25769da_dca48d38","line":688,"updated":"2022-06-27 18:19:49.000000000","message":"We store the zk build info here before we actually start running DIB below. That means the adjustment made to how we delete images should be safe.","commit_id":"707490852f11561c66e362dde712a33f9b4b1f96"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"804bc72566525743a2908dcd55330cc88d6dfcc5","unresolved":false,"context_lines":[{"line_number":710,"context_line":"                \"Unable to update record for build %s of image %s:\","},{"line_number":711,"context_line":"                bnum, diskimage.name)"},{"line_number":712,"context_line":"            data.id \u003d bnum"},{"line_number":713,"context_line":"            CleanupWorker.deleteLocalBuild("},{"line_number":714,"context_line":"                self._config.images_dir, diskimage.name, data.id, self.log)"},{"line_number":715,"context_line":"            data.state \u003d zk.FAILED"},{"line_number":716,"context_line":"            return data"}],"source_content_type":"text/x-python","patch_set":1,"id":"210a819f_b0f8c3e4","line":713,"updated":"2022-06-27 19:59:49.000000000","message":"I originally did, but I changed it for some reason that I can\u0027t quite recall -- it may have been a unit test that didn\u0027t work as well, or it may have simply been for consistency (so we don\u0027t have to worry about two different code paths).  This runs every minute, so in practice the additional delay shouldn\u0027t be a big deal.","commit_id":"707490852f11561c66e362dde712a33f9b4b1f96"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"354a023f7df2c880c696497a97e086c29954e894","unresolved":true,"context_lines":[{"line_number":710,"context_line":"                \"Unable to update record for build %s of image %s:\","},{"line_number":711,"context_line":"                bnum, diskimage.name)"},{"line_number":712,"context_line":"            data.id \u003d bnum"},{"line_number":713,"context_line":"            CleanupWorker.deleteLocalBuild("},{"line_number":714,"context_line":"                self._config.images_dir, diskimage.name, data.id, self.log)"},{"line_number":715,"context_line":"            data.state \u003d zk.FAILED"},{"line_number":716,"context_line":"            return data"}],"source_content_type":"text/x-python","patch_set":1,"id":"f3487256_b7ce96d6","line":713,"updated":"2022-06-27 18:19:49.000000000","message":"We\u0027ve kept the deleteLocalBuild call here but removed it from line 521 of the old side of the diff. Do we want to keep the deleteLocalBuild in both locations to speed up local file deletion in most cases?","commit_id":"707490852f11561c66e362dde712a33f9b4b1f96"}]}
