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

MarkLogic CoRB任务执行失败求助:ContentSource不可用错误

CoRB 2.4.3执行失败:ContentSource not available 排查方案

问题背景

运行版本2.4.3的CoRB任务时执行失败,使用HTTP应用服务器。配置文件参数如下:

XCC-CONNECTION-URI=xccs://username:password@Load Balancer URL:port/dbname 
THREAD-COUNT=2 
ERROR-FILE-NAME=/path/example.out 
FAIL-ON-ERROR=false 
MODULES-DATABASE=modules_dbname 
MODULE-ROOT=/path/ 
PROCESS-MODULE=process_modules_example.xqy 
PROCESS-TASK=com.marklogic.developer.corb.ExportBatchToFileTask 
COMMAND-FILE=/path/CoRB/examplecommand.properties 
SSL-CONFIG-CLASS=com.marklogic.developer.corb.TrustAnyoneSSLConfig 
SSL-ENABLED-PROTOCOLS=TLSv1.2

执行时触发错误:

SEVERE: Error while running CORB
com.marklogic.developer.corb.CorbException: ContentSource not available.
at com.marklogic.developer.corb.DefaultContentSourcePool.get(DefaultContentSourcePool.java:117)
at com.marklogic.developer.corb.ModuleExecutor.run(ModuleExecutor.java:206)
at com.marklogic.developer.corb.ModuleExecutor.main(ModuleExecutor.java:87)

Dec 07, 2023 1:18:58 AM com.marklogic.developer.corb.ModuleExecutor main
INFO: processing error - exiting with code 2

已尝试启用和禁用以下两个SSL参数,但问题仍未解决:

SSL-CONFIG-CLASS=com.marklogic.developer.corb.TrustAnyoneSSLConfig
SSL-ENABLED-PROTOCOLS=TLSv1.2

排查步骤

1. 验证XCC连接URI的正确性

  • 测试网络连通性:用telnet <Load Balancer URL> <port>或curl -v https://<Load Balancer URL>:<port>确认负载均衡地址和端口可正常访问
  • 检查URI协议:如果使用的是未启用SSL的HTTP应用服务器,需将xccs://改为xcc://;仅当HTTP应用服务器启用SSL时才使用xccs://
  • 验证账号密码:使用XCC客户端工具(如MLCP或简单Java测试代码)单独测试用户名密码是否能成功连接到目标数据库

2. 排查负载均衡配置问题

  • 确认负载均衡是否正确转发XCC请求到MarkLogic HTTP应用服务器,未拦截SSL握手或XCC特定请求
  • 检查负载均衡SSL策略:即使配置了TrustAnyoneSSLConfig,也要确认负载均衡允许TLSv1.2协议,且证书链无过期、域名不匹配等问题
  • 验证路由规则:确保请求未被转发到错误的MarkLogic节点或端口

3. 检查MarkLogic服务器端配置

  • 确认HTTP应用服务器允许XCC访问:HTTP应用服务器默认支持XCC,但需检查是否在「Allowed Request Content Types」中限制了XCC相关类型,或设置IP白名单拦截请求
  • 查看服务器日志:检查MarkLogic的ErrorLog.txt,查找XCC连接失败相关的错误记录,如认证失败、SSL握手错误等

4. 排查CoRB运行环境与依赖

  • 验证XCC jar包兼容性:CoRB 2.4.3依赖的MarkLogic XCC jar包版本需与服务器版本匹配,版本不兼容可能导致连接失败
  • 检查JVM代理配置:确认JVM未设置全局代理(如http.proxyHost)导致无法连接负载均衡
  • 查看CoRB错误日志:检查/path/example.out文件,里面可能包含更详细的错误堆栈(如SSL握手失败的具体原因)

5. 绕过负载均衡测试

将XCC-CONNECTION-URI替换为直接连接MarkLogic节点的地址(如xccs://username:password@marklogic-node:ssl-port/dbname),如果连接成功,说明问题出在负载均衡配置;如果仍失败,问题则聚焦在CoRB配置或MarkLogic服务器端

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 16:15:37