Живые узлы Voltdb выдают исключение при выполнении «sqlcmd» после того, как узел кластера из 3 узлов с Ksafe 1 выключен - PullRequest
0 голосов
/ 11 декабря 2018

Я развернул среду из двух сайтов с кластером из трех узлов voltdb на каждом сайте с Ksafe = 1.Кластеры настроены с репликацией XCDR.Я выполнил проверку отработки отказа, я выключил виртуальную машину одного из узлов кластера), и, по-видимому, журнал не выдает никакой ошибки, но когда я пытаюсь подключиться через «sqlcmd» в двух живых узлах этого кластераЯ получил следующую ошибку:

$ sqlcmd
org.voltdb.client.ProcCallException: Server is shutting down.
        at org.voltdb.client.ClientImpl.internalSyncCallProcedure(ClientImpl.java:481)
        at org.voltdb.client.ClientImpl.callProcedureWithClientTimeout(ClientImpl.java:320)
        at org.voltdb.client.ClientImpl.callProcedure(ClientImpl.java:256)
        at org.voltdb.utils.SQLCommand.loadStoredProcedures(SQLCommand.java:1253)
        at org.voltdb.utils.SQLCommand.mainWithReturnCode(SQLCommand.java:1567)
        at org.voltdb.utils.SQLCommand.main(SQLCommand.java:1626)
SQL Command :: localhost:21212
1> 

1> select count(*) from table1;

Server is shutting down

Кто-нибудь знает, почему, если Ksafety = 1 Voltdb выдает это исключение?

Спасибо

1 Ответ

0 голосов
/ 12 декабря 2018

VoltDB здесь.Если у вас есть кластер Kfactor = 1 с 3 узлами, отключение одного виртуального сервера и, следовательно, одного узла не должно приводить к отключению всего кластера.

Тот факт, что он, по-видимому, отключается в замедленном режиме, свидетельствует о каком-то процессе дренирования (таком как dr_overflow, так как вы используете XDCR).Обычно мы видим эти расширенные процессы слива при ручном отключении, а не при сбоях.

Нам нужно было бы просмотреть журналы, чтобы точно знать, что происходит.Если вы являетесь клиентом, вы можете написать support@voltdb.com с файлами журналов.Если нет, вы можете написать по электронной почте sales@voltdb.com.

...