)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"93b56d462e0433add22eb01e90eb657f549381a9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d0c53c07_d36ca396","updated":"2024-09-24 01:45:03.000000000","message":"(Revert was here: https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/930022)","commit_id":"117ecdb721e6f6090ce75c4325497cab9af1ce94"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"dcd561dd3b3baa6a6031618b712526dd571f1119","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"59360b6f_d0ee4581","updated":"2024-09-24 01:23:08.000000000","message":"This was reverted in master branch. Was the original issue with the patch fixed? Any details about this?","commit_id":"117ecdb721e6f6090ce75c4325497cab9af1ce94"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"a0085c20d49a1e9067a003cd583d34e67640178e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"88e08516_45beb1f0","in_reply_to":"59360b6f_d0ee4581","updated":"2024-09-24 08:17:22.000000000","message":"Hi Ihar, sure done with \"-- concurrency 4\" on my local Devstack, but now I see that some of the Zuul Designate gates are PASS and some other aren\u0027t, that\u0027s weird.\nLooking...","commit_id":"117ecdb721e6f6090ce75c4325497cab9af1ce94"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"827bf7de9e6bcec7b8920d75fb75ba2b637f6487","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"712f02e6_a280d53e","updated":"2024-09-24 17:38:06.000000000","message":"\u003e done with \"-- concurrency 4\" on my local Devstack\n\nI don\u0027t think this is exactly the same. What was the root cause of the previous issue with the previous attempt to merge this patch? (That resulted in a revert.) Could you please include this information, and why you think it no longer applies to this new version of the patch, in the commit message? Thank you.\n\n(I\u0027m trying to make sure that we don\u0027t merge the same patch twice, only to revert it - second time.)","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"47e7b422864b537889fa125ba34531bdc9cc3845","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"a938506b_6ecc636b","updated":"2024-09-26 00:40:57.000000000","message":"Investigating failure. That\u0027s the reason for the recheck","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"06580cd45b2e497c4d7c47e2e1bb2c77b293c4f9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"72acef94_cefdf923","updated":"2024-09-27 23:29:30.000000000","message":"Please see my inline comment. To keep it simple, I suggest that this patch only adds the improvements to test_port_with_publishing_subnet and the improvements to the clean ups be proposed in a follow up patch","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"c5a8952ae168d33d12566477ad829a48b74e9ec7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"827dcf99_a892e3bf","updated":"2024-09-26 00:39:29.000000000","message":"These are my findings with the PS1 failure: https://paste.openstack.org/show/boKJwzPtKt8NXJx78lj4/","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"c27a8022d947d9aed0eebde8f4e871bbe33651bb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"eb191037_c610b1d8","updated":"2024-09-26 00:39:41.000000000","message":"recheck","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"80b0e29c0a6d5cb7e4654ce742e5caec50c7285e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"171cc595_5412e058","updated":"2024-09-26 13:21:45.000000000","message":"recheck investigating intermittent failures with PTR records","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"407477d099d014acd621019d90e7b540b0267911","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"73da9b93_507c2863","updated":"2024-09-26 21:52:33.000000000","message":"recheck investigating intermittent failures with PTR records","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"6168b64e9803da135858b1406a3c02266d5ce730","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"d040bfc4_c4582a9d","updated":"2024-09-26 17:21:26.000000000","message":"recheck investigating intermittent failures with PTR records","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"d2546aaed5d40a936b60e6a1f178d91d802f2f53","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"79184108_f81fb1f2","updated":"2024-10-01 12:21:13.000000000","message":"There was a patch that has been reverted recently: https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/915369\nAfter some work and debugging done by Miguel 👍 the problem was found and fixed.\nYou can find the details in L254 here: https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/930189/2/neutron_tempest_plugin/scenario/test_dns_integration.py \nI also did a couple of \"rechecks\" and it looks good now, no more failures of the Designate gates.","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"835acde2cb87302acf246885d711fd8c5fd1d816","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"4672d7ab_10ce0984","updated":"2024-10-01 07:45:19.000000000","message":"recheck","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"7a3d1a854a518eced340cf2629b18b23874d952d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9d32f1bf_9be52a69","updated":"2024-09-30 14:15:54.000000000","message":"recheck","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"16548ca79ea0641660a79e9d46d580b9bbd949f6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"aaabcee5_34c2e14a","updated":"2024-09-30 06:49:42.000000000","message":"recheck - attempt No 1","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"ba05cc00e38701a0991f242e123ec2a8c2588ec8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"2d880cfe_2b97f334","updated":"2024-09-30 09:55:29.000000000","message":"recheck - attempt No 2\nNote: attempt No 1 failure doesn\u0027t related to Designate changes","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"d821cf1dcfe719b5346f12e5b2aa41f2cd29f918","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0d60efc7_2bcf7042","updated":"2024-10-03 13:36:03.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"2289d19352fb058fb44bdef27becf2bf9872144d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"151965e6_b263cffe","updated":"2024-10-02 21:54:22.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"9d41a797b0b46b02822396e5b2c6fd93561dcacd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"2f6344bb_5af0cb5d","updated":"2024-10-03 21:35:55.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"f55939957474d7e931e44df5722464db8e62b420","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"b6850096_0158437f","updated":"2024-10-03 23:58:52.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"15fb8064047d5e72735b5b47868aacf651c56502","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0ef0b3d1_61d73f2f","updated":"2024-10-04 18:40:36.000000000","message":"recheck. Failure not related to change","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"63ddb9c736c1e75765117fd985916266c7690609","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0cef2917_e04ec733","updated":"2024-10-04 14:38:21.000000000","message":"recheck. Last 8 or 9 rechecks haven\u0027t shown any failures with the proposed new test case. So it seems ready to be merged. I\u0027ll +2 after the Zuul +1s it","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"71e146ac826c1a79be090a04899176ba17cd1a75","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"3207c82e_52c39f87","updated":"2024-10-09 23:54:40.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"489408a1f5d5b07d10ffda245aaeae031de588df"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"91d8d4736ee9e1546ba5906e6018ac36864ad813","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"5575c2f2_f158170f","updated":"2024-10-09 17:56:12.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"489408a1f5d5b07d10ffda245aaeae031de588df"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"c3f037cbf565930b96d368c29f2754c5d1aae266","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"a2d9dafc_b1a29696","updated":"2024-10-11 22:10:58.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"489408a1f5d5b07d10ffda245aaeae031de588df"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"89d50cd3dd2a82cc6f2aa805c39795c2d79b063c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"a8b59753_2207551f","updated":"2024-10-11 15:23:44.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"489408a1f5d5b07d10ffda245aaeae031de588df"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"2860d55a473ec79eb59ae0c4eef73005369ae736","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"ac96ad3a_17c4ba5f","updated":"2024-10-10 21:35:46.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"489408a1f5d5b07d10ffda245aaeae031de588df"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"902aed974d7c465464ca9d70fcaf5ba1efc0414f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"c046bbd3_c97fec7a","updated":"2024-10-10 23:57:25.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"489408a1f5d5b07d10ffda245aaeae031de588df"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"e852a7c41059ca02a1c50d29e2606e0015474418","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"f6e08eb6_a977f3ba","updated":"2024-10-10 13:11:21.000000000","message":"recheck to confirm DNS integration test has been fixed","commit_id":"489408a1f5d5b07d10ffda245aaeae031de588df"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"b8a7d8079f8d7b7690d5a796ce66fbe2187fd74d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"2c02358d_bcea3941","updated":"2024-10-08 23:07:37.000000000","message":"recheck. Failures unrelated to proposed code change","commit_id":"489408a1f5d5b07d10ffda245aaeae031de588df"}],"neutron_tempest_plugin/scenario/test_dns_integration.py":[{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"06580cd45b2e497c4d7c47e2e1bb2c77b293c4f9","unresolved":true,"context_lines":[{"line_number":251,"context_line":"    def resource_setup(cls):"},{"line_number":252,"context_line":"        super(DNSIntegrationExtraTests, cls).resource_setup()"},{"line_number":253,"context_line":"        cls.network2 \u003d cls.create_network()"},{"line_number":254,"context_line":"        cls.subnet2 \u003d cls.create_subnet(cls.network2)"},{"line_number":255,"context_line":"        cls.subnet2_v6 \u003d cls.create_subnet(cls.network2,"},{"line_number":256,"context_line":"                                           ip_version\u003d6,"},{"line_number":257,"context_line":"                                           dns_publish_fixed_ip\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"0c54c41f_c856a31f","line":254,"range":{"start_line":254,"start_character":8,"end_line":254,"end_character":53},"updated":"2024-09-27 23:29:30.000000000","message":"I have been rechecking this patch for several days and I haven\u0027t been able to get a single failure from any of the Designate related jobs. The only failure of test_port_with_publishing_subnet was the one that Arkady got with PS1 with job neutron-tempest-plugin-designate-scenario-2023-2. I was unable to replicate it in all my rechecks. This points to a race condition, which I explain here step by step: https://paste.openstack.org/show/bLG2gThULfxZNPGQc21k/.\n\nTo avoid these race conditions, I suggest that subnet2 be created explicitly with an uncommon cidr, for example 10.123.151.0/24. Please note that the mask is 24, to reduce the chances of an address collision like the one we observe with the /28 subnet, even if there is another test with a subnet 10.123.151.0","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"7c905fd34689d64c4768d30eaa565b86c8f57a3c","unresolved":true,"context_lines":[{"line_number":251,"context_line":"    def resource_setup(cls):"},{"line_number":252,"context_line":"        super(DNSIntegrationExtraTests, cls).resource_setup()"},{"line_number":253,"context_line":"        cls.network2 \u003d cls.create_network()"},{"line_number":254,"context_line":"        cls.subnet2 \u003d cls.create_subnet(cls.network2)"},{"line_number":255,"context_line":"        cls.subnet2_v6 \u003d cls.create_subnet(cls.network2,"},{"line_number":256,"context_line":"                                           ip_version\u003d6,"},{"line_number":257,"context_line":"                                           dns_publish_fixed_ip\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"7e9b5468_4e3811c1","line":254,"range":{"start_line":254,"start_character":8,"end_line":254,"end_character":53},"in_reply_to":"0c54c41f_c856a31f","updated":"2024-09-29 13:09:25.000000000","message":"Hi Miguel,thanks for help!\nI\u0027ve uploaded PS3 (with cleanup included) that adds CIDR as your suggestion and I\u0027m going to \"recheck\" for a couple of times to see if it solves the problem.","commit_id":"75b1a96247d6af087f02f882897dd5450f2d3ee1"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"93a9091cd31d517a4f597308876619099086fdb6","unresolved":true,"context_lines":[{"line_number":86,"context_line":"        cls.keypair \u003d cls.create_keypair()"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"},{"line_number":89,"context_line":"    def resource_cleanup(cls):"},{"line_number":90,"context_line":"        super(BaseDNSIntegrationTests, cls).resource_cleanup()"},{"line_number":91,"context_line":"        admin_listed_zones \u003d cls.admin_zone_client.list_zones("},{"line_number":92,"context_line":"            headers\u003ddns_base.BaseDnsV2Test.all_projects_header)[1][\u0027zones\u0027]"},{"line_number":93,"context_line":"        neutron_zone_ids \u003d ["},{"line_number":94,"context_line":"            zn[\u0027id\u0027] for zn in admin_listed_zones if"},{"line_number":95,"context_line":"            \u0027zone for reverse lookups set up by Neutron.\u0027 in"},{"line_number":96,"context_line":"            str(zn[\u0027description\u0027]) and cls.zone_name.strip(\u0027.\u0027) in zn[\u0027email\u0027]]"},{"line_number":97,"context_line":"        for id in neutron_zone_ids:"},{"line_number":98,"context_line":"            cls.admin_zone_client.delete_zone("},{"line_number":99,"context_line":"                id, headers\u003ddns_base.BaseDnsV2Test.all_projects_header,"},{"line_number":100,"context_line":"                ignore_errors\u003dlib_exc.NotFound)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _create_floatingip_with_dns(self, dns_name):"},{"line_number":103,"context_line":"        return self.create_floatingip(client\u003dself.os_primary.network_client,"}],"source_content_type":"text/x-python","patch_set":3,"id":"921da028_c5053d33","line":100,"range":{"start_line":89,"start_character":0,"end_line":100,"end_character":47},"updated":"2024-10-04 23:31:10.000000000","message":"This cleanup is introducing races between concurrently running DNS integration test classes. I\u0027m writing a detailed explanation of how this races take place. In the meantime, please do not merge this patch","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"67b95e0b8e9f2c4910e0d4668d771e839099a890","unresolved":true,"context_lines":[{"line_number":86,"context_line":"        cls.keypair \u003d cls.create_keypair()"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"},{"line_number":89,"context_line":"    def resource_cleanup(cls):"},{"line_number":90,"context_line":"        super(BaseDNSIntegrationTests, cls).resource_cleanup()"},{"line_number":91,"context_line":"        admin_listed_zones \u003d cls.admin_zone_client.list_zones("},{"line_number":92,"context_line":"            headers\u003ddns_base.BaseDnsV2Test.all_projects_header)[1][\u0027zones\u0027]"},{"line_number":93,"context_line":"        neutron_zone_ids \u003d ["},{"line_number":94,"context_line":"            zn[\u0027id\u0027] for zn in admin_listed_zones if"},{"line_number":95,"context_line":"            \u0027zone for reverse lookups set up by Neutron.\u0027 in"},{"line_number":96,"context_line":"            str(zn[\u0027description\u0027]) and cls.zone_name.strip(\u0027.\u0027) in zn[\u0027email\u0027]]"},{"line_number":97,"context_line":"        for id in neutron_zone_ids:"},{"line_number":98,"context_line":"            cls.admin_zone_client.delete_zone("},{"line_number":99,"context_line":"                id, headers\u003ddns_base.BaseDnsV2Test.all_projects_header,"},{"line_number":100,"context_line":"                ignore_errors\u003dlib_exc.NotFound)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _create_floatingip_with_dns(self, dns_name):"},{"line_number":103,"context_line":"        return self.create_floatingip(client\u003dself.os_primary.network_client,"}],"source_content_type":"text/x-python","patch_set":3,"id":"0e08a4d7_5150be23","line":100,"range":{"start_line":89,"start_character":0,"end_line":100,"end_character":47},"in_reply_to":"0544e7c8_0dd54f7c","updated":"2024-10-07 15:44:56.000000000","message":"No. When the Neutron - Designate integration was originally implemented, it was decided to keep them because in a real deployment, the IP addresses sent to a PTR zone come from a limited range of externally routable range of addresses that you want to associate to known names in the DNS infrastructure. That addresses range is shared by all the deployment tenants / projects. Let\u0027s say your externally routable addresses are in the range 20.5.97.0/24. All the names that your tenants want published in DNS will be associated to addresses in that range. That\u0027s why to publish something through the Neutron - DNS integration you associate dns_name and dns_domain attributes with floating IPs or a well known range in \"special networks\". So even if a PTR zone is empty at any given point of time (which is unlikely) it will be reused in the near future by some other tenant / project. In that scenario, why incur the overhead of creating and deleting over and over again the same PTR zones? It has worked like this since 2016 and so far no deployer has found it \"problematic\". I deployed it myself in one of my previous employers and it was never a problem.\n\nNow, from your point of view as a Tempest tests author it might seem peculiar because you create and destroy at will unlimited PTR zones with arbitrary IP ranges and you don\u0027t want to reuse them. But that doesn\u0027t reflect how the PTR zones are used in production.","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"953ec3697e9d7a60541d78c42c42038109635785","unresolved":true,"context_lines":[{"line_number":86,"context_line":"        cls.keypair \u003d cls.create_keypair()"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"},{"line_number":89,"context_line":"    def resource_cleanup(cls):"},{"line_number":90,"context_line":"        super(BaseDNSIntegrationTests, cls).resource_cleanup()"},{"line_number":91,"context_line":"        admin_listed_zones \u003d cls.admin_zone_client.list_zones("},{"line_number":92,"context_line":"            headers\u003ddns_base.BaseDnsV2Test.all_projects_header)[1][\u0027zones\u0027]"},{"line_number":93,"context_line":"        neutron_zone_ids \u003d ["},{"line_number":94,"context_line":"            zn[\u0027id\u0027] for zn in admin_listed_zones if"},{"line_number":95,"context_line":"            \u0027zone for reverse lookups set up by Neutron.\u0027 in"},{"line_number":96,"context_line":"            str(zn[\u0027description\u0027]) and cls.zone_name.strip(\u0027.\u0027) in zn[\u0027email\u0027]]"},{"line_number":97,"context_line":"        for id in neutron_zone_ids:"},{"line_number":98,"context_line":"            cls.admin_zone_client.delete_zone("},{"line_number":99,"context_line":"                id, headers\u003ddns_base.BaseDnsV2Test.all_projects_header,"},{"line_number":100,"context_line":"                ignore_errors\u003dlib_exc.NotFound)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _create_floatingip_with_dns(self, dns_name):"},{"line_number":103,"context_line":"        return self.create_floatingip(client\u003dself.os_primary.network_client,"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba3a0d84_86d76b82","line":100,"range":{"start_line":89,"start_character":0,"end_line":100,"end_character":47},"in_reply_to":"0e08a4d7_5150be23","updated":"2024-10-07 15:55:52.000000000","message":"Now, of course, if there is a valid use case that requires a different behavior, the community would address it. But wanting to implement a tearDown method in a Tempest class is not a use case.","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":4694,"name":"Miguel Lavalle","email":"miguel@mlavalle.com","username":"minsel"},"change_message_id":"5bfeca5e5e08c903be53c19d6c4fb0380be6ef0f","unresolved":true,"context_lines":[{"line_number":86,"context_line":"        cls.keypair \u003d cls.create_keypair()"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"},{"line_number":89,"context_line":"    def resource_cleanup(cls):"},{"line_number":90,"context_line":"        super(BaseDNSIntegrationTests, cls).resource_cleanup()"},{"line_number":91,"context_line":"        admin_listed_zones \u003d cls.admin_zone_client.list_zones("},{"line_number":92,"context_line":"            headers\u003ddns_base.BaseDnsV2Test.all_projects_header)[1][\u0027zones\u0027]"},{"line_number":93,"context_line":"        neutron_zone_ids \u003d ["},{"line_number":94,"context_line":"            zn[\u0027id\u0027] for zn in admin_listed_zones if"},{"line_number":95,"context_line":"            \u0027zone for reverse lookups set up by Neutron.\u0027 in"},{"line_number":96,"context_line":"            str(zn[\u0027description\u0027]) and cls.zone_name.strip(\u0027.\u0027) in zn[\u0027email\u0027]]"},{"line_number":97,"context_line":"        for id in neutron_zone_ids:"},{"line_number":98,"context_line":"            cls.admin_zone_client.delete_zone("},{"line_number":99,"context_line":"                id, headers\u003ddns_base.BaseDnsV2Test.all_projects_header,"},{"line_number":100,"context_line":"                ignore_errors\u003dlib_exc.NotFound)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _create_floatingip_with_dns(self, dns_name):"},{"line_number":103,"context_line":"        return self.create_floatingip(client\u003dself.os_primary.network_client,"}],"source_content_type":"text/x-python","patch_set":3,"id":"e7fc46ae_c2e07c88","line":100,"range":{"start_line":89,"start_character":0,"end_line":100,"end_character":47},"in_reply_to":"921da028_c5053d33","updated":"2024-10-06 17:00:26.000000000","message":"Here\u0027s the analysis of two recent failures showing the race conditions that arise when this cleanup method is executed by concurrently running instantiations of different test classes: https://paste.openstack.org/show/bv1744Mm667UUbjGUvsm/","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"},{"author":{"_account_id":28609,"name":"Arkady Shtempler","email":"ashtempl@redhat.com","username":"ashtempl"},"change_message_id":"1818ba8f98143a0e83c2ba7a57e04189e51f67f4","unresolved":true,"context_lines":[{"line_number":86,"context_line":"        cls.keypair \u003d cls.create_keypair()"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"    @classmethod"},{"line_number":89,"context_line":"    def resource_cleanup(cls):"},{"line_number":90,"context_line":"        super(BaseDNSIntegrationTests, cls).resource_cleanup()"},{"line_number":91,"context_line":"        admin_listed_zones \u003d cls.admin_zone_client.list_zones("},{"line_number":92,"context_line":"            headers\u003ddns_base.BaseDnsV2Test.all_projects_header)[1][\u0027zones\u0027]"},{"line_number":93,"context_line":"        neutron_zone_ids \u003d ["},{"line_number":94,"context_line":"            zn[\u0027id\u0027] for zn in admin_listed_zones if"},{"line_number":95,"context_line":"            \u0027zone for reverse lookups set up by Neutron.\u0027 in"},{"line_number":96,"context_line":"            str(zn[\u0027description\u0027]) and cls.zone_name.strip(\u0027.\u0027) in zn[\u0027email\u0027]]"},{"line_number":97,"context_line":"        for id in neutron_zone_ids:"},{"line_number":98,"context_line":"            cls.admin_zone_client.delete_zone("},{"line_number":99,"context_line":"                id, headers\u003ddns_base.BaseDnsV2Test.all_projects_header,"},{"line_number":100,"context_line":"                ignore_errors\u003dlib_exc.NotFound)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def _create_floatingip_with_dns(self, dns_name):"},{"line_number":103,"context_line":"        return self.create_floatingip(client\u003dself.os_primary.network_client,"}],"source_content_type":"text/x-python","patch_set":3,"id":"0544e7c8_0dd54f7c","line":100,"range":{"start_line":89,"start_character":0,"end_line":100,"end_character":47},"in_reply_to":"e7fc46ae_c2e07c88","updated":"2024-10-07 14:57:15.000000000","message":"OK,so it feels like problematical Neutron behavior.\nIf Neutron service creates and owns PTR zone it also supposed to delete it, once not in use anymore (Zone was deleted), right?","commit_id":"752cc9eddf19535f93aeeacb71d889f436156303"}]}
