pq:群集版本不支持JSONB(> == 2.0)

时间:2018-09-21 09:19:20

标签: cockroachdb

我们正在使用CockroachDB。我们正在尝试使用命令

“导入” .sql转储文件。
cockroach sql --database=database name < file-name.sql --insecure

按Enter键后,将在数据库中创建不包含 Jsonb 的表,并抛出错误:

  

pq:群集版本不支持JSONB(> == 2.0必需
  错误:pq:集群版本不支持JSONB(> == 2.0)
  无法运行“ sql”

我们的群集版本与cockroachdb v2.0.5(最新)的版本相同。我们已经尝试过升级,但是没有运气。

我们的集群构建版本:

  

build:CCL v2.0.5 @ 2018/08/13 17:59:42(go1.10)

1 个答案:

答案 0 :(得分:0)

CockroachDB区分构建版本(在您的实例中为v2.0.5)和群集版本。群集版本可以落后于构建版本,以便允许降级。 (一旦群集版本受到影响,您将无法再降级)。在未发布的v2.1系列中,我们添加了功能,可以在集群中的所有节点都升级后自动提高集群版本。但是在v2.0.x中,您必须手动执行此操作。要检查集群版本:

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

这里我正在运行v1.1.7。如果我将二进制文件升级到v2.0.5,则群集版本保持不变:

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

为了升级群集版本,我们需要升级到finalize the upgrade

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

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

查看所有this tutorial升级群集的信息。如果您已完成所有这些步骤,并且SHOW CLUSTER SETTING version表示2.0,并且您的JSONB列仍然不起作用,那么我们需要更深入地研究正在发生的事情。