Keep in mind that the way lucene/solr work is that the results are
constant from when you open the searcher. If new documents are added
(without re-opening the searcher) they will not be seen.
<commit/> tells solr to re-open the index and see the changes.
1. Does this mean that committing on the indexing (Embedded) server
does
not reflect the document changes when we fire a search through another
(HTTP) server?
correct. The HTTP server would still be open from before the indexing
happened.
2. What happens to the commit fired on the indexing server? Can I
remove
that and just commit on the "read only" server?
Call commit on the indexing server, then the read only server then you
can delete the Embedded server
3. Do we have to fire a Commit (on the HTTP server) before we try to
search for a document?
Yes -- calling commit will re-open the index and reflect any changes
to it
4. Can we make any setting (perhaps using auto-commit) on the HTTP
server to avoid this scenario?
Not really -- the HTTP core has no idea what is happening on the other
core.
ryan