我有一个solr 5.4.1 表,我允许用户发表评论。通过PHP,用户可以运行以下功能:
function solr_update($id, $comments) {
$ch = curl_init("http://url:8983/solr/asdf/update?commit=true");
$data = array(
"id" => $id,
"comments" => array(
"set" => $comments),
);
$data_string = json_encode(array($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-type: application/json'));
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
echo curl_exec($ch);
}
虽然大部分时间都有效,但我得到了回复:
{"responseHeader":{"status":0,"QTime":83}}
最近,当我从curl_exec($ch)
获得回复时,我已经遇到过这种情况。
{"responseHeader":{"status":400,"QTime":6},
"error":{"msg":"Exception writing document id 376299
to the index; possible analysis error.","code":400}}
我不确定是什么导致了这种情况,但是当它发生时,就像整个桌子死了,我必须使用恢复点来恢复它 (http://url:8983/solr/asdf/replication?command=restore&name=solr_backup_20161028)
。
如果我尝试在solr(http://url:8983/solr/asdf
)中加载核心,则不会出现任何记录,并显示“Luke未配置”。虽然我仍然可以运行查询:(http://url:8983/solr/asdf/select?q=*:*
),但我根本看不到记录计数或修改数据库。
我做错了导致我的桌子被损坏了吗?
赏金时间。我真的需要一些帮助解决这个问题!
d:\ solr的\ solr的-5.4.1 \服务器\日志\ solr.log.2
2016-11-15 13:59:49.997 ERROR (qtp434176574-19) [ x:invoice]
o.a.s.s.HttpSolrCall null:org.apache.lucene.index.IndexNotFoundException:
no segments* file found in
NRTCachingDirectory(MMapDirectory@D:\solr\solr-
5.4.1\server\solr\asdf\data\restore.snapshot.solr_backup_20161104
lockFactory=org.apache.lucene.store.NativeFSLockFactory@17df8f10;
maxCacheMB=48.0 maxMergeSizeMB=4.0): files: [_pej4.fdt,
_pej4_Lucene50_0.doc, _pej4_Lucene50_0.tim, _wxvy.fdt,
_wxvy_Lucene50_0.doc, _wxvy_Lucene50_0.tim]
另外,我现在在asdf/data
文件夹中有几个“solr_backupYYYYMM”文件夹。我可以手动删除这些而不会导致问题吗?我相信,在下午5点之后对solr运行的唯一一件事是我每晚都写入备份solr的python脚本,作为脚本的一部分,它当前正在删除任何带有YYYYMM
字符串的文件夹那7天(所以我没有用完空间)。截至昨天我已经从脚本中删除了那部分内容,以防可能导致问题的原因。我只是想想一切。
答案 0 :(得分:2)
由于有一个完整的讨论,我将在讨论底线复制两个引用:
"我认为您已尝试将空字符串索引到数字字段中。 那不行。它必须是有效数字,或者您需要 完全离开球场"。
"架构中需要字段
_collection_id
而未填写 我的更新请求"。
你的第二个问题" IndexNotFoundException: no segments* file found in
"发生的原因是因为异常IndexWriter死后留下write.lock
和临时索引文件。这里描述了这个问题https://wilsonericn.wordpress.com/2011/12/14/my-first-5-lucene-mistakes"#3:让IndexWriter保持打开状态。"标题。