Griddb java client не может подключиться: jc_bad_connection из -за тайм -аута уведомленияJAVA

Программисты JAVA общаются здесь
Anonymous
Griddb java client не может подключиться: jc_bad_connection из -за тайм -аута уведомления

Сообщение Anonymous »

фон
Я пытаюсь подключиться к локально запущенному контейнеру Docker Griddb с помощью клиента Java. Несмотря на настройку правильной конфигурации кластера и учетных данных, я продолжаю получать ошибку JC_BAD_CONNECTION, указывающую тайм -аут при попытке получить обновления уведомлений.
Что я пытаюсь сделать? Я использую официальное изображение Griddb Docker локально и использую Maven для управления зависимостями. Моя цель состоит в том, чтобы установить успешную связь с кластером GridDB и вставить строку в контейнер с именем SampleContainer.

Код: Выделить всё

package org.example;

import com.toshiba.mwcloud.gs.*;
import java.util.*;

public class GridDBConnector {
public static void main(String[] args) throws GSException {
// Set GridDB connection properties
Properties props = new Properties();
props.setProperty("notificationAddress", "239.0.0.1");
props.setProperty("notificationPort", "20000");
props.setProperty("clusterName", "dockerGridDB");
props.setProperty("user", "admin");
props.setProperty("password", "admin");

// Connect to the cluster
GridStore store = GridStoreFactory.getInstance().getGridStore(props);

// Define container schema
ContainerInfo containerInfo = new ContainerInfo();
containerInfo.setName("SampleContainer");
containerInfo.setType(ContainerType.COLLECTION);
containerInfo.setColumnInfoList(Arrays.asList(
new ColumnInfo("id", GSType.INTEGER),
new ColumnInfo("name", GSType.STRING)
));
containerInfo.setRowKeyAssigned(true);

// Create container and insert data
Collection collection = store.putCollection("SampleContainer", containerInfo, false);
Row row = collection.createRow();
row.setInteger(0, 1);
row.setString(1, "gridDb");
collection.put(row);

System.out.println("Data inserted into GridDB successfully!");
}
}
и my pom.xml [/b] включает зависимость griddb:

com.github.griddb
gridstore
5.3.0


< /code>
Что я попробовал: < /p>
  • Запуск Docker Container < /strong> < /li>
    < /ul>
    docker run -d --name griddb-server -p 10001:10001 griddbnet/griddb:arm-5.5.0

    < /code>

    Изменение конфигурации

    Я попробовал как включение, так и пропущенное свойства хоста и порта. /> Я создал пользовательскую сеть Docker Bridge и прикрепил к нему контейнер.❯ docker exec -it griddb-server bash
    bash-5.1$ ls /var/lib/gridstore/conf/
    gridstore.conf gridstore.pid gs_cluster.json gs_node.json password
    bash-5.1$ cat /var/lib/gridstore/conf/gs_cluster.json
    {
    "dataStore":{
    "partitionNum":128,
    "storeBlockSize":"64KB"
    },
    "cluster":{
    "clusterName":"dockerGridDB",
    "replicationNum":2,
    "notificationAddress":"239.0.0.1",
    "notificationPort":20000,
    "notificationInterval":"5s",
    "heartbeatInterval":"5s",
    "loadbalanceCheckInterval":"180s"
    },
    "sync":{
    "timeoutInterval":"30s"
    },
    "transaction":{
    "notificationAddress":"239.0.0.1",
    "notificationPort":31999,
    "notificationInterval":"5s",
    "replicationMode":0,
    "replicationTimeoutInterval":"10s"
    },
    "sql":{
    "notificationAddress":"239.0.0.1",
    "notificationPort":41999,
    "notificationInterval":"5s"
    }
    }
    < /code>

    Просмотр журналов
    Следующая ошибка продолжает повторять: < /li>
    < /ul>
    com.toshiba.mwcloud.gs.common.GSConnectionException: [145028:JC_BAD_CONNECTION] Failed to update by notification (address=/239.0.0.1:20000, reason=Receive timed out)

    < /code>
    Что я ожидаю /нужна помощь с: < /strong> < /p>

    Какую конфигурацию или настройку сети мне не хватает, чтобы включить правильную связь между уведомлением между java -клиентом и контейнером Docker griddb? Режимы для многоадресной рассылки в Docker на macos /linux? java
    , однако я также прошел различную конфигурацию свойства других. Это не сработало.
Любая идея реквизирования этой проблемы с подключением будет высоко ценится!

Подробнее здесь: https://stackoverflow.com/questions/796 ... tion-timeo

Вернуться в «JAVA»