Shawn,

On 5/18/23 14:35, Shawn Heisey wrote:
On 5/18/23 10:27, Christopher Schultz wrote:
I didn't know there were multiple SolrJ implementations. I'm using the client library directly from the Solr project with a version number of 7.7.3. It looks like I have been running against an 8.1.1 server in my development environment while we have 7.7.3 in both staging and production. My goal was to upgrade to Solr 8.latest in the very near future, but I wanted to have all this code in-place to allow for completely automated schema updates and index re-build before doing that, because I understand that moving between major versions basically requires a complete index re-build. I'd rather have a completely point-and-click admin-initiated process for that than a manual "type these 40 commands" process to make the migration super duper easy.

There are basically four client implementations that most end users might use.

1) Cloud client based on Apache HttpClient.  Deprecated.  Class name CloudSolrClient. 2) Http client based on Apache HttpClient.  Deprecated.  Class name HttpSolrClient. 3) Cloud client based on Jetty HttpClient.  Capable of HTTP2.  Class name CloudHttp2SolrClient. 4) Http client based on Jetty HttpClient.  Capable of HTTP2.  Class name Http2SolrClient.

I'm using the org.apache.solr.client.solrj.impl.HttpSolrClient class from solr-solrj-7.7.3.jar library. It loos like I'm using it with org.apache.http.client.HttpClient so I guess I'm in bucket #2 above.

There are some other client implementations, but they are mainly used internally by the four mentioned clients or internally by Solr itself.

If your version 7 index was built from scratch by Solr 7.x, then you can upgrade it to 8.x with no problem.  If any version before 7.0 has EVER touched the index, then 8.x will not open it.  Version 9 is similar, only opening indexes originally built by 8.0 or later.

Please confirm the following:

1. Solr index is created with Solr 7.something
2. Solr 8.x is deployed and all is well
3. Index is re-built by replacing 100% of documents in the index
4. Solr 9.x is deployed and all is well

Is that correct, especially #4? I'd hate to have to literally delete the index and re-create it, since it's supposed to be online all the time and it takes hours to re-index everything.

Even when a version upgrade can use the existing index, a full re-index is still recommended.

Is a full-re-index defined as "replace every single document with a new fresh copy of itself"? If so, then I'm all good.

Thanks,
-chris

Reply via email to