)]}'
{"id":"openstack%2Fci-log-processing~995928","triplet_id":"openstack%2Fci-log-processing~master~I3fd7595a5e6d7c9b40a3d141d52b96829ac730a7","project":"openstack/ci-log-processing","branch":"master","attention_set":{},"removed_from_attention_set":{"20676":{"account":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"last_update":"2026-07-03 13:35:52.000000000","reason":"\u003cGERRIT_ACCOUNT_20676\u003e replied on the change","reason_account":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"}}},"hashtags":[],"change_id":"I3fd7595a5e6d7c9b40a3d141d52b96829ac730a7","subject":"Prevent BuildCache from inserting duplicate rows on every run","status":"MERGED","created":"2026-07-03 09:29:25.000000000","updated":"2026-07-06 07:06:14.000000000","submitted":"2026-07-06 07:05:18.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"995928","meta_rev_id":"a440ae2d785f7263c3fe70ff3779343c049f8784","_number":995928,"virtual_id_number":995928,"owner":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-07-06 07:05:18.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"all":[{"value":2,"date":"2026-07-03 13:35:52.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"all":[{"value":1,"date":"2026-07-06 06:49:10.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-07-03 09:45:35.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"48ee47e30387936fd022ecd5c480022689522190","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"date":"2026-07-03 09:29:25.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"21411309e12bd9ae4f3f0a343b3908d452b92eee","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-03 09:45:35.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/81e354a651bf4c79b3efc6d40b6889de\n\n- opendev-tox-docs https://zuul.opendev.org/t/openstack/build/cb82790bf51243d390f8d4f78ab3a175 : SUCCESS in 2m 47s\n- openstack-tox-linters https://zuul.opendev.org/t/openstack/build/592255bd49e84450959374e0f9d7686a : SUCCESS in 3m 49s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3b06ae88c8c242ddbb8dfa2daea35839 : SUCCESS in 2m 13s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/f95a4115cc564139ab98335f7c8b1d2d : FAILURE in 2m 19s\n- ci-log-processing-build-image https://zuul.opendev.org/t/openstack/build/3f18cd68621249cfaf177b0e2b7fb184 : SUCCESS in 8m 21s\n- ci-log-processing-functional-test-centos-9-stream-sender https://zuul.opendev.org/t/openstack/build/e485edb6253b4640a11e1775d016d6db : SUCCESS in 8m 14s\n\nWarning:\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":1},{"id":"3fbd93b61556587187cf0f97ebe1bd8876fe5b77","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"date":"2026-07-03 09:51:14.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"4f8b8310716676e390d6f6ae31bcbaf510235c57","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-03 10:06:13.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/4fa0720e8e844c7c9a887b3e4ed61edf\n\n- opendev-tox-docs https://zuul.opendev.org/t/openstack/build/124feeaecff84765906a1b41376b6460 : SUCCESS in 2m 57s\n- openstack-tox-linters https://zuul.opendev.org/t/openstack/build/06a605e07bb744f98cdff7a6a207ce54 : SUCCESS in 2m 49s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8dd2ef6e5ad848bd859927dadda0711b : SUCCESS in 2m 04s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/4202ba96f65c40e39a122012786dc435 : SUCCESS in 3m 08s\n- ci-log-processing-build-image https://zuul.opendev.org/t/openstack/build/25d2302556d44ad4b0b930094297fe1d : SUCCESS in 8m 30s\n- ci-log-processing-functional-test-centos-9-stream-sender https://zuul.opendev.org/t/openstack/build/7b52c846fd2144e784755a8ef6359eeb : SUCCESS in 7m 13s\n\nWarning:\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":2},{"id":"8500b4b9fef272d5a6b475dc62eb46c1bd63156a","author":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"date":"2026-07-03 13:35:52.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"0ce67d29149c578c15f2c0cdc7296b6c65af427b","author":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"date":"2026-07-06 06:49:06.000000000","message":"Patch Set 2: -Workflow","accounts_in_message":[],"_revision_number":2},{"id":"2fa67984b5f95733e693c48e68f0a2d0561c29a7","author":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"date":"2026-07-06 06:49:10.000000000","message":"Patch Set 2: Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"fee00a8b466f976df4fd904160a7ab12029e370b","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-06 06:49:20.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"17361179581a465973731d256e5a31cfd6ad96f2","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-06 07:05:18.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c0159b34ce7f4e44b040b84b45f457f9\n\n- opendev-tox-docs https://zuul.opendev.org/t/openstack/build/d58de1c564504c1e8e41226e9b9a7e61 : SUCCESS in 2m 55s\n- openstack-tox-linters https://zuul.opendev.org/t/openstack/build/588ad10257ed43cf881cbae839006c9a : SUCCESS in 2m 16s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d17ee06b98bf47828229565e6c44f6cf : SUCCESS in 3m 46s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/729b3c21736a4cd2bc763309bd8399b0 : SUCCESS in 2m 57s\n- ci-log-processing-functional-test-centos-9-stream-sender https://zuul.opendev.org/t/openstack/build/b90615905d7c427abaed5433df73aede : SUCCESS in 8m 32s\n- ci-log-processing-build-image https://zuul.opendev.org/t/openstack/build/787dccdc05594c9db9b77bd3f1f522b7 : SUCCESS in 8m 02s\n\nWarning:\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post.yaml for job ci-log-processing-build-image.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/cleanup.yaml for job ci-log-processing-build-image.  Add to preserve-home-paths if safe, or otherwise remove.\n  File .docker/config.json found in build home directory during playbook opendev.org/opendev/base-jobs/playbooks/base/post-logs.yaml for job ci-log-processing-build-image.  Add to preserve-home-paths if safe, or otherwise remove.","accounts_in_message":[],"_revision_number":2},{"id":"c5af3d7a5cc47170e398631b1802c4c484948dde","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-06 07:05:18.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"a440ae2d785f7263c3fe70ff3779343c049f8784","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-06 07:06:14.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c0d04bfcbf044861ba0b3288441aa4cc\n\n- promote-tox-docs-infra https://zuul.opendev.org/t/openstack/build/0689780462ed4acba581c8b2a9e4890d : SUCCESS in 43s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"ca3c8b39cc2420a9a526e67f284d58e942485d32","revisions":{"95ace93216f96bb396f35f9988331d8f97b1ec55":{"kind":"REWORK","_number":1,"created":"2026-07-03 09:29:25.000000000","uploader":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"ref":"refs/changes/28/995928/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ci-log-processing","ref":"refs/changes/28/995928/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ci-log-processing refs/changes/28/995928/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ci-log-processing refs/changes/28/995928/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ci-log-processing refs/changes/28/995928/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ci-log-processing refs/changes/28/995928/1"}}},"commit":{"parents":[{"commit":"6301cae6ef195813936a80ee7eef87b7555b69a2","subject":"Re-encrypt registry password with openstack/ci-log-processing","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ci-log-processing/commit/6301cae6ef195813936a80ee7eef87b7555b69a2"}]}],"author":{"name":"Daniel Pawlik","email":"dpawlik@redhat.com","date":"2026-07-03 09:28:58.000000000","tz":120},"committer":{"name":"Daniel Pawlik","email":"dpawlik@redhat.com","date":"2026-07-03 09:29:09.000000000","tz":120},"subject":"Prevent BuildCache from inserting duplicate rows on every run","message":"Prevent BuildCache from inserting duplicate rows on every run\n\nsave() was reinserting all self.builds (including rows already in the DB),\ncausing the table to grow unboundedly across runs. Track only newly-added\nbuilds in self._new and insert only those.\n\nChange-Id: I3fd7595a5e6d7c9b40a3d141d52b96829ac730a7\nSigned-off-by: Daniel Pawlik \u003cdpawlik@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ci-log-processing/commit/95ace93216f96bb396f35f9988331d8f97b1ec55"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ci-log-processing/commit/95ace93216f96bb396f35f9988331d8f97b1ec55"}]},"branch":"refs/heads/master"},"ca3c8b39cc2420a9a526e67f284d58e942485d32":{"kind":"REWORK","_number":2,"created":"2026-07-03 09:51:14.000000000","uploader":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"},"ref":"refs/changes/28/995928/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ci-log-processing","ref":"refs/changes/28/995928/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ci-log-processing refs/changes/28/995928/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ci-log-processing refs/changes/28/995928/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ci-log-processing refs/changes/28/995928/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ci-log-processing refs/changes/28/995928/2"}}},"commit":{"parents":[{"commit":"6301cae6ef195813936a80ee7eef87b7555b69a2","subject":"Re-encrypt registry password with openstack/ci-log-processing","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ci-log-processing/commit/6301cae6ef195813936a80ee7eef87b7555b69a2"}]}],"author":{"name":"Daniel Pawlik","email":"dpawlik@redhat.com","date":"2026-07-03 09:28:58.000000000","tz":120},"committer":{"name":"Daniel Pawlik","email":"dpawlik@redhat.com","date":"2026-07-03 09:51:00.000000000","tz":120},"subject":"Prevent BuildCache from inserting duplicate rows on every run","message":"Prevent BuildCache from inserting duplicate rows on every run\n\nsave() was reinserting all self.builds (including rows already in the DB),\ncausing the table to grow unboundedly across runs. Track only newly-added\nbuilds in self._new and insert only those.\n\nChange-Id: I3fd7595a5e6d7c9b40a3d141d52b96829ac730a7\nSigned-off-by: Daniel Pawlik \u003cdpawlik@redhat.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ci-log-processing/commit/ca3c8b39cc2420a9a526e67f284d58e942485d32"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ci-log-processing/commit/ca3c8b39cc2420a9a526e67f284d58e942485d32"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":20676,"name":"daniel.pawlik","display_name":"Daniel Pawlik","email":"dpawlik@redhat.com","username":"daniel.pawlik"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
