NO_SPACE - enumStoreLimitReached - 已使用枚举存储地址 space

NO_SPACE - enumStoreLimitReached - enum store address space used

我正在尝试提供 Vespa 索引,但遇到 NO_SPACE 错误:

Detail resultType=FATAL_ERRORexception='ReturnCode(NO_SPACE, Put operation rejected for document 'id:site-search:site::<urn:uuid:033689d2-5f23-4afb-815d-d6f5d6ecbcbd>' of type 'site': 'enumStoreLimitReached: { action: "add more content nodes", reason: "enum store address space used (0.92813) > limit (0.9)", enumStore: { used: 31890298144, dead: 0, limit: 34359738368}, attributeName: "text", subdb: "ready"}')' endpoint=vespa1:8080 ssl=false resultTimeLocally=1532685239428

我的 Vespa 节点是 运行 到 Docker,机器上有卷。 以下是使用的卷:

-v /data/1/bench/vespa/sample-apps:/vespa-sample-apps -v /data/1/bench/vespa/logs:/opt/vespa/logs --volume /data/1/bench/vespa/var:/opt/vespa/var

所以,如果我是对的,数据应该存放在/data/1目录下,并且根据df:

$ df
Filesystem                 1K-blocks     Used  Available Use% Mounted on
udev                        65802860        0   65802860   0% /dev
tmpfs                       13162916   108488   13054428   1% /run
/dev/mapper/VgRoot-root     78217900  3249540   70952028   5% /
/dev/mapper/VgRoot-boot       237861    36998     184275  17% /boot
/dev/mapper/VgRoot-srv       9775612    36888    9222424   1% /srv
/dev/mapper/VgData01-data 3688163424 48757376 3451987424   2% /data/1

那里还有很多 space。所以我想知道,如果 Vespa 没有查看正确的磁盘分区来检查它是否使用了超过 90% 的磁盘space。

每个节点属性的唯一值数量有上限 - 请参考https://docs.vespa.ai/documentation/performance/attribute-memory-usage.html#data

唯一的补救措施是向 Vespa 应用程序添加更多内容节点 - 这是在更多节点上自动重新分发文档,从而减少属性中唯一值的数量