我有两个核心运行的最新 solr 4.0.0 beta。每个的 solrconfig.xml 文件实际上是相同的。在管理 UI 中,当我为每个请求发出 ping 请求时,我会得到不同的结果。简而言之,这是设置:
对 solrconfig.xml 的 ping 配置:
<requestHandler name="/admin/ping" class="solr.PingRequestHandler">
<lst name="invariants">
<str name="q">solrpingquery</str>
</lst>
<lst name="defaults">
<str name="qt">standard</str>
<str name="echoParams">all</str>
<str name="df">text</str>
</lst>
</requestHandler>
我正在使用我的 chrome 浏览器访问管理 UI。第一个核心的 ping 请求是通过 url 请求的(url 中的域解析为我的 localhost IP):
http://solr:8983/solr/core1/admin/ping?wt=json&ts=1347035067191
回复如下:
{"responseHeader":{"status":0,"QTime":29,"params":{"echoParams":"all","df":"text","echoParams":"all","ts" :"1347035067191","wt":"json","q":"solrpingquery","distrib":"false"}},"status":"OK"}
第二个核心的 ping 请求通过以下方式完成:
http://solr:8983/solr/core2/admin/ping?wt=json&ts=1347036906643
回复如下:
{“状态”:“确定”}
请注意第二个响应如何缺少 responseHeader。ajax ping 响应回调取决于该 responseHeader。由于缺少它(即 responseHeader.QTime),浏览器会发出以下错误:
Uncaught TypeError: Cannot read property 'QTime' of undefined ping.js:53
$.ajax.success ping.js:53
jQuery.Callbacks.fire require.js:3099
jQuery.Callbacks.self.fireWith require.js:3217
done require.js:9452
jQuery.ajaxTransport.send.callback
我是否在某处遗漏了一些导致这种情况的琐碎配置?