2012-01-03 19 views
16

Mam schema.xml SOLR takiego:Jak usunąć indeksowane dane SOLR za pomocą zapytania z curl?

<field name="cartype" type="lowercase" indexed="true" stored="true"/> 
<field name="color" type="lowercase" indexed="true" stored="true"/> 

chcę usunąć „niebieski” i „Kombi” oznaczone rekordy z bazy danych SOLR z polecenia curl.

Ale nie zrobić z następującego polecenia:

curl http://46.231.77.98:7979/solr/update/?commit=true -H "Content-Type: text/xml" -d "<delete>(cartype:stationwagon)AND(color:blue)</delete>" 

Czy macie jakieś sugestie?

Odpowiedz

27

Musisz dodać tag query.

<delete><query>(cartype:stationwagon)AND(color:blue)</query></delete> 
+0

Dzięki, to działa. –

+0

Czy jest to odpowiednik '+ cartype: stationwagon + color: blue'? – devios1

1

W ten sposób byłoby łatwiej: curl "http://46.231.77.98:7979/solr/collection/update/?commit=true&stream.body=<delete><query>(cartype:stationwagon)AND(color:blue)</query></delete>"

To proste GET żądanie i trzeba po prostu dodać parametr
stream.body=<delete><query>(cartype:stationwagon)AND(color:blue)</query></delete> do łańcucha zapytania.

Powiązane problemy