)]}'
{"id":"openstack%2Ftacker~999009","triplet_id":"openstack%2Ftacker~master~I2b42700526e92e661cd722ca0083608c122fdc90","project":"openstack/tacker","branch":"master","topic":"fix-helm-runtime-monkey-patch","attention_set":{"25701":{"account":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"last_update":"2026-07-28 21:41:18.000000000","reason":"A robot voted negatively on a label"}},"removed_from_attention_set":{},"hashtags":[],"change_id":"I2b42700526e92e661cd722ca0083608c122fdc90","subject":"Remove runtime eventlet.monkey_patch() calls","status":"NEW","created":"2026-07-28 19:12:54.000000000","updated":"2026-07-29 14:15:45.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":true,"submittable":false,"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"5eed75d4084ead3bc6404bb362565fd1c9c2488a","_number":999009,"virtual_id_number":999009,"owner":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"actions":{},"labels":{"Verified":{"all":[{"value":0,"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":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_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":{"all":[{"_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":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-07-28 21:41:18.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":"e3b4a3774c20e377ecb5cd43f8a26b05544bea9c","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"date":"2026-07-28 19:12:54.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"2044063d56e5b27e76b6008bd0fce2a57ad618fd","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"date":"2026-07-28 19:20:50.000000000","message":"Uploaded patch set 2: Commit message was updated.","accounts_in_message":[],"_revision_number":2},{"id":"b8c5762e7cc39f91407d69aa167c3d8c0e9f5c85","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-28 21:41:18.000000000","message":"Patch Set 2: 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/6ad9be3b5dd4427aa85a91e3be4427b2\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/82b46810addb4195b32be919ee64c62d : FAILURE in 7m 14s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/b698d7c5f91b431db795fc265e0539fb : SUCCESS in 4m 55s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/a437c3870ba9459fbce5e952f7f56151 : FAILURE in 7m 54s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/f8214793d03a4ff684f26aa9b19547ac : FAILURE in 6m 39s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/60414df24ba749f1a4a6f68887977ea4 : FAILURE in 12m 05s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c3fb305a5f4e4e6bab81c32b2eec604a : SUCCESS in 7m 41s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/4669cd3a41e04369b136fca119e05e88 : SUCCESS in 3m 40s\n- tacker-ft-v2-k8s https://zuul.opendev.org/t/openstack/build/61fd7661ef684df0af4265fe65006e34 : SUCCESS in 1h 11m 18s\n- tacker-ft-v2-df-userdata-basic-min https://zuul.opendev.org/t/openstack/build/f32f3951411c45b6a7ee6132dc28ea3c : SUCCESS in 52m 32s\n- tacker-ft-v2-df-userdata-update https://zuul.opendev.org/t/openstack/build/a6225c8b72d242cea480f713f6720f82 : SUCCESS in 55m 46s\n- tacker-ft-v2-df-userdata-scale https://zuul.opendev.org/t/openstack/build/9f88044a6b384fafadb2e800299354e3 : SUCCESS in 1h 04m 58s\n- tacker-ft-v2-df-userdata-ccvp https://zuul.opendev.org/t/openstack/build/611ac2796c66486d89c59b981309d270 : SUCCESS in 46m 57s\n- tacker-ft-v2-df-userdata-err-handling https://zuul.opendev.org/t/openstack/build/b97cf0db01204ad8aef9ff8da5e69bd9 : SUCCESS in 39m 50s\n- tacker-ft-v2-st-userdata-basic https://zuul.opendev.org/t/openstack/build/0b04c3aaa1db41d9b675dad8ab1ad3bc : SUCCESS in 34m 19s\n- tacker-ft-v2-st-userdata-basic-min https://zuul.opendev.org/t/openstack/build/14fd04232b7e4b2abd016e7936790b90 : SUCCESS in 26m 29s\n- tacker-ft-v2-st-userdata-ccvp https://zuul.opendev.org/t/openstack/build/899bddfb088d43489a5168d882304225 : SUCCESS in 1h 00m 37s\n- tacker-ft-v2-df-userdata-https https://zuul.opendev.org/t/openstack/build/1be82c0743104153b466a478b97ccdea : FAILURE in 54m 11s (non-voting)\n- tacker-ft-v2-df-userdata-notification https://zuul.opendev.org/t/openstack/build/9918e7e2afc5446a8b64e574d3a6542c : SUCCESS in 1h 11m 59s (non-voting)\n- tacker-ft-v2-terraform https://zuul.opendev.org/t/openstack/build/028bfa98bd194641bd7482eaf1926975 : RETRY_LIMIT in 12m 34s (non-voting)\n- tacker-ft-v1-vnfpkgm https://zuul.opendev.org/t/openstack/build/459c92c5290e417d927bf4e868151e28 : SUCCESS in 52m 17s\n- tacker-ft-v1-k8s https://zuul.opendev.org/t/openstack/build/263720af192c45e5a7961832f7475a89 : SUCCESS in 1h 08m 20s\n- tacker-ft-v1-compliance-sol https://zuul.opendev.org/t/openstack/build/c3109425dce0433d9b43e9de209fcabe : FAILURE in 2h 14m 35s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"5eed75d4084ead3bc6404bb362565fd1c9c2488a","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"date":"2026-07-29 14:15:45.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"e3ebb4a96f790e12dd9d1eb175653a312ba6b121","revisions":{"8ae4c9d30b29bdb8da68bc04025ef37dc8210090":{"kind":"REWORK","_number":1,"created":"2026-07-28 19:12:54.000000000","uploader":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"ref":"refs/changes/09/999009/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tacker","ref":"refs/changes/09/999009/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tacker refs/changes/09/999009/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tacker refs/changes/09/999009/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tacker refs/changes/09/999009/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tacker refs/changes/09/999009/1"}}},"commit":{"parents":[{"commit":"f3615fce08fa37af57636b5346cd42df607f3d38","subject":"Merge \"Refactor access to hash object\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/f3615fce08fa37af57636b5346cd42df607f3d38"}]}],"author":{"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","date":"2026-07-28 18:51:45.000000000","tz":540},"committer":{"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","date":"2026-07-28 19:04:31.000000000","tz":540},"subject":"Remove redundant eventlet.monkey_patch() call","message":"Remove redundant eventlet.monkey_patch() call\n\nIt is sometimes appened that VNF LCM operations using Helm chart\nintermittently failed with \"AttributeError: module\neventlet.green.Queue has no attribute \u0027_PySimpleQueue\u0027\"\nraised from eventlet.monkey_patch() called in\nHelmClient._execute_command().\n\nThe tacker services already monkey patch at startup, so the call is\nredundant and only executes the tail of eventlet\u0027s patcher. Meanwhile\n`eventlet.green.threading.current_thread()` temporarily replaces\n`sys.modules[\u0027queue\u0027]` with `eventlet.green.Queue` while it runs\n`patch_function(threading.enumerate)`. If another green thread called\n`monkey_patch()` within that window, the attribute was not found.\n\nIt\u0027s just the one of the typical race condition. So, remove the\nredundant call along with the one in the OpenStack infra driver,\nwhich is also covered by the monkey patching at startup.\n\nSigned-off-by: Yasufumi Ogawa \u003cyasufum.o@gmail.com\u003e\nChange-Id: I2b42700526e92e661cd722ca0083608c122fdc90\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/8ae4c9d30b29bdb8da68bc04025ef37dc8210090"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/8ae4c9d30b29bdb8da68bc04025ef37dc8210090"}]},"branch":"refs/heads/master"},"f4db3df8671207173c16ad93be2be9d4d22e94fa":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2026-07-28 19:20:50.000000000","uploader":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"ref":"refs/changes/09/999009/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tacker","ref":"refs/changes/09/999009/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tacker refs/changes/09/999009/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tacker refs/changes/09/999009/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tacker refs/changes/09/999009/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tacker refs/changes/09/999009/2"}}},"commit":{"parents":[{"commit":"f3615fce08fa37af57636b5346cd42df607f3d38","subject":"Merge \"Refactor access to hash object\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/f3615fce08fa37af57636b5346cd42df607f3d38"}]}],"author":{"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","date":"2026-07-28 18:51:45.000000000","tz":540},"committer":{"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","date":"2026-07-28 19:14:45.000000000","tz":540},"subject":"Remove redundant eventlet.monkey_patch() call","message":"Remove redundant eventlet.monkey_patch() call\n\nIt is sometimes appened that VNF LCM operations using Helm chart\nintermittently failed with \"AttributeError: module\neventlet.green.Queue has no attribute \u0027_PySimpleQueue\u0027\"\nraised from eventlet.monkey_patch() called in\nHelmClient._execute_command().\n\nThe tacker services already monkey patch at startup, so the call is\nredundant and only executes the tail of eventlet\u0027s patcher. Meanwhile\n`eventlet.green.threading.current_thread()` temporarily replaces\n`sys.modules[\u0027queue\u0027]` with `eventlet.green.Queue` while it runs\n`patch_function(threading.enumerate)`. If another green thread called\n`monkey_patch()` within that window, the attribute was not found.\n\nIt\u0027s just the one of the typical race condition. So, remove the\nredundant call along with the one in the OpenStack infra driver,\nwhich is also covered by the monkey patching at startup.\n\nThis update also includes an improvement of checking LCM operation\nstatus precisely for skipping to wait if the status is changed to\nunexpected one by introducing `_check_vnflcm_op_occ_failed()`..\n\nSigned-off-by: Yasufumi Ogawa \u003cyasufum.o@gmail.com\u003e\nChange-Id: I2b42700526e92e661cd722ca0083608c122fdc90\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/f4db3df8671207173c16ad93be2be9d4d22e94fa"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/f4db3df8671207173c16ad93be2be9d4d22e94fa"}]},"branch":"refs/heads/master"},"e3ebb4a96f790e12dd9d1eb175653a312ba6b121":{"kind":"REWORK","_number":3,"created":"2026-07-29 14:15:45.000000000","uploader":{"_account_id":25701,"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","username":"yasufum"},"ref":"refs/changes/09/999009/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/tacker","ref":"refs/changes/09/999009/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/tacker refs/changes/09/999009/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/tacker refs/changes/09/999009/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/tacker refs/changes/09/999009/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/tacker refs/changes/09/999009/3"}}},"commit":{"parents":[{"commit":"f3615fce08fa37af57636b5346cd42df607f3d38","subject":"Merge \"Refactor access to hash object\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/f3615fce08fa37af57636b5346cd42df607f3d38"}]}],"author":{"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","date":"2026-07-28 18:51:45.000000000","tz":540},"committer":{"name":"Yasufumi Ogawa","email":"yasufum.o@gmail.com","date":"2026-07-29 12:38:33.000000000","tz":540},"subject":"Remove runtime eventlet.monkey_patch() calls","message":"Remove runtime eventlet.monkey_patch() calls\n\nVNF LCM operations using Helm chart intermittently failed with\n\"AttributeError: module \u0027eventlet.green.Queue\u0027 has no attribute\n\u0027_PySimpleQueue\u0027\" raised from eventlet.monkey_patch() called in\nHelmClient._execute_command().\n\nThe tacker services already monkey patch at startup, so the call is\nredundant and only executes the tail of eventlet\u0027s patcher, which does\n\"import queue; queue.SimpleQueue \u003d queue._PySimpleQueue\". Meanwhile\neventlet.green.threading.current_thread() temporarily replaces\nsys.modules[\u0027queue\u0027] with eventlet.green.Queue while it runs\npatch_function(threading.enumerate). If another green thread called\nmonkey_patch() within that window, the attribute was not found.\n\nRemove the redundant call along with the one in the OpenStack infra\ndriver, which is also covered by the monkey patching at startup.\n\nSigned-off-by: Yasufumi Ogawa \u003cyasufum.o@gmail.com\u003e\nChange-Id: I2b42700526e92e661cd722ca0083608c122fdc90\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/e3ebb4a96f790e12dd9d1eb175653a312ba6b121"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/tacker/commit/e3ebb4a96f790e12dd9d1eb175653a312ba6b121"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY"},{"label":"Code-Review","status":"MAY"},{"label":"Workflow","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
