Rust-rocksdb: 列族不能与合并运算符一起使用

创建于 2015-10-09  ·  3评论  ·  资料来源: rust-rocksdb/rust-rocksdb

这似乎也可能是 C API 的问题。

最有用的评论

对于看到此错误的人:_您如何打开数据库?_

我遇到了这个问题,如果我使用DB::open_cf_descriptors()而不是DB::open_cf() ,它确实会消失。 我认为根本问题是DB::open_cf()将默认选项应用于它创建的任何列族。 默认选项将不包括合并运算符。

除非我弄错了:

  • RocksDB 希望我们将合并运算符单独关联到每个列族,而不是整个数据库。
  • 使用列族和合并运算符时的修复(或解决方法)是在列族的选项上使用set_merge_operator() ,而不是数据库的选项。 为此,必须调用open_cf_descriptors()而不是open_cf() 。 希望这可以帮助。

所有3条评论

这个错误的状态是什么? 我的一个项目非常需要这个。 我有什么可以帮忙的吗?

@tokahuke自提交以来

对于看到此错误的人:_您如何打开数据库?_

我遇到了这个问题,如果我使用DB::open_cf_descriptors()而不是DB::open_cf() ,它确实会消失。 我认为根本问题是DB::open_cf()将默认选项应用于它创建的任何列族。 默认选项将不包括合并运算符。

除非我弄错了:

  • RocksDB 希望我们将合并运算符单独关联到每个列族,而不是整个数据库。
  • 使用列族和合并运算符时的修复(或解决方法)是在列族的选项上使用set_merge_operator() ,而不是数据库的选项。 为此,必须调用open_cf_descriptors()而不是open_cf() 。 希望这可以帮助。
此页面是否有帮助?
0 / 5 - 0 等级

相关问题

elichai picture elichai  ·  6评论

rrichardson picture rrichardson  ·  7评论

zach-schoenberger picture zach-schoenberger  ·  7评论

valeriansaliou picture valeriansaliou  ·  4评论

alex88 picture alex88  ·  7评论