)]}'
{"id":"openstack%2Fcloudkitty~981130","triplet_id":"openstack%2Fcloudkitty~master~Ic7698b8079ce32850a52a46f6b09ed32c1ddf037","project":"openstack/cloudkitty","branch":"master","attention_set":{},"removed_from_attention_set":{"28356":{"account":{"_account_id":28356,"name":"Rafael Weingartner","email":"rafael@apache.org","username":"rafaelweingartner"},"last_update":"2026-03-30 16:21:47.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Ic7698b8079ce32850a52a46f6b09ed32c1ddf037","subject":"Optimize the loading of rating rules","status":"MERGED","created":"2026-03-18 14:34:49.000000000","updated":"2026-03-30 16:22:51.000000000","submitted":"2026-03-30 16:21:47.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":"981130","meta_rev_id":"3c8f83ee4051b0aa19d829cc63416ebc257c0086","_number":981130,"virtual_id_number":981130,"owner":{"_account_id":28356,"name":"Rafael Weingartner","email":"rafael@apache.org","username":"rafaelweingartner"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},{"value":0,"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-03-30 16:21:47.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"}],"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":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},"all":[{"value":2,"date":"2026-03-19 08:30:14.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},{"value":1,"date":"2026-03-24 06:19:14.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2026-03-30 15:05:01.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"}],"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":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"all":[{"value":0,"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},{"value":0,"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2026-03-30 15:05:01.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},{"value":0,"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"}],"values":{"-1":"Branch Freeze"," 0":"No Priority","+1":"Important Change","+2":"Gate Blocker Fix / Urgent Change"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-03-18 15:39:42.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"},{"updated":"2026-03-19 08:30:14.000000000","updated_by":{"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},"reviewer":{"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},"state":"REVIEWER"},{"updated":"2026-03-24 06:19:14.000000000","updated_by":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"reviewer":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"state":"REVIEWER"},{"updated":"2026-03-30 15:05:01.000000000","updated_by":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"reviewer":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"state":"REVIEWER"}],"messages":[{"id":"1444f33a3777086217c9f38b8126b7082d5b84be","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":28356,"name":"Rafael Weingartner","email":"rafael@apache.org","username":"rafaelweingartner"},"date":"2026-03-18 14:34:49.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"7127e098fe1d70ac417670c34ddbe84b8fc6129a","author":{"_account_id":28356,"name":"Rafael Weingartner","email":"rafael@apache.org","username":"rafaelweingartner"},"date":"2026-03-18 14:35:03.000000000","message":"Patch Set 1:\n\nThis change is ready for review.","accounts_in_message":[],"_revision_number":1},{"id":"d955b1aeda70970e3a523aa3219c348637f4ed81","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-18 15:39:42.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/71dda0bc808b40c6bfb48c52d42ca5be\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/e03984e8742145c5ad542f1625d47451 : SUCCESS in 4m 58s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/6b9156773aa943128a99827e285d7269 : SUCCESS in 3m 12s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/ed4bf6381f52449c94c0f493369c4f3d : SUCCESS in 3m 50s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/433a0af2033e4fabad5dc18127da7bf8 : SUCCESS in 6m 10s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/c0a61d69f61747f3a4ea5b2ecdeb9966 : SUCCESS in 8m 50s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/285ba79f2fa3442aaa3c60c45cc50dbb : SUCCESS in 4m 00s\n- cloudkitty-tempest-full-v2-storage-influxdb https://zuul.opendev.org/t/openstack/build/17a0991de2f6401c85c77138c7c4246d : SUCCESS in 34m 08s\n- cloudkitty-tempest-full-v2-storage-influxdb-v2 https://zuul.opendev.org/t/openstack/build/0f9402017db14c108452895bd6d16e29 : SUCCESS in 33m 11s\n- cloudkitty-tempest-full-v2-storage-elasticsearch https://zuul.opendev.org/t/openstack/build/b9c4fd8aacfc49d78950272729828398 : SUCCESS in 39m 37s\n- cloudkitty-tempest-full-v2-storage-opensearch https://zuul.opendev.org/t/openstack/build/15f1351e3ec840a78b87d51cebaaa4a5 : SUCCESS in 37m 28s\n- cloudkitty-tempest-full-v1-storage-sqlalchemy https://zuul.opendev.org/t/openstack/build/83f7dcfbc9a646b799ed3b6bda611b90 : SUCCESS in 34m 38s\n- cloudkitty-tempest-full-v2-storage-loki https://zuul.opendev.org/t/openstack/build/12faf6870e9e4738b4a33898007613ac : SUCCESS in 35m 16s\n- cloudkitty-tempest-full-ipv6-only https://zuul.opendev.org/t/openstack/build/a55940262a1f4c4ab1cae0302a239e96 : SUCCESS in 33m 32s\n- cloudkitty-tempest-full-v2-fetcher-collector-prometheus https://zuul.opendev.org/t/openstack/build/935aad1643e94d77bb51411e2c4749d5 : SUCCESS in 39m 19s\n- cloudkitty-tox-bandit https://zuul.opendev.org/t/openstack/build/f4412914cf364295b4620871064bc3a8 : FAILURE in 5m 10s (non-voting)\n- cloudkitty-grenade-job https://zuul.opendev.org/t/openstack/build/5cc64561d6db4c8e99fdd9fa6355272b : SUCCESS in 58m 21s","accounts_in_message":[],"_revision_number":1},{"id":"07baed20d578ebe868a82fee250fe813327c0f9f","author":{"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},"date":"2026-03-19 08:30:14.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"993850d11853a778e8b3dcc3540fa66c55e61d16","author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"date":"2026-03-24 06:19:14.000000000","message":"Patch Set 1: Code-Review+1","accounts_in_message":[],"_revision_number":1},{"id":"08afc1324997480d7e0a9fa7ba18a0c952435ca9","author":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"date":"2026-03-30 15:05:01.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"2270b2156a250ef8bbb9f385ce163f933b364731","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-30 15:05:29.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"f91157568df1dfb9329ccfc98e1ce675c3d1d458","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-30 16:21:47.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/2d7a880dbd8745a7be1207d0d6c2d2e2\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/e050a4c002b74d0b9223a19d4f506c35 : SUCCESS in 3m 09s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/1647bf6233224c0f881ebb39b42d4383 : SUCCESS in 2m 16s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/3a8b25be0b0148ae966ab6ea53919d3d : SUCCESS in 2m 19s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/7b9f47e1c4ef4d5d86cff48cb587f93f : SUCCESS in 2m 10s\n- cloudkitty-tempest-full-v2-storage-influxdb https://zuul.opendev.org/t/openstack/build/1e84b28f7bde4b6292ee2674d510e378 : SUCCESS in 14m 12s\n- cloudkitty-tempest-full-v2-storage-influxdb-v2 https://zuul.opendev.org/t/openstack/build/69a9aa6d9b1040e3baf93669c738d010 : SUCCESS in 14m 23s\n- cloudkitty-tempest-full-v2-storage-elasticsearch https://zuul.opendev.org/t/openstack/build/7bf82afb9f6c40d3be30c94cd2654294 : SUCCESS in 14m 38s\n- cloudkitty-tempest-full-v2-storage-opensearch https://zuul.opendev.org/t/openstack/build/ed9cc275fff8489bab77e988b634e7ad : SUCCESS in 34m 21s\n- cloudkitty-tempest-full-v1-storage-sqlalchemy https://zuul.opendev.org/t/openstack/build/1a59690c9e1945cca75379df0d742dcc : SUCCESS in 14m 10s\n- cloudkitty-tempest-full-v2-storage-loki https://zuul.opendev.org/t/openstack/build/6ad2c16cfe614912ad5aca980597d656 : SUCCESS in 32m 25s\n- cloudkitty-tempest-full-ipv6-only https://zuul.opendev.org/t/openstack/build/c82e3e942fdb45c28acefa11409def41 : SUCCESS in 31m 30s\n- cloudkitty-grenade-job https://zuul.opendev.org/t/openstack/build/bdc75f2bea8c4d259c9b75938552c83a : SUCCESS in 1h 10m 30s\n- cloudkitty-tempest-full-v2-fetcher-collector-prometheus https://zuul.opendev.org/t/openstack/build/e0392816115145109f6f930ae243e535 : SUCCESS in 36m 14s","accounts_in_message":[],"_revision_number":1},{"id":"514520f91a95d45df23c40671f2c3807985bf075","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-30 16:21:47.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"3c8f83ee4051b0aa19d829cc63416ebc257c0086","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-03-30 16:22:51.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/53c5a15a51344645ad4cf2be6d9cbddc\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/55b956993b5342e09b36a2d41c217f20 : SUCCESS in 48s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"22807c7eca9c1aea117536169d09f3cfef619456","revisions":{"22807c7eca9c1aea117536169d09f3cfef619456":{"kind":"REWORK","_number":1,"created":"2026-03-18 14:34:49.000000000","uploader":{"_account_id":28356,"name":"Rafael Weingartner","email":"rafael@apache.org","username":"rafaelweingartner"},"ref":"refs/changes/30/981130/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/cloudkitty","ref":"refs/changes/30/981130/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/cloudkitty refs/changes/30/981130/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/cloudkitty refs/changes/30/981130/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/cloudkitty refs/changes/30/981130/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/cloudkitty refs/changes/30/981130/1"}}},"commit":{"parents":[{"commit":"84893de76173b88463260d07b8b0ef6eab3c4e54","subject":"Merge \"devstack: Use common function to manage keystoneauth options\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cloudkitty/commit/84893de76173b88463260d07b8b0ef6eab3c4e54"}]}],"author":{"name":"Rafael Weingärtner","email":"rafael@apache.org","date":"2026-03-18 14:34:04.000000000","tz":-180},"committer":{"name":"Rafael Weingärtner","email":"rafael@apache.org","date":"2026-03-18 14:34:40.000000000","tz":-180},"subject":"Optimize the loading of rating rules","message":"Optimize the loading of rating rules\n\nIt was discovered that for every processing cycle (default is one hour),\nCloudKitty is loading the rating rules (hashmap for all services and\nfields and Pyscript rules). This puts considerable pressure on the DB\nwhen we consider that even for disabled projects (CloudKitty scopes)\nthose rules are loaded.\n\nWhile investigating, we discovered that we cannot stop loading the\nrating rules for every processing cycle because we can have many\ncombinations of rating rules with different start/end timestamps.\nTherefore, we must load them for every processing cycle. However, we can\nstop loading them for the de-activated scopes.\n\nThis patch introduces a change that changes the code to stop loading the\nrating rules for de-activated scopes.\n\nChange-Id: Ic7698b8079ce32850a52a46f6b09ed32c1ddf037\nSigned-off-by: Rafael Weingärtner \u003crafael@apache.org\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cloudkitty/commit/22807c7eca9c1aea117536169d09f3cfef619456"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/cloudkitty/commit/22807c7eca9c1aea117536169d09f3cfef619456"}]},"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":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"}},{"label":"Review-Priority","status":"MAY"}]}],"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":{}}},{"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":{}}},{"name":"Review-Priority","description":"Review priority","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"-label:Review-Priority\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":[],"failing_atoms":["label:Review-Priority\u003dMIN"],"atom_explanations":{}}},{"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":{}}}]}
