pq: версия кластера не поддерживает JSONB (> = 2.0 требуется) - PullRequest
0 голосов
/ 21 сентября 2018

Мы используем CockroachDB.Мы пытаемся «импортировать» файл дампа .sql, используя команду

cockroach sql --database=database name < file-name.sql --insecure

. После нажатия введите таблицы без Jsonb , которые создаются в базе данных и выдают ошибку:

pq: версия кластера не поддерживает JSONB (> = требуется 2.0
Ошибка: pq: версия кластера не поддерживает JSONB (> = требуется 2.0)
Не удалось запустить "sql"

Наша версия кластера такая же, как версия cockroachdb v2.0.5 (последняя версия). Мы уже пытались обновить и тому подобное, но не повезло.

Наша версия сборки кластера:

сборка: CCL v2.0.5 @ 2018/08/13 17:59:42 (go1.10)

1 Ответ

0 голосов
/ 21 сентября 2018

CockroachDB различает версию сборки (v2.0.5 в вашем случае) и версию кластера.Версия кластера может отставать от версии сборки, чтобы позволить понижение версии.(После того, как версия кластера была увеличена, вы больше не можете понижаться).В неизданной серии v2.1 мы добавили функциональность для автоматического повышения версии кластера после обновления всех узлов в кластере.Но в v2.0.x вы должны сделать это вручную.Чтобы проверить версию кластера:

root@:26257/> SHOW CLUSTER SETTING version;
+---------+
| version |
+---------+
|     1.1 |
+---------+

Здесь я работаю v1.1.7.Если я обновлю двоичный файл до версии 2.0.5, версия кластера не изменится:

root@:26257/> SHOW CLUSTER SETTING version;
+---------+
| version |
+---------+
| 1.1     |
+---------+

Чтобы обновить версию кластера, нам нужно завершить обновление :

root@:26257/> SET CLUSTER SETTING version = crdb_internal.node_executable_version();
SET CLUSTER SETTING

root@:26257/> SHOW CLUSTER SETTING version;
+---------+
| version |
+---------+
| 2.0     |
+---------+

См. Все этого руководства по обновлению кластера.Если вы выполнили все эти шаги и SHOW CLUSTER SETTING version указывает на 2.0, а ваш столбец JSONB все еще не работает, то нам нужно глубже изучить происходящее.

...