You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决MarkLogic数据库无法保存.eps文件报XDMP-JSONDOC错误问题?

问题分析与解决方案

差异原因

  • MarkLogic的MIME类型配置存在内存缓存与持久化配置不同步的情况:管理页面显示的是存储在数据库中的持久化配置,而xdmp.mimetypes()读取的是节点内存中的缓存配置。如果该实例修改MIME类型后未重启节点,或者配置同步过程中出现异常,就会导致内存缓存没有加载最新的持久化设置,出现两者不一致的现象。
  • 也可能是该实例曾通过xdmp:add-mimetype()或xdmp:remove-mimetype()这类XQuery函数临时修改过MIME类型——这类修改仅保存在内存中,不会同步到管理页面的持久化配置,若未重启节点,就会出现显示与实际生效配置不符的情况。

解决步骤

  1. 重启目标节点
    直接重启出现问题的MarkLogic实例节点,让内存缓存重新加载持久化的MIME配置。重启后调用xdmp.mimetypes()检查application/postscript的格式是否变为binary。

  2. 手动修正MIME配置(重启无效时)
    执行以下XQuery代码强制更新MIME类型:

    xdmp:add-mimetype("application/postscript", "binary", ".eps")
    

    执行完成后再次调用xdmp.mimetypes()确认配置正确,同时检查管理页面的对应设置是否同步更新。

  3. 集群环境需检查配置同步
    如果该实例属于MarkLogic集群,确认集群内的配置同步机制是否正常,对比其他节点的MIME配置,确保没有因同步异常导致的配置差异。

  4. 验证修复效果
    重新通过REST API上传.eps文件,确认XDMP-JSONDOC错误是否消除,文件能否正常存入数据库。

内容的提问来源于stack exchange,提问作者brztss

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 05:15:58