finally I found out the cause of my problem yes you don't need to delete the index and restart the tomcat just to get the data query result updated, you just need to commit the xml files.
I made a custom url as per requirement from my client default url -- > http://localhost/solr/select/?q=ITEM_CAT:817&version=2.2&start=0&rows=10&indent=on my custom url --> http://localhost/search/select/?q=ITEM_CAT:817&version=2.2&start=0&rows=10&indent=on I made the custom url by copy paste the solr.war and renamed it to search.war, so in webapps folder there are two war files this is the cause of my problem, when I use the default url there is no problem at all but when I use my custom url I have to delete, commit, and restart the tomcat to make the query result correctly. the question is now changed :) how to make the search.war behave exactly the same like solr.war? maybe when I start the tomcat I should add some parameter so it will including/pointing to search.war not solr.war anymore? when I removed the solr.war so there is only one war file in webapps folder which is search.war, I can't do commit, it said 'FATAL: Solr returned an error: Not Found' it is because the app searching solr.war not search.war -- View this message in context: http://lucene.472066.n3.nabble.com/solr-query-result-not-read-the-latest-xml-file-tp1066785p1070189.html Sent from the Solr - User mailing list archive at Nabble.com.