4

lmdb 代码来自官方 git repo。

https://gitorious.org/mdb

它不适用于我的 mdb_env_open 返回代码 38 的项目。

lmdb 附带的测试代码也不起作用。

错误代码也是38,错误信息是“功能未实现”。

在 ubuntu 上编译的相同代码运行良好。

lmdb上的文档很少,我什至找不到返回码38是什么意思,stackoverflow中也没有对应的标签。

有高手吗?

==================================================== ====

我发现这是因为 NFS,将数据库移动到本地存储解决了这个问题。但是有什么解决方案可以在 NFS 中使用吗?本地存储空间太小。

4

1 回答 1

7

从文档的首页:http ://www.lmdb.tech/doc/

不要在远程文件系统上使用 LMDB 数据库,即使是在同一主机上的进程之间。这会破坏某些操作系统上的flock(),可能会破坏内存映射同步,并且肯定会在不同主机上的程序之间进行同步。

于 2014-07-11T11:25:16.963 回答