Solr删除因某些原因无法正常工作
只是试图删除所有文件,并做到了这一点:
http://localhost:8983/solr/update?stream.body=%3Cdelete%3E%3Cquery%3E*:*%3C/query%3E%3C/delete%3E
然后承诺:
http://localhost:8983/solr/update?stream.body=%3Ccommit/%3E
我收到了回复:
0 17
但是当我搜索时,我仍然会得到结果。
我做错了什么?
不确定它是否重要,但你可能编码:也
http://localhost:8983/solr/update?stream.body=%3Cdelete%3E%3Cquery%3E*%3A*%3C%2Fquery%3E%3C%2Fdelete%3E
另一件要尝试的是使用POST方法(调用update的首选方法):
curl http://localhost:8983/solr/update?commit=true -H "Content-Type: text/xml" --data-binary '*:* '
最近我也被这个蜇了。 请记住,如果您在solrconfig.xml中配置了updateLog,但schema.xml中没有版本字段
请参阅https://issues.apache.org/jira/browse/SOLR-3432
我在这个上花了一个小时!
将commit = true参数放在GET请求中:
http://localhost:8983/solr/update?stream.body=%3Cdelete%3E%3Cquery%3E*:*%3C/query%3E%3C/delete%3E&commit=true
记得清除浏览器缓存! 我以为我遇到了同样的问题,但事实certificate浏览器刚刚缓存了结果并返回了缓存页面。 D’哦!
在Lucene维基:
它仍然会被找到,因为索引更改在看到之前是不可见的,并且会打开一个新的搜索器。 要导致这种情况发生,请向Solr发送一个提交命令(post.jar默认为你做这个)
也许您可以向Solr发送
消息。
http://localhost:8983/solr/update?stream.body=*:* &commit=true
可能你在更新之后和问号之前缺少正斜杠( /
)。
当前查询:
http://localhost:8983/solr/update?stream.body=*:* &commit=true
修改后的查询:
http://localhost:8983/solr/update/?stream.body=*:* &commit=true