janhoy opened a new pull request, #3983:
URL: https://github.com/apache/solr/pull/3983

   After many years, here is a fresh implementation of 
[SIP-6](https://cwiki.apache.org/confluence/display/SOLR/SIP-6+Solr+should+own+the+bootstrap+process).
   
   ## New bootsrap module
   
   This PR adds a new gradle module `solr/bootstrap` which produces 
`solr-start.jar`, which is copied into `server/` in the binary dist, and is a 
drop-in replacement for Jetty's `start.jar` and all the jetty xml-config-files.
   
   * programmatically setup the Jetty server in the `SolrStart` class. This 
basically does everything that is currently done by jetty "modules" defined in 
xml in `server/etc/*.xml`, such as selecting between HTTP and HTTPS, setup 
requestlogging etc etc. 
   * Generate a self-signed SSL certificate if `SOLR_SSL_ENABLED=true` (this is 
new, just to prove a benefit)
   * Construct Solr servlet in pure Java instead of `web.xml`
   
   On this foundation we can later configure CORS and memory-locking and other 
low-level stuff. Or replace Jetty with something else.
   
   ## Slimmer start script
   
   I made a parallel `bin/solr-bootstrap` start script  for this POC. It is a 
fork of `bin/solr` but thinner, as all the SSL logic is handled in java by 
bootstrap module. It can be made even slimmer now that we own the `public 
static void main(String[] args)` method, that can do a whole lot of config 
processing before bootstrapping Jetty.
   
   See 
[solr/bootstrap/README.md](https://github.com/janhoy/solr/blob/44fc8245242b47ff0602f68e5c21553b7fa5ab5e/solr/bootstrap/README.md)
 for a full writeup of the approach.
   
   https://issues.apache.org/jira/browse/SOLR-14361
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to