solr:curl delete 命令静默失败

solr: curl delete command silently fails

我正在尝试在重建索引之前删除所有数据。 这是我的命令(我在 windows):

curl -X POST -H "Content-Type: application/json" --data-binary "{\"delete\":{\"query\":\"*:*\" }}" http://localhost:8983/solr/mycollection/update

我得到了一个成功的响应,但是之后数据仍然存在。可能是什么问题?

您的 curl 命令缺少 commit=true

请使用下面的命令进行提交。

curl -X POST -H 'Content-Type: application/json' \
    'http://<host>:<port>/solr/<core>/update?commit=true' \
    -d '{ "delete": {"query":"*:*"} }'

如果你在 windows 上使用 curl 那么它就像

curl -X POST -H "Content-Type: application/json" --data-binary "{\"delete\":{\"query\":\"*:*\" }}" "http://localhost:8983/solr/mycollection/update?commit=true"

下面一个可以通过浏览器使用:

http://host:port/solr/collection_name/update?commit=true&stream.body=<delete><query>*:*</query></delete>