Keystone retries the identity-service-relation-changed hook several times, also after the MySQL cluster has clustered, but it keeps failing with this message in the keystone log:
===================
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/base.py", line 1802, in _execute_context
self.dialect.do_execute(
File "/usr/lib/python3/dist-packages/sqlalchemy/engine/default.py", line 732, in do_execute
cursor.execute(statement, parameters)
File "/usr/lib/python3/dist-packages/pymysql/cursors.py", line 148, in execute
result = self._query(query)
File "/usr/lib/python3/dist-packages/pymysql/cursors.py", line 310, in _query
conn.query(q)
File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 548, in query
self._affected_rows = self._read_query_result(unbuffered=unbuffered)
File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 775, in _read_query_result
result.read()
File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 1156, in read
first_packet = self.connection._read_packet()
File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 692, in _read_packet
packet_header = self._read_bytes(4)
File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 748, in _read_bytes
raise err.OperationalError(
pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query')
===================
From comment #1 I understand that retrying the hook should solve the problem, but that does not seem to be the case.
If I switch the leader of Keystone it does pass this hook and starts updating the endpoints like normal. It is possible that the certificates can not be updated for the leader units and that that causes the connection issue?
Keystone retries the identity- service- relation- changed hook several times, also after the MySQL cluster has clustered, but it keeps failing with this message in the keystone log:
=================== python3/ dist-packages/ sqlalchemy/ engine/ base.py" , line 1802, in _execute_context dialect. do_execute( python3/ dist-packages/ sqlalchemy/ engine/ default. py", line 732, in do_execute execute( statement, parameters) python3/ dist-packages/ pymysql/ cursors. py", line 148, in execute python3/ dist-packages/ pymysql/ cursors. py", line 310, in _query python3/ dist-packages/ pymysql/ connections. py", line 548, in query _affected_ rows = self._read_ query_result( unbuffered= unbuffered) python3/ dist-packages/ pymysql/ connections. py", line 775, in _read_query_result python3/ dist-packages/ pymysql/ connections. py", line 1156, in read ._read_ packet( ) python3/ dist-packages/ pymysql/ connections. py", line 692, in _read_packet python3/ dist-packages/ pymysql/ connections. py", line 748, in _read_bytes Error( err.Operational Error: (2013, 'Lost connection to MySQL server during query')
Traceback (most recent call last):
File "/usr/lib/
self.
File "/usr/lib/
cursor.
File "/usr/lib/
result = self._query(query)
File "/usr/lib/
conn.query(q)
File "/usr/lib/
self.
File "/usr/lib/
result.read()
File "/usr/lib/
first_packet = self.connection
File "/usr/lib/
packet_header = self._read_bytes(4)
File "/usr/lib/
raise err.Operational
pymysql.
===================
From comment #1 I understand that retrying the hook should solve the problem, but that does not seem to be the case.
If I switch the leader of Keystone it does pass this hook and starts updating the endpoints like normal. It is possible that the certificates can not be updated for the leader units and that that causes the connection issue?