JDBC_PING в Keycloak Cluster не записывает в БД - PullRequest
0 голосов
/ 23 октября 2018

У меня работают два узла 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>

Есть идеи?

...