)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"620859956c83d12d72303236fa937bbede519702","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"b0df2023_f59d3cf5","updated":"2026-06-28 14:33:05.000000000","message":"NetApp response have enough response checks for XML malformed. Can you explain where this issue is coming. If true... this is universal problem need to addressed at ONTAP.","commit_id":"ac08db7c74bd1d380a72161edb9755e5967dadf6"},{"author":{"_account_id":7130,"name":"David Hill","email":"davidchill@hotmail.com","username":"dhill"},"change_message_id":"e53d7fb79c9f3934cab1ea572056b9945e0e9966","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"4df7ef5d_dc694a65","in_reply_to":"99a9b4df_228311a3","updated":"2026-06-28 17:44:12.000000000","message":"2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode [req-6946cca5-8390-4e5f-bb9f-5d69088ce2a0 911bee0fae1e40d8a6c1217efc46f280 b4e7f5d800c84ddbaf457388752738c2 - - -] Could not delete volume 0b1281d5-9402-4872-b8df-ce8c3a4cdec6 on backend, falling back to exec of \"rm\" command.:   File \"\u003cstring\u003e\", line 32\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode Traceback (most recent call last):\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode   File \"/usr/lib/python3.9/site-packages/cinder/volume/drivers/netapp/dataontap/nfs_cmode.py\", line 555, in _delete_backing_file_for_volume\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode     self._delete_file(volume[\u0027id\u0027], volume[\u0027name\u0027])\n...\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode   File \"src/lxml/etree.pyx\", line 3216, in lxml.etree.XML\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode   File \"src/lxml/parser.pxi\", line 1899, in lxml.etree._parseMemoryDocument\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode   File \"src/lxml/parser.pxi\", line 1787, in lxml.etree._parseDoc\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode   File \"src/lxml/parser.pxi\", line 1144, in lxml.etree._BaseParser._parseDoc\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode   File \"src/lxml/parser.pxi\", line 618, in lxml.etree._ParserContext._handleParseResultDoc\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode   File \"src/lxml/parser.pxi\", line 728, in lxml.etree._handleParseResult\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode   File \"src/lxml/parser.pxi\", line 657, in lxml.etree._raiseParseError\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode   File \"\u003cstring\u003e\", line 32\n2026-06-15 01:55:10.871 18 ERROR cinder.volume.drivers.netapp.dataontap.nfs_cmode lxml.etree.XMLSyntaxError: EntityRef: expecting \u0027;\u0027, line 32, column 223","commit_id":"ac08db7c74bd1d380a72161edb9755e5967dadf6"},{"author":{"_account_id":7130,"name":"David Hill","email":"davidchill@hotmail.com","username":"dhill"},"change_message_id":"c5825725aa825f12467f3881d36cc0b5142d1e96","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"99a9b4df_228311a3","in_reply_to":"b0df2023_f59d3cf5","updated":"2026-06-28 17:33:21.000000000","message":"It is definitely a reply in XML that includes \u0026 and is not encoded with \u0026amp; … the operator solved the issue but having this output would have prevented us a week of useless troubleshooting","commit_id":"ac08db7c74bd1d380a72161edb9755e5967dadf6"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"d14c22b79dc9313c720ff7c318112d687c123468","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"395bcd87_50f30dd1","updated":"2026-06-30 14:11:10.000000000","message":"Seems like a good idea","commit_id":"4909e2fc3a34ddee72754f19d69293c59b868fa7"}],"cinder/volume/drivers/netapp/dataontap/client/api.py":[{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"620859956c83d12d72303236fa937bbede519702","unresolved":true,"context_lines":[{"line_number":288,"context_line":"        try:"},{"line_number":289,"context_line":"            xml \u003d etree.XML(response)"},{"line_number":290,"context_line":"        except etree.XMLSyntaxError:"},{"line_number":291,"context_line":"            LOG.error(\"XML response: %s\", response)"},{"line_number":292,"context_line":"            raise NaApiError(\u0027XML is malformed\u0027)"},{"line_number":293,"context_line":"        return NaElement(xml)"},{"line_number":294,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"5ab54574_ffc18c7b","line":291,"updated":"2026-06-28 14:33:05.000000000","message":"you are logging raw bytes. NetApp ZAPI uses UTF-8...decoding would produce readable output for operators.","commit_id":"ac08db7c74bd1d380a72161edb9755e5967dadf6"},{"author":{"_account_id":7130,"name":"David Hill","email":"davidchill@hotmail.com","username":"dhill"},"change_message_id":"fd939ba55517c5e7faa0c3f907a995d35523b677","unresolved":false,"context_lines":[{"line_number":288,"context_line":"        try:"},{"line_number":289,"context_line":"            xml \u003d etree.XML(response)"},{"line_number":290,"context_line":"        except etree.XMLSyntaxError:"},{"line_number":291,"context_line":"            LOG.error(\"XML response: %s\", response)"},{"line_number":292,"context_line":"            raise NaApiError(\u0027XML is malformed\u0027)"},{"line_number":293,"context_line":"        return NaElement(xml)"},{"line_number":294,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"37acba51_eb42cdfe","line":291,"in_reply_to":"52307065_6248c51f","updated":"2026-06-30 12:20:54.000000000","message":"Done","commit_id":"ac08db7c74bd1d380a72161edb9755e5967dadf6"},{"author":{"_account_id":7130,"name":"David Hill","email":"davidchill@hotmail.com","username":"dhill"},"change_message_id":"c5825725aa825f12467f3881d36cc0b5142d1e96","unresolved":true,"context_lines":[{"line_number":288,"context_line":"        try:"},{"line_number":289,"context_line":"            xml \u003d etree.XML(response)"},{"line_number":290,"context_line":"        except etree.XMLSyntaxError:"},{"line_number":291,"context_line":"            LOG.error(\"XML response: %s\", response)"},{"line_number":292,"context_line":"            raise NaApiError(\u0027XML is malformed\u0027)"},{"line_number":293,"context_line":"        return NaElement(xml)"},{"line_number":294,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"52307065_6248c51f","line":291,"in_reply_to":"5ab54574_ffc18c7b","updated":"2026-06-28 17:33:21.000000000","message":"So I just use .decode() on that ?","commit_id":"ac08db7c74bd1d380a72161edb9755e5967dadf6"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"620859956c83d12d72303236fa937bbede519702","unresolved":true,"context_lines":[{"line_number":289,"context_line":"            xml \u003d etree.XML(response)"},{"line_number":290,"context_line":"        except etree.XMLSyntaxError:"},{"line_number":291,"context_line":"            LOG.error(\"XML response: %s\", response)"},{"line_number":292,"context_line":"            raise NaApiError(\u0027XML is malformed\u0027)"},{"line_number":293,"context_line":"        return NaElement(xml)"},{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    def _get_result(self, response):"}],"source_content_type":"text/x-python","patch_set":5,"id":"40429d8e_71dfa438","line":292,"updated":"2026-06-28 14:33:05.000000000","message":"NaAPIError format class NaApiError(Exception):\n    def __init__(self, code\u003d\u0027unknown\u0027, message\u003d\u0027unknown\u0027):","commit_id":"ac08db7c74bd1d380a72161edb9755e5967dadf6"},{"author":{"_account_id":7130,"name":"David Hill","email":"davidchill@hotmail.com","username":"dhill"},"change_message_id":"fd939ba55517c5e7faa0c3f907a995d35523b677","unresolved":false,"context_lines":[{"line_number":289,"context_line":"            xml \u003d etree.XML(response)"},{"line_number":290,"context_line":"        except etree.XMLSyntaxError:"},{"line_number":291,"context_line":"            LOG.error(\"XML response: %s\", response)"},{"line_number":292,"context_line":"            raise NaApiError(\u0027XML is malformed\u0027)"},{"line_number":293,"context_line":"        return NaElement(xml)"},{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    def _get_result(self, response):"}],"source_content_type":"text/x-python","patch_set":5,"id":"2c66e15b_f6034544","line":292,"in_reply_to":"3e04a9e1_8ef0a7bb","updated":"2026-06-30 12:20:54.000000000","message":"Done","commit_id":"ac08db7c74bd1d380a72161edb9755e5967dadf6"},{"author":{"_account_id":7130,"name":"David Hill","email":"davidchill@hotmail.com","username":"dhill"},"change_message_id":"c5825725aa825f12467f3881d36cc0b5142d1e96","unresolved":true,"context_lines":[{"line_number":289,"context_line":"            xml \u003d etree.XML(response)"},{"line_number":290,"context_line":"        except etree.XMLSyntaxError:"},{"line_number":291,"context_line":"            LOG.error(\"XML response: %s\", response)"},{"line_number":292,"context_line":"            raise NaApiError(\u0027XML is malformed\u0027)"},{"line_number":293,"context_line":"        return NaElement(xml)"},{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    def _get_result(self, response):"}],"source_content_type":"text/x-python","patch_set":5,"id":"3e04a9e1_8ef0a7bb","line":292,"in_reply_to":"40429d8e_71dfa438","updated":"2026-06-28 17:33:21.000000000","message":"What does this mean ?","commit_id":"ac08db7c74bd1d380a72161edb9755e5967dadf6"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"d14c22b79dc9313c720ff7c318112d687c123468","unresolved":true,"context_lines":[{"line_number":288,"context_line":"        try:"},{"line_number":289,"context_line":"            xml \u003d etree.XML(response)"},{"line_number":290,"context_line":"        except etree.XMLSyntaxError:"},{"line_number":291,"context_line":"            LOG.error(\"XML response: %s\", response.decode(\u0027utf-8\u0027))"},{"line_number":292,"context_line":"            raise NaApiError(\u0027XML is malformed\u0027)"},{"line_number":293,"context_line":"        return NaElement(xml)"},{"line_number":294,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"49876530_f100b29a","line":291,"range":{"start_line":291,"start_character":16,"end_line":291,"end_character":21},"updated":"2026-06-30 14:11:10.000000000","message":"This should be LOG.warning at highest since it isn\u0027t indicating a problem with the driver or c-vol service.","commit_id":"4909e2fc3a34ddee72754f19d69293c59b868fa7"},{"author":{"_account_id":7130,"name":"David Hill","email":"davidchill@hotmail.com","username":"dhill"},"change_message_id":"e9976097e158d613b24f12782c26e6fa0d40374b","unresolved":false,"context_lines":[{"line_number":288,"context_line":"        try:"},{"line_number":289,"context_line":"            xml \u003d etree.XML(response)"},{"line_number":290,"context_line":"        except etree.XMLSyntaxError:"},{"line_number":291,"context_line":"            LOG.error(\"XML response: %s\", response.decode(\u0027utf-8\u0027))"},{"line_number":292,"context_line":"            raise NaApiError(\u0027XML is malformed\u0027)"},{"line_number":293,"context_line":"        return NaElement(xml)"},{"line_number":294,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"20c1620a_a8db1a7c","line":291,"range":{"start_line":291,"start_character":16,"end_line":291,"end_character":21},"in_reply_to":"49876530_f100b29a","updated":"2026-06-30 14:21:24.000000000","message":"I changed it to warning but given I\u0027m using NaApiError, it will raise an error anyways.   I just tried to stay consistent with the actual driver code.","commit_id":"4909e2fc3a34ddee72754f19d69293c59b868fa7"}]}
