Buggy code:
public class CoreContainer { protected static Logger log = Logger . getLogger ( CoreContainer . class . getName ( ) ) ; protected final Map < String , SolrCore > cores = new LinkedHashMap < String , SolrCore > ( ) ; protected boolean persistent = false ; protected String adminPath = null ; protected String managementPath = null ; protected CoreAdminHandler coreAdminHandler = null ; protected File configFile = null ; protected String libDir = null ; protected ClassLoader libLoader = null ; protected SolrResourceLoader loader = null ; protected WeakReference < SolrCore > adminCore = null ; public CoreContainer ( ) { } public static class Initializer { protected String solrConfigFilename = null ; protected boolean abortOnConfigurationError = true ; public boolean isAbortOnConfigurationError ( ) { } public void setAbortOnConfigurationError ( boolean abortOnConfigurationError ) { } public String getSolrConfigFilename ( ) { } public void setSolrConfigFilename ( String solrConfigFilename ) { } public CoreContainer initialize ( ) throws IOException , ParserConfigurationException , SAXException { } } public CoreContainer ( String dir , File configFile ) throws IOException , ParserConfigurationException , SAXException { } public CoreContainer ( SolrResourceLoader loader ) { } public void load ( String dir , File configFile ) throws IOException , ParserConfigurationException , SAXException { this . configFile = configFile ; this . loader = new SolrResourceLoader ( dir ) ; FileInputStream cfgis = new FileInputStream ( configFile ) ; try { Config cfg = new Config ( loader , null , cfgis , null ) ; persistent = cfg . getBool ( "solr//@persistent" , false ) ; libDir = cfg . get ( "solr//@sharedLib" , null ) ; adminPath = cfg . get ( "solr//cores//@adminPath" , null ) ; managementPath = cfg . get ( "solr//cores//@managementPath" , null ) ; if ( ( libDir ) != null ) { File f = new File ( dir , libDir ) ; libDir = f . getPath ( ) ; CoreContainer . log . info ( ( "loading<seq2seq4repair_space>shared<seq2seq4repair_space>library:<seq2seq4repair_space>" + ( f . getAbsolutePath ( ) ) ) ) ; libLoader = SolrResourceLoader . createClassLoader ( f , null ) ; } if ( ( adminPath ) != null ) { coreAdminHandler = this . createMultiCoreHandler ( ) ; } NodeList nodes = ( ( NodeList ) ( cfg . evaluate ( "solr//cores//core" , XPathConstants . NODESET ) ) ) ; for ( int i = 0 ; i < ( nodes . getLength ( ) ) ; i ++ ) { Node node = nodes . item ( i ) ; try { String names = DOMUtil . getAttr ( node , "name" , null ) ; List < String > aliases = StrUtils . splitSmart ( names , ',' ) ; String name = aliases . get ( 0 ) ; CoreDescriptor p = new CoreDescriptor ( this , name , DOMUtil . getAttr ( node , "instanceDir" , null ) ) ; String opt = DOMUtil . getAttr ( node , "config" , null ) ; if ( opt != null ) { p . setConfigName ( opt ) ; } opt = DOMUtil . getAttr ( node , "schema" , null ) ; if ( opt != null ) { p . setSchemaName ( opt ) ; } SolrCore core = create ( p ) ; for ( int a = 1 ; a < ( aliases . size ( ) ) ; a ++ ) { core . open ( ) ; <START_BUG> register ( aliases . get ( i ) , core , false ) ; <END_BUG> } register ( name , core , false ) ; } catch ( Throwable ex ) { severeErrors . add ( ex ) ; SolrException . logOnce ( CoreContainer . log , null , ex ) ; } } } finally { if ( cfgis != null ) { try { cfgis . close ( ) ; } catch ( Exception xany ) { } } } } public void shutdown ( ) { } @ Override protected void finalize ( ) { } public SolrCore register ( String name , SolrCore core , boolean returnPrev ) { } public SolrCore create ( CoreDescriptor dcore ) throws IOException , ParserConfigurationException , SAXException { } public Collection < SolrCore > getCores ( ) { } public Collection < String > getCoreNames ( ) { } public Collection < String > getCoreNames ( SolrCore core ) { } public void reload ( String name ) throws IOException , ParserConfigurationException , SAXException { } public void swap ( String n0 , String n1 ) { } public SolrCore remove ( String name ) { } public SolrCore getCore ( String name ) { } public void setAdminCore ( SolrCore core ) { } public SolrCore getAdminCore ( ) { } protected CoreAdminHandler createMultiCoreHandler ( ) { } public CoreAdminHandler getMultiCoreHandler ( ) { } public boolean isPersistent ( ) { } public void setPersistent ( boolean persistent ) { } public String getAdminPath ( ) { } public void setAdminPath ( String adminPath ) { } public String getManagementPath ( ) { } public void setManagementPath ( String path ) { } public File getConfigFile ( ) { } public void persist ( ) { } public void persistFile ( File file ) { } void persist ( Writer writer ) throws IOException { } void persist ( Writer writer , List < String > aliases , CoreDescriptor dcore ) throws IOException { } public static void fileCopy ( File src , File dest ) throws IOException { } }

Fix:
register ( aliases . get ( a ) , core , false ) ;