У меня работают два узла keycloak с точно такой же конфигурацией.Я пытаюсь использовать JDBC_PING
для обнаружения службы, но узлы ничего не записывают в БД.initialize_sql
работает.Узлы создают таблицу, если она не существует, но вставка не инициируется.Также нет сообщений об ошибках в логах.
Keycloak Версия: 4.5.0.FINAL
Я запускаю эту команду для запуска узла:
bin/standalone.sh --server-config=standalone-ha.xml -b 0.0.0.0
<jdbc-protocol type="JDBC_PING" data-source="KeycloakDS">
<property name="initialize_sql">
CREATE TABLE IF NOT EXISTS JGROUPSPING (
own_addr varchar(200) NOT NULL,
cluster_name varchar(200) NOT NULL,
ping_data BYTEA,
constraint PK_JGROUPSPING PRIMARY KEY (own_addr, cluster_name)
)
</property>
<property name="insert_single_sql">
INSERT INTO JGROUPSPING (own_addr, cluster_name, ping_data) values (?, ?, ?)
</property>
<property name="delete_single_sql">
DELETE FROM JGROUPSPING WHERE own_addr=? AND cluster_name=?
</property>
<property name="select_all_pingdata_sql">
SELECT ping_data FROM JGROUPSPING WHERE cluster_name=?
</property>
</jdbc-protocol>
Я добавил этот протокол в tcp-stack
и установил стек tcp по умолчанию:
<channels default="ee">
<channel name="ee" stack="tcp" cluster="ejb"/>
</channels>
Есть идеи?