CockroachDB是一个非常有趣的分布式SQL,它公开了PostgreSQL有线协议。因此,我尝试使用经典的pg gem将一个新的Rails项目连接到CockroachDB。不幸的是,一个简单的rails db:create给出了:
/home/fengye87/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/activerecord-5.0.0.1/lib/active_record/connection_adapters/postgresql_adapter.rb:671: warning: Failed to set the default_internal encoding to UTF8: 'ERROR: unknown variable: "CLIENT_ENCODING"
'
invalid encoding name: unicode所以我猜这表明CockroachDB不支持CLIENT_ENCODING变量。问题是:有没有可能绕过在pg中设置这些变量?曾经有人设法将Rails连接到CockroachDB吗?谢谢!
发布于 2016-11-09 23:24:15
CockroachDB目前不支持ActiveRecord,但我们希望在不久的将来支持它。我们正在跟踪与ORM功能on GitHub相关的问题。
发布于 2016-11-09 23:13:24
CockroachDB确实支持client_encoding,但是现在唯一支持的值是"utf8“。
由于修改起来相当简单,您可以手动更改pg gem中使用的值,也可以向项目的GitHub:http://github.com/cockroachdb/cockroach/issues/提交CockroachDB问题
发布于 2016-11-09 23:38:17
为了补充内森的回答,即CockroachDB还不能与ActiveRecord一起工作,值得一提的是,CockroachDB目前可以通过较低级别的客户端使用,比如Ruby's pg client。
https://stackoverflow.com/questions/40506933
复制相似问题