You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by GitBox <gi...@apache.org> on 2019/12/25 00:11:17 UTC

[GitHub] [lucene-solr] noblepaul commented on issue #1109: More pervasive use of PackageLoader / PluginInfo

noblepaul commented on issue #1109: More pervasive use of PackageLoader / PluginInfo
URL: https://github.com/apache/lucene-solr/pull/1109#issuecomment-568812967
 
 
   Technically, Hot-reloading means reloading an object without restarting the JVM. So, it's OK to reload an object by reloading a core. 
   
   The problem with this PR is that it leaves the system in an inconsistent state. Consider the following scenario
   
   -  `ComponentX` uses `PackageA` `1.0`
   -  User updates `PackageA` to `2.0`
   - A core that got started after the package update uses `2.0` & all other cores use `1.0`
   
   We really cannot leave the system in an inconsistent state and say we will deal with the inconsistencies in another ticket.
   
   What is the solution?
   There are 2 ways to use packages. 
   
   1. Ensure that the plugin has true hot reloading. As it is done for the plugins we support today
   2. Or, we identify a list of plugins that do not need to be `hot-reloaded`. If a package is updated and such a plugin is using that package, we just reload the core
   
   Wherever possible we strive to implement option#1 because reloading cores can cause instability in the system & we try to minimize it as much as possible. If option#1 is not possible we MUST implement option#2. 
   
   
   

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org