It is synchronized due to 1.2 singleton core compatibility:
public static SolrCore getSolrCore() {
synchronized( SolrCore.class ) {
...
It would require a lot of simultaneous core creations (and/or deprecated
getSolrCore calls) to have a noticeable performance effect.
Noble Paul നോബിള് नोब्ळ् wrote:
>
> Why does it have to be synchronized . will it notlead to poor
> multicore performance?
>
> /**
> * Creates a new core and register it in the list of cores.
> * If a core with the same name already exists, it will be stopped
> and replaced by this one.
> *...@param dataDir the index directory
> *...@param config a solr config instance
> *...@param schema a solr schema instance
> *
> *...@since solr 1.3
> */
> public SolrCore(String name, String dataDir, SolrConfig config,
> IndexSchema schema, CoreDescriptor cd) {
> synchronized (SolrCore.class) {
>
> ....
> }
> --
> --Noble Paul
>
>
--
View this message in context:
http://www.nabble.com/Why-is-SolrCore-creation-synchronized--tp22943290p22948229.html
Sent from the Solr - Dev mailing list archive at Nabble.com.