(Inspired by an idea Uwe mentioned in LUCENE-4630)
Over the years, we've discovered various bugs in JVMs, specific JVM options, combinations of JVM options, combinations of JVMs and operating systems, etc... We've done a fairly decent job of alerting users to these known issues in documentation, and we've attempted to make tests not give false failures if people use these setups – but there is probably more we could be doing to alert users who may not run tests, or read all the docs/blogs.
I think we should add a new class to Lucene Core that provides a simple API for applications to get a list of "warning" Strings based on what lucene can dedect from the currently running JVM/OS. This should be something trivial for people writing apps using lucene to integrate into their code and/or tests (even if they don't use the LuceneTestCase) to notify them if when there are known compatibility issues between their enviornment and the version of lucene this class ships with.
This code should be executed, and all of the resulting warning messages outputed by...
the CheckIndex command line mode on startup
the Lucene Demo app(s) on startup
infostream (if used) the first time it's configured on an IndexWriterConfig
Solr startup logs
Solr admin UI (as exposed by the Solr SystemInfoRequestHandler HTTP API)
in the Lucene test framework after any test runs
...in addition, specific logic/messages in this code could help implement the annotations Dawid is suggesting in #5695.
Migrated from LUCENE-4631 by Chris M. Hostetter (@hossman)
Linked issues:
(Inspired by an idea Uwe mentioned in LUCENE-4630)
Over the years, we've discovered various bugs in JVMs, specific JVM options, combinations of JVM options, combinations of JVMs and operating systems, etc... We've done a fairly decent job of alerting users to these known issues in documentation, and we've attempted to make tests not give false failures if people use these setups – but there is probably more we could be doing to alert users who may not run tests, or read all the docs/blogs.
I think we should add a new class to Lucene Core that provides a simple API for applications to get a list of "warning" Strings based on what lucene can dedect from the currently running JVM/OS. This should be something trivial for people writing apps using lucene to integrate into their code and/or tests (even if they don't use the LuceneTestCase) to notify them if when there are known compatibility issues between their enviornment and the version of lucene this class ships with.
This code should be executed, and all of the resulting warning messages outputed by...
...in addition, specific logic/messages in this code could help implement the annotations Dawid is suggesting in #5695.
Migrated from LUCENE-4631 by Chris M. Hostetter (@hossman) Linked issues:
5695