)]}'
{"id":"openstack%2Fpyeclib~930171","triplet_id":"openstack%2Fpyeclib~master~I460014871a88fd7439efce3c5e8333c8447d1bdd","project":"openstack/pyeclib","branch":"master","topic":"use_libec_instance_destroy","attention_set":{},"removed_from_attention_set":{"7233":{"account":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"last_update":"2024-10-16 04:41:50.000000000","reason":"\u003cGERRIT_ACCOUNT_7233\u003e replied on the change","reason_account":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"}},"15343":{"account":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"last_update":"2024-10-16 05:03:11.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I460014871a88fd7439efce3c5e8333c8447d1bdd","subject":"Add close/destroy methods; clean up descriptors","status":"MERGED","created":"2024-09-23 01:46:13.000000000","updated":"2024-10-16 05:03:11.000000000","submitted":"2024-10-16 05:03:11.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":17,"unresolved_comment_count":3,"has_review_started":true,"submission_id":"930171-use_libec_instance_destroy","meta_rev_id":"ae860531495ba5d83c05e74372b312c1a9560c4e","_number":930171,"virtual_id_number":930171,"owner":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2024-10-16 05:03:11.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"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":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"all":[{"value":2,"date":"2024-10-16 04:41:50.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2024-10-11 14:39:44.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"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":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"all":[{"value":1,"date":"2024-10-16 04:41:50.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2024-09-23 01:58:04.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":"CC"},{"updated":"2024-09-23 02:00:12.000000000","updated_by":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"reviewer":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"state":"REVIEWER"},{"updated":"2024-09-23 02:06:09.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":"c59169cc6381ab750ed767b23bbd73279e7971f9","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-09-23 01:46:13.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"22219a2501ebe8946fba37a449eb73a25e2d5da2","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-09-23 01:48:38.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"53b620a7b410f0e1d36d545c6ebaceade8ff6a32","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-09-23 01:58:04.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/64fa3b7521984792adeb3adf269d26e3\n\n- libec-pyeclib-unit-arm64 https://zuul.opendev.org/t/openstack/build/ec6f33bee64042b689bc0ff2863b3934 : SUCCESS in 10m 05s","accounts_in_message":[],"_revision_number":1},{"id":"bfc7ab7a217b901d19bac6eed49cf369611b9440","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2024-09-23 02:00:12.000000000","message":"Patch Set 1: Code-Review-1\n\n(2 comments)","accounts_in_message":[],"_revision_number":1},{"id":"1be027c1fb5068c18eb6c6ae589ed357d0eec845","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-09-23 02:06:09.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/79cfb87d48b0436390f3104405568433\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c19137ab1994486d8558836125032c30 : SUCCESS in 2m 05s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/95a088e6e2c445d687dcb5328dbb70f5 : FAILURE in 2m 29s\n- openstack-tox-py35 https://zuul.opendev.org/t/openstack/build/bc96f18ef6d344d4970994b813e07ba7 : FAILURE in 7m 31s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/53bfcde5e16344a088325ef2ef667eb6 : FAILURE in 2m 24s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/68ad75db3bbd4b35bff28a472e799ae4 : FAILURE in 4m 30s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/e610378fc2d949fabb6bda2204f63b36 : FAILURE in 4m 52s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/71e3a35bce294193aeab23880b38b3d4 : FAILURE in 3m 10s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/cee7555945b04b149fc6cfac873ded35 : SUCCESS in 5m 33s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/052a91752ba247edb275ce25c40298fd : SUCCESS in 3m 06s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/84fb60e3dd1a49908bcba7f6d0f7595f : SUCCESS in 4m 01s\n- pyeclib-tox-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/9a9621df9879437fa1414c28266e8eb5 : SUCCESS in 4m 17s\n- libec-pyeclib-unit https://zuul.opendev.org/t/openstack/build/8081d3290b4241d1bf6b2d6dc88ee04d : SUCCESS in 12m 00s\n- libec-pyeclib-unit-centos-9-stream https://zuul.opendev.org/t/openstack/build/894143299ebe4fd0b539de4b5ba1f41c : SUCCESS in 12m 20s","accounts_in_message":[],"_revision_number":1},{"id":"069a755c78439e86411d9d29533ed0886b852243","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-09-23 02:21:25.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"4377f339fd340f4a4d0f2383aa2ac666f03fa94d","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-09-23 04:02:50.000000000","message":"Patch Set 1:\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"5ccaa82124ff57209acc3bf957928b043976e8ee","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-09-23 06:22:59.000000000","message":"Uploaded patch set 2.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified-1\n","accounts_in_message":[],"_revision_number":2},{"id":"5a0bab69a6227bc2c6c4aa48cdc60558981e8d49","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-09-23 06:36:55.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/1a745b6cc1394dd8bb13b3ae2b9d346c\n\n- libec-pyeclib-unit-arm64 https://zuul.opendev.org/t/openstack/build/54cf7799ce5e4042a6b7090523aef333 : SUCCESS in 12m 16s","accounts_in_message":[],"_revision_number":2},{"id":"f8c024298470ae21084c958e4bc2eca760318e11","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-09-23 06:42:21.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/0c6ea7f6e5c046efa43ab8ab4edc1d4b\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8550239c49394041afb2d0755fd1e214 : SUCCESS in 1m 57s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/c1102af4719d4e248d00b94d3c695520 : SUCCESS in 3m 44s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/39ee42b82d26411487d2fac2cc58c942 : SUCCESS in 3m 51s\n- openstack-tox-py35 https://zuul.opendev.org/t/openstack/build/d4c3805fb4a5496d9ffd00bd89ec6174 : SUCCESS in 13m 29s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/7f2eaa888e54442da783e8c406d0b68f : SUCCESS in 3m 01s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/9c69229290b44b07905bfe67afd86338 : SUCCESS in 3m 25s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/4622414fb2594cffabc55f7580ab8aa6 : SUCCESS in 2m 59s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/18f9d0a77d2845f593b825c7f4ca08fb : SUCCESS in 3m 03s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/420d4272b6d14bc59e9eca98eaf71691 : SUCCESS in 3m 27s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/b9afc2921fd04f5dabe541997c0d1121 : SUCCESS in 2m 56s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/9f18d3983f674d89938808cd20d65e42 : SUCCESS in 3m 15s\n- pyeclib-tox-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/ef2eedca28f94690954155d4baaa6978 : SUCCESS in 3m 57s\n- libec-pyeclib-unit https://zuul.opendev.org/t/openstack/build/d0d68860e13041b8a2adb2fac2154329 : SUCCESS in 9m 42s\n- libec-pyeclib-unit-centos-9-stream https://zuul.opendev.org/t/openstack/build/a7d5e6b6955b4ad6bb7b7712bbe03d19 : SUCCESS in 12m 30s","accounts_in_message":[],"_revision_number":2},{"id":"584ef65a50e13942742a84e0a7fdf158d02e6af3","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2024-09-23 18:03:51.000000000","message":"Patch Set 2: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"2160b773cad87b89b103b836a9efdd9cb91b6cfd","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-09-24 01:10:10.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified+1\n","accounts_in_message":[],"_revision_number":3},{"id":"3dbcbbf73948e2cffc134580174c888fb3047545","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-09-24 01:10:24.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"14a5551f9cc44446c55f80c1df557ada6ec7ac44","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-09-24 01:31:44.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/d83df35cb4fd4fafbc3ea54934de6419\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/eea1e0383db742c7aa3ac58bbb17e157 : SUCCESS in 2m 36s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/db063b2e5a5b4f6f892fa81f64a4a26c : SUCCESS in 4m 06s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/d974fbc262004d8c9b0069e6c406e9a7 : SUCCESS in 4m 32s\n- openstack-tox-py35 https://zuul.opendev.org/t/openstack/build/57551b8b4d094056a2987674216ec41e : SUCCESS in 14m 23s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/7e73998376bf428c96b20434c070087b : SUCCESS in 4m 01s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/f5436552339f4a8d86337df8d827b5e8 : SUCCESS in 3m 34s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/3a6a5e709e1b4e1789f03828c3df528c : SUCCESS in 3m 38s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/53ae5add969f4889ad2522359140554e : SUCCESS in 3m 34s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/7b426670f21843cfb6c0deeb8947f92b : SUCCESS in 4m 25s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/4227449362394363b1a71f99bfca0050 : SUCCESS in 3m 28s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/cab3628aa6204fb1ab80bcd05a2547aa : SUCCESS in 3m 38s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/7fcc557d5f814431a072f80832b42806 : SUCCESS in 8m 54s\n- pyeclib-tox-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/633cceafbe3b4b59b50433d6dc54612b : SUCCESS in 3m 49s\n- libec-pyeclib-unit https://zuul.opendev.org/t/openstack/build/de710d4bb40b4531941049dc611b6fb3 : SUCCESS in 13m 22s\n- libec-pyeclib-unit-centos-9-stream https://zuul.opendev.org/t/openstack/build/f22d7d56453e4bbcb145e44dac70e3a0 : SUCCESS in 13m 11s","accounts_in_message":[],"_revision_number":3},{"id":"d68d8bcd06a036781661d2ac03a45b64c5e573e5","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-09-24 01:37:31.000000000","message":"Patch Set 3:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/5937e87a1d5c444b969e06bf353dea4c\n\n- libec-pyeclib-unit-arm64 https://zuul.opendev.org/t/openstack/build/f6f5cfb37e4146fdbea9a4bdcb81d8fd : SUCCESS in 13m 31s","accounts_in_message":[],"_revision_number":3},{"id":"31aff71424590d349ef83f66aac44558f547241c","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-09-25 06:50:57.000000000","message":"Patch Set 3:\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"9d36436bba3c2cada94d438f6e689ec1b29234a9","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2024-10-08 04:51:07.000000000","message":"Patch Set 3:\n\n(2 comments)","accounts_in_message":[],"_revision_number":3},{"id":"a8b658cf714d02011d051f7562f8a560fec17167","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2024-10-08 18:01:51.000000000","message":"Patch Set 3:\n\n(2 comments)","accounts_in_message":[],"_revision_number":3},{"id":"91d3126cdeee54c16fd34ca7988c5a6da9bc6e36","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2024-10-08 19:44:21.000000000","message":"Uploaded patch set 4: Patch Set 3 was rebased.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":4},{"id":"f55d8bce0bf3e586f567712517f9c1659268fd53","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-10-08 20:01:53.000000000","message":"Patch Set 4:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e807c5359c384c0d818fa4a16b333268\n\n- libec-pyeclib-unit-arm64 https://zuul.opendev.org/t/openstack/build/d084b517652f40cbacecf6939b3fadb2 : SUCCESS in 17m 10s","accounts_in_message":[],"_revision_number":4},{"id":"44551d17e9b4b82d3486801b63b140a90343d866","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-10-08 20:14:29.000000000","message":"Patch Set 4: 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/3c81af527773427f99bad4cdccdef787\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a618c58962de487985d79049e4f7e70d : SUCCESS in 2m 00s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/281a95e1bf034a649a7b0d5d4e11ea51 : SUCCESS in 3m 03s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/f0dcbc663fc34c5eabf1bbc923073a4d : SUCCESS in 3m 23s\n- openstack-tox-py35 https://zuul.opendev.org/t/openstack/build/8c7ab67ef79a49f2873ef23e97e7585e : RETRY_LIMIT in 9s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/30273c2e007c4192b268c1136927b143 : SUCCESS in 2m 51s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/8193ad9ace3649b78ded20d051162aa3 : SUCCESS in 3m 31s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/9a2c92e8162f47caacaa36c1cae61e58 : SUCCESS in 3m 03s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/8f75467c9d4949eeb19e81de176133b5 : SUCCESS in 3m 12s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/95ac2989631e4616a45512b92d86f254 : SUCCESS in 3m 10s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/aaa5f53c472548da8f5540790424c0d9 : SUCCESS in 3m 21s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/d0c95557428340e6bead44e3ab5f0334 : SUCCESS in 3m 36s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/62432322a73d467fb90ce3dc29102430 : SUCCESS in 8m 20s\n- pyeclib-tox-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/fdcf6b22988446a1ac37903a5c96f26b : SUCCESS in 3m 48s\n- libec-pyeclib-unit https://zuul.opendev.org/t/openstack/build/ddd46a284abb405ba36bc61c3e9866a8 : SUCCESS in 12m 55s\n- libec-pyeclib-unit-centos-9-stream https://zuul.opendev.org/t/openstack/build/a1252b4897194213a2dfb3893551dad5 : SUCCESS in 13m 09s","accounts_in_message":[],"_revision_number":4},{"id":"adef79f86c95f4c0dcfe352033bfc018fd466a48","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2024-10-08 22:55:53.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"403a1537cc287003367dcd1ff94a3078d3998b58","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-10-08 23:08:13.000000000","message":"Patch Set 4:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/8a86d8cb7a9f4750814c2d7a403cb41b\n\n- libec-pyeclib-unit-arm64 https://zuul.opendev.org/t/openstack/build/afb4f2fdc2c04d4087afcafb7bc7e044 : SUCCESS in 10m 24s","accounts_in_message":[],"_revision_number":4},{"id":"679ac43bbd0d114f7d673e594ccc90ddefa9ff07","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-10-08 23:43:38.000000000","message":"Patch Set 4: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/9a1c85ce350c41b3bded1a53cd10b5c5\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/6088a44a118845ecaab75520befd3da8 : SUCCESS in 2m 06s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/da80c293377240879bac53e60a05ef0d : SUCCESS in 3m 40s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a49cf3988e8c47baac5bd22bd0cc7b09 : SUCCESS in 3m 19s\n- openstack-tox-py35 https://zuul.opendev.org/t/openstack/build/67fb5f7d5cc6459b871fb2be4e403d1c : SUCCESS in 12m 05s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/aa8dde64c5c5407b997513b0421a3229 : SUCCESS in 3m 34s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/f36f7b9a562a4ac4b3293013b56f1388 : SUCCESS in 3m 44s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/097007a0c9444d3ca82e1a0f1440e75e : SUCCESS in 3m 34s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/ff0b04c118274ac685ecadeaccc530c5 : SUCCESS in 3m 13s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/cde25da173154eeabb0cd879be37a0ea : SUCCESS in 2m 58s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/da79f2cee8ea4b68a7a815a6f41a54ed : SUCCESS in 2m 59s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/50d875da53d9417190949939d4fea1a3 : SUCCESS in 3m 42s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/733ddcd5c8554e0681d6bb209fda4714 : SUCCESS in 5m 54s\n- pyeclib-tox-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/ce189644c900476fa29d165f50a80960 : SUCCESS in 4m 37s\n- libec-pyeclib-unit https://zuul.opendev.org/t/openstack/build/9a638fbc7e1747a788758e5d8d6822ec : SUCCESS in 14m 28s\n- libec-pyeclib-unit-centos-9-stream https://zuul.opendev.org/t/openstack/build/e804d63b721e4e26b686d4d002e8b350 : SUCCESS in 12m 22s","accounts_in_message":[],"_revision_number":4},{"id":"d029345a16bed036300a2118760f61831a13ed42","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2024-10-10 19:01:28.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"09088e96f7defdeb3316c7e5fd0ab85d3ecdb358","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-10-10 23:21:18.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"f58527f78424d1ee9a1a2819bcad24f8215f57c5","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2024-10-11 05:11:58.000000000","message":"Uploaded patch set 5.\n\nOutdated Votes:\n* Verified+1\n","accounts_in_message":[],"_revision_number":5},{"id":"3256a1bef346cd1487fc0e4768956fb100410a4f","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-10-11 05:29:59.000000000","message":"Patch Set 5:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/066f3957ffa64499a8942483b6c84311\n\n- libec-pyeclib-unit-arm64 https://zuul.opendev.org/t/openstack/build/0df60b3048694043815204f28d4a3b7c : SUCCESS in 15m 23s","accounts_in_message":[],"_revision_number":5},{"id":"32db0d3aef69f09917ef6d1dc954a5d6bc0b9f77","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-10-11 05:30:10.000000000","message":"Patch Set 5: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/34552c61e3c645a084c0be4567cacd34\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/4e5ebe4672e4441b97e05c403e3a0183 : SUCCESS in 2m 10s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/99053457433c495db3c69cbae34e9997 : SUCCESS in 3m 06s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/8ac56df67bc2437fb9e7a6b4eb7382f8 : SUCCESS in 4m 33s\n- openstack-tox-py35 https://zuul.opendev.org/t/openstack/build/5f1b55d65a8c4645b7007db53ec4f4bb : SUCCESS in 9m 23s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/be76c80db37e4112b20d6ca7f84a2256 : SUCCESS in 3m 26s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/b2bba3e51c22451b9b0aff0922c8a598 : SUCCESS in 3m 33s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/b773a546e1de4181b84794e2521c1cb0 : SUCCESS in 2m 57s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/7916c175f56746118437df59ae0c2a3c : SUCCESS in 3m 20s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/625a8eec999b42b4937a1e122d78300d : SUCCESS in 3m 28s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/730f484b44594ee6950bf9ac1cb557aa : SUCCESS in 2m 26s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/9b450c44e8634f62acac3537d92f6252 : SUCCESS in 2m 55s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/b806cda6c8b946b0b30b618b14809835 : SUCCESS in 7m 08s\n- pyeclib-tox-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/c5b21015f456431b9b613811ab147c5a : SUCCESS in 3m 01s\n- libec-pyeclib-unit https://zuul.opendev.org/t/openstack/build/59c85f5be5ab485283692d4aed483f5a : SUCCESS in 8m 47s\n- libec-pyeclib-unit-centos-9-stream https://zuul.opendev.org/t/openstack/build/a537c8714bb7452d9e1e68a7e5599398 : SUCCESS in 12m 53s","accounts_in_message":[],"_revision_number":5},{"id":"4920f61f9e363606bc5da8801377c9ea121de59f","author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"date":"2024-10-11 14:39:44.000000000","message":"Patch Set 5: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":5},{"id":"7c61c6dfc91a1183f5656e35eb6563c2781f3b7c","author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"date":"2024-10-16 04:41:50.000000000","message":"Patch Set 5: Code-Review+2 Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":5},{"id":"a00bf3d6922c1aadff1d7470a4ae08192a1fa05f","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-10-16 04:42:09.000000000","message":"Patch Set 5: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":5},{"id":"45eabaeb0c3628279b29fbfdb04bc8ab5e0ba275","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-10-16 05:03:11.000000000","message":"Patch Set 5: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/c0b134577a20450dac33af51222ade9d\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1bf82afbcd214f53bd41535823e367bd : SUCCESS in 2m 14s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/17b398da28ba4492a7f39ce1fb45fcfe : SUCCESS in 3m 22s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9d608caa523b47fcad34d489a562073d : SUCCESS in 3m 57s\n- openstack-tox-py35 https://zuul.opendev.org/t/openstack/build/73f1d8112c9e4630bc190b6f658264d5 : SUCCESS in 14m 34s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/b5be073e55994cfd825c6c54de380fc2 : SUCCESS in 3m 15s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/5d8ae42ac6054aac99b1b53a9f0625a8 : SUCCESS in 3m 21s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/1b367158551742478549ead209833cd7 : SUCCESS in 3m 48s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/07d2029f20fc4237ae28b1993f41f45e : SUCCESS in 2m 55s\n- openstack-tox-py310 https://zuul.opendev.org/t/openstack/build/3297e35c70f746cbb5cf63ebc29dc061 : SUCCESS in 3m 05s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/4df5f36369354e2f830f6b76f5218a11 : SUCCESS in 3m 10s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/4eb0587751264fd3bd993ea3a0d86cda : SUCCESS in 4m 16s\n- pyeclib-tox-py39-centos-9-stream https://zuul.opendev.org/t/openstack/build/01f5e2a146bc4ac3b0554a944cef1430 : SUCCESS in 3m 36s\n- libec-pyeclib-unit https://zuul.opendev.org/t/openstack/build/889b400c49764e278861c99da4370e1d : SUCCESS in 10m 05s\n- libec-pyeclib-unit-centos-9-stream https://zuul.opendev.org/t/openstack/build/678196d6c0fc436c940d6df9ebdf7d06 : SUCCESS in 13m 04s","accounts_in_message":[],"_revision_number":5},{"id":"ae860531495ba5d83c05e74372b312c1a9560c4e","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2024-10-16 05:03:11.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":5}],"current_revision_number":5,"current_revision":"30a8f257808fa0e284cf7d6cd3fcc3468cfb093c","revisions":{"a5baddd47131b6bf908c4adaac6e7b6518c8d4e4":{"kind":"REWORK","_number":1,"created":"2024-09-23 01:46:13.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/71/930171/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/pyeclib","ref":"refs/changes/71/930171/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/1"}}},"commit":{"parents":[{"commit":"f1732386ebf2634937952467aa5b808e9a381888","subject":"Merge \"Use generic py311 job\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/f1732386ebf2634937952467aa5b808e9a381888"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2024-09-23 01:37:43.000000000","tz":600},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2024-09-23 01:45:52.000000000","tz":600},"subject":"Call liberasurecode_instance_destroy in destructor","message":"Call liberasurecode_instance_destroy in destructor\n\nCurrently when the python object is destroyed we just call free on the\nobject. The object does have a liberasurecode descriptor attached so it\nwould be better to use the actual liberasurecode_instance_destroy to\nproperly clean this up.\n\nThe patch also will error if we get a -EBACKENDNOTAVAIL returned. It is\npossible for it to also return an -EINVAL if we use and invalid lock,\nbut because we don\u0027t specifically import errcode.h, not throwing and\nerror in that case.\n\nIf liberasurecode_instance_destroy otherwise fails still default to\nrunning:\n```\ncheck_and_free_buffer(pyeclib_handle);\n```\n\nWhich calls the free of the object. As we\u0027ve always done previously. So\nnow we should be at least trying to do the right thing.\n\nCloses-Bug: #1954352\nChange-Id: I460014871a88fd7439efce3c5e8333c8447d1bdd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/a5baddd47131b6bf908c4adaac6e7b6518c8d4e4"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/a5baddd47131b6bf908c4adaac6e7b6518c8d4e4"}]},"branch":"refs/heads/master"},"92c67d21404181fb6798abf8a0efab51d8dd9637":{"kind":"REWORK","_number":2,"created":"2024-09-23 06:22:59.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/71/930171/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/pyeclib","ref":"refs/changes/71/930171/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/2"}}},"commit":{"parents":[{"commit":"f1732386ebf2634937952467aa5b808e9a381888","subject":"Merge \"Use generic py311 job\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/f1732386ebf2634937952467aa5b808e9a381888"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2024-09-23 01:37:43.000000000","tz":600},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2024-09-23 06:22:44.000000000","tz":600},"subject":"Call liberasurecode_instance_destroy in destructor","message":"Call liberasurecode_instance_destroy in destructor\n\nCurrently when the python object is destroyed we just call free on the\nobject. The object does have a liberasurecode descriptor attached so it\nwould be better to use the actual liberasurecode_instance_destroy to\nproperly clean this up.\n\nThe patch also will error if we get a -EBACKENDNOTAVAIL returned. It is\npossible for it to also return an -EINVAL if we use and invalid lock,\nbut because we don\u0027t specifically import errcode.h, not throwing and\nerror in that case.\n\nIf liberasurecode_instance_destroy otherwise fails still default to\nrunning:\n```\ncheck_and_free_buffer(pyeclib_handle);\n```\n\nWhich calls the free of the object. As we\u0027ve always done previously. So\nnow we should be at least trying to do the right thing.\n\nCloses-Bug: #1954352\nChange-Id: I460014871a88fd7439efce3c5e8333c8447d1bdd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/92c67d21404181fb6798abf8a0efab51d8dd9637"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/92c67d21404181fb6798abf8a0efab51d8dd9637"}]},"branch":"refs/heads/master"},"97364018d0c635e08cfa1f428476195da0ecc13c":{"kind":"REWORK","_number":3,"created":"2024-09-24 01:10:10.000000000","uploader":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"ref":"refs/changes/71/930171/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/pyeclib","ref":"refs/changes/71/930171/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/3"}}},"commit":{"parents":[{"commit":"f1732386ebf2634937952467aa5b808e9a381888","subject":"Merge \"Use generic py311 job\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/f1732386ebf2634937952467aa5b808e9a381888"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2024-09-23 01:37:43.000000000","tz":600},"committer":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2024-09-24 01:09:46.000000000","tz":600},"subject":"Call liberasurecode_instance_destroy in destructor","message":"Call liberasurecode_instance_destroy in destructor\n\nCurrently when the python object is destroyed we just call free on the\nobject. The object does have a liberasurecode descriptor attached so it\nwould be better to use the actual liberasurecode_instance_destroy to\nproperly clean this up.\n\nThe patch also will error if we get a -EBACKENDNOTAVAIL returned. It is\npossible for it to also return an -EINVAL if we use and invalid lock,\nbut because we don\u0027t specifically import errcode.h, not throwing and\nerror in that case.\n\nIf liberasurecode_instance_destroy otherwise fails still default to\nrunning:\n```\ncheck_and_free_buffer(pyeclib_handle);\n```\n\nWhich calls the free of the object. As we\u0027ve always done previously. So\nnow we should be at least trying to do the right thing.\n\nCloses-Bug: #1954352\nChange-Id: I460014871a88fd7439efce3c5e8333c8447d1bdd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/97364018d0c635e08cfa1f428476195da0ecc13c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/97364018d0c635e08cfa1f428476195da0ecc13c"}]},"branch":"refs/heads/master"},"522f7f28565680936bcae161fe24f9f6b3855e9a":{"kind":"TRIVIAL_REBASE","_number":4,"created":"2024-10-08 19:44:21.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/71/930171/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/pyeclib","ref":"refs/changes/71/930171/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/4"}}},"commit":{"parents":[{"commit":"1e90ffb844c323b4a923a87fce9429774059fafc","subject":"Test under py313","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/1e90ffb844c323b4a923a87fce9429774059fafc"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2024-09-23 01:37:43.000000000","tz":600},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2024-10-08 19:23:05.000000000","tz":-420},"subject":"Call liberasurecode_instance_destroy in destructor","message":"Call liberasurecode_instance_destroy in destructor\n\nCurrently when the python object is destroyed we just call free on the\nobject. The object does have a liberasurecode descriptor attached so it\nwould be better to use the actual liberasurecode_instance_destroy to\nproperly clean this up.\n\nThe patch also will error if we get a -EBACKENDNOTAVAIL returned. It is\npossible for it to also return an -EINVAL if we use and invalid lock,\nbut because we don\u0027t specifically import errcode.h, not throwing and\nerror in that case.\n\nIf liberasurecode_instance_destroy otherwise fails still default to\nrunning:\n```\ncheck_and_free_buffer(pyeclib_handle);\n```\n\nWhich calls the free of the object. As we\u0027ve always done previously. So\nnow we should be at least trying to do the right thing.\n\nCloses-Bug: #1954352\nChange-Id: I460014871a88fd7439efce3c5e8333c8447d1bdd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/522f7f28565680936bcae161fe24f9f6b3855e9a"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/522f7f28565680936bcae161fe24f9f6b3855e9a"}]},"branch":"refs/heads/master"},"30a8f257808fa0e284cf7d6cd3fcc3468cfb093c":{"kind":"REWORK","_number":5,"created":"2024-10-11 05:11:58.000000000","uploader":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"ref":"refs/changes/71/930171/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/pyeclib","ref":"refs/changes/71/930171/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/pyeclib refs/changes/71/930171/5"}}},"commit":{"parents":[{"commit":"15ec6610ae048ec4614cf51afcef167ace5f7e90","subject":"CI: Pin ansible-version: 8 for py35 job","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/15ec6610ae048ec4614cf51afcef167ace5f7e90"}]}],"author":{"name":"Matthew Oliver","email":"matt@oliver.net.au","date":"2024-09-23 01:37:43.000000000","tz":600},"committer":{"name":"Tim Burke","email":"tim.burke@gmail.com","date":"2024-10-11 04:51:41.000000000","tz":-420},"subject":"Add close/destroy methods; clean up descriptors","message":"Add close/destroy methods; clean up descriptors\n\nPreviously, we would *never* call liberasurecode_instance_destroy for\nany call to liberasurecode_instance_create. That was bad and would lead\nto memory leaks -- while the capsule destructor would eventually free\nthe handle it wrapped, it would do nothing to clean up the associated\nliberasurecode descriptor.\n\nNow, use liberasurecode_instance_destroy to attempt to clean up the\ndescriptor. This can happen in the destructor (in which case any errors\nare suppressed), or in a new `close` method on both ECPyECLibDriver and\nECDriver. If attempts are made to use a driver after close,\nECBackendInstanceNotAvailable will be raised, as the descriptor has\nalready been destroyed. The capsule destructor continues to be\nresponsible for freeing the handle.\n\nTwo new error modes are also handled in `pyeclib_c_seterr`, as they may\narise from liberasurecode_instance_destroy -- EDEADLK and EINVAL will\nraise an ECDriverError, indicating trouble with the global instance lock.\n\nCo-Authored-By: Tim Burke \u003ctim.burke@gmail.com\u003e\nCloses-Bug: #1954352\nChange-Id: I460014871a88fd7439efce3c5e8333c8447d1bdd\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/30a8f257808fa0e284cf7d6cd3fcc3468cfb093c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/pyeclib/commit/30a8f257808fa0e284cf7d6cd3fcc3468cfb093c"}]},"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":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"}}]}],"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":"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":{}}}]}
