)]}'
{"mariadb/templates/bin/_start.py.tpl":[{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"a12bfe66ecdc7b03512b069c97335dd56427303b","unresolved":true,"context_lines":[{"line_number":503,"context_line":"    \"\"\"Declare the current pod as the cluster leader.\"\"\""},{"line_number":504,"context_line":"    logger.info(\"Declaring myself current cluster leader\")"},{"line_number":505,"context_line":"    leader_expiry_raw \u003d datetime.utcnow() + timedelta("},{"line_number":506,"context_line":"        seconds\u003dcluster_leader_ttl)"},{"line_number":507,"context_line":"    leader_expiry \u003d \"{0}Z\".format(leader_expiry_raw.isoformat(\"T\"))"},{"line_number":508,"context_line":"    set_configmap_annotation("},{"line_number":509,"context_line":"        key\u003d\u0027openstackhelm.openstack.org/leader.node\u0027, value\u003dlocal_hostname)"}],"source_content_type":"text/x-smarty","patch_set":1,"id":"bd86ecc5_c10b16fe","line":506,"range":{"start_line":506,"start_character":16,"end_line":506,"end_character":34},"updated":"2024-12-20 19:09:53.000000000","message":"we may increase this leader expiry.\nSo now we use cluster_leader_ttl \u003d 60 seconds, and update heartbeats each cluster_leader_ttl/2. Usually it makes sense to wait for 3 misses, so we can count \nleader_expiry_raw as \u003d (cluster_leader_ttl/2 + 3)","commit_id":"21c066be76a9c5de5550b0a105d2871def26e5af"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"e3af895ef5f2035e47ec95930ad32da29ce6cd81","unresolved":true,"context_lines":[{"line_number":503,"context_line":"    \"\"\"Declare the current pod as the cluster leader.\"\"\""},{"line_number":504,"context_line":"    logger.info(\"Declaring myself current cluster leader\")"},{"line_number":505,"context_line":"    leader_expiry_raw \u003d datetime.utcnow() + timedelta("},{"line_number":506,"context_line":"        seconds\u003dcluster_leader_ttl)"},{"line_number":507,"context_line":"    leader_expiry \u003d \"{0}Z\".format(leader_expiry_raw.isoformat(\"T\"))"},{"line_number":508,"context_line":"    set_configmap_annotation("},{"line_number":509,"context_line":"        key\u003d\u0027openstackhelm.openstack.org/leader.node\u0027, value\u003dlocal_hostname)"}],"source_content_type":"text/x-smarty","patch_set":1,"id":"ef22d136_04a33b50","line":506,"range":{"start_line":506,"start_character":16,"end_line":506,"end_character":34},"in_reply_to":"bd86ecc5_c10b16fe","updated":"2024-12-21 12:21:23.000000000","message":"(cluster_leader_ttl/2)*3","commit_id":"21c066be76a9c5de5550b0a105d2871def26e5af"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"0f01dbcc21f94b519c056852e9d52dcb0f378782","unresolved":true,"context_lines":[{"line_number":520,"context_line":"    if local_hostname \u003d\u003d leader_node:"},{"line_number":521,"context_line":"        logger.info(\"Renewing cluster leader lease\")"},{"line_number":522,"context_line":"        declare_myself_cluster_leader()"},{"line_number":523,"context_line":"    elif iso8601.parse_date(leader_expiry).replace("},{"line_number":524,"context_line":"            tzinfo\u003dNone) \u003c datetime.utcnow().replace(tzinfo\u003dNone):"},{"line_number":525,"context_line":"        # sleep some time to recheck the cluster leader"},{"line_number":526,"context_line":"        time.sleep((cluster_leader_ttl/2)*3)"},{"line_number":527,"context_line":"        leader_expiry \u003d get_configmap_value("},{"line_number":528,"context_line":"            type\u003d\u0027annotation\u0027, key\u003d\u0027openstackhelm.openstack.org/leader.expiry\u0027)"},{"line_number":529,"context_line":"        if iso8601.parse_date(leader_expiry).replace("},{"line_number":530,"context_line":"                tzinfo\u003dNone) \u003c datetime.utcnow().replace(tzinfo\u003dNone):"},{"line_number":531,"context_line":"            logger.info(\"Current cluster leader has expired\")"},{"line_number":532,"context_line":"            declare_myself_cluster_leader()"},{"line_number":533,"context_line":""},{"line_number":534,"context_line":""},{"line_number":535,"context_line":"def get_grastate_val(key):"}],"source_content_type":"text/x-smarty","patch_set":3,"id":"0ab5cb9b_7914a9c8","line":532,"range":{"start_line":523,"start_character":3,"end_line":532,"end_character":43},"updated":"2024-12-24 19:24:44.000000000","message":"do we really need this now when timers are adjusted? if on Line 519 will match only when miss 3 leader health checks.","commit_id":"261e07810fefe3f5c9ad976e10a106680a5cbff3"}]}
