)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"},"change_message_id":"fc76d6022caaea90f331ef241ef1a28bfe3622ec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"22013d7b_488172e8","updated":"2026-10-30 17:58:29.000000000","message":"recheck","commit_id":"383b9a1f71f30348bf770e5a3e49163ea0da145d"}],"mariadb/templates/bin/_mariadb_controller.py.tpl":[{"author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"change_message_id":"46de38b22b1860992f75c4a1ae5af7ebc1f402e1","unresolved":true,"context_lines":[{"line_number":107,"context_line":"        LOG.debug(f\"Nothing to do, master service points to {pod.name}\")"},{"line_number":108,"context_line":"    else:"},{"line_number":109,"context_line":"        svc.obj[\"spec\"][\"selector\"] \u003d selector"},{"line_number":110,"context_line":"        svc.update()"},{"line_number":111,"context_line":"        LOG.info(f\"Link master service with {pod.name}\")"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":""}],"source_content_type":"text/x-smarty","patch_set":3,"id":"273e3852_de057c98","line":110,"updated":"2026-11-02 22:01:54.000000000","message":"in pykube the update will merge the new selector with the old one and then patch the service. So if you remove a label in values, this label will not be removed from the service. Before the change helm upgrade used to overwrite the labels and then controller only added the pod-name label.","commit_id":"22a9e171b73ff66ea5eee30ca11a4c24043d8e6f"},{"author":{"_account_id":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"},"change_message_id":"b65d5ae24c314bd85b5fb4f8482d24a65c5d2b86","unresolved":false,"context_lines":[{"line_number":107,"context_line":"        LOG.debug(f\"Nothing to do, master service points to {pod.name}\")"},{"line_number":108,"context_line":"    else:"},{"line_number":109,"context_line":"        svc.obj[\"spec\"][\"selector\"] \u003d selector"},{"line_number":110,"context_line":"        svc.update()"},{"line_number":111,"context_line":"        LOG.info(f\"Link master service with {pod.name}\")"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":""}],"source_content_type":"text/x-smarty","patch_set":3,"id":"aa711260_c39e96aa","line":110,"in_reply_to":"273e3852_de057c98","updated":"2026-11-03 16:40:31.000000000","message":"Good catch, thanks. pykube\u0027s update() merges the edited object with the original one and sends a JSON merge patch, so keys missing from the new selector were kept. I confirmed it on a test Service: a label dropped from the desired selector stayed, and with one that no longer matched the pods the service lost its endpoints. The controller now patches the selector with null for every key the chart no longer renders, so the live selector is replaced, not merged. Verified on a stand: a stale label added to the live selector was removed on the next sweep and the endpoint came back.\nThank you!","commit_id":"22a9e171b73ff66ea5eee30ca11a4c24043d8e6f"}]}
