Details
-
Bug
-
Resolution: Fixed
-
Major
-
None
-
2.0 Final
-
None
-
Installation of more than one instance as services in one tomcat server
Description
Running more than one instance in a single tomcat does not work because of static variables. All services run in the same JVM and therefore they share the same static variables.
At least the following variables and functions produce problems or deliver unpredictable results:
- info.magnolia.custom.search.lucene.Index.indexDirectory
- info.magnolia.logging.Configurator.configure()
- info.magnolia.logging.Configurator.configure(String path)
- info.magnolia.module.templating.Store.store
- info.magnolia.module.adminInterface.Store.store
- info.magnolia.cms.util.AccessLock.set()
- info.magnolia.cms.util.AccessLock.release()
- info.magnolia.cms.util.AccessLock.isSet()
- info.magnolia.cms.util.AccessLock.getLockFile()
- info.magnolia.cms.util.Path.getCacheDirectoryPath()
- info.magnolia.cms.util.Path.getTempDirectoryPath()
- info.magnolia.cms.util.Path.getLogPropertiesFilePath()
- info.magnolia.cms.util.Path.getHistoryFilePath()
- info.magnolia.cms.util.Path.getJCRItemTypesFile()
- info.magnolia.cms.util.Path.getRepositoriesConfigFilePath()
- info.magnolia.cms.util.Path.getRepositoryFactoryConfigFilePath()
- info.magnolia.cms.security.Lock.isSystemLocked
- info.magnolia.cms.security.Lock.lockSetDate
- info.magnolia.cms.security.Lock.lockedHierarchyList
- info.magnolia.cms.exchange.ice.ChannelFactory.channels
- info.magnolia.cms.beans.config.ContentRepository.repositories
- info.magnolia.cms.beans.config.ContentRepository.hierarchyManagers
- info.magnolia.cms.beans.config.ContentRepository.hierarchyManagers
- info.magnolia.cms.beans.config.ContentRepository.repositoryMappings
- info.magnolia.cms.beans.config.ContentRepository.repositoryFactory
- info.magnolia.cms.beans.config.MIMEMapping.MIMEList
- info.magnolia.cms.beans.config.MIMEMapping.cachedContent
- info.magnolia.cms.beans.config.Subscriber.ipList
- info.magnolia.cms.beans.config.Subscriber.cachedContent
- info.magnolia.cms.beans.config.Template.templates
- info.magnolia.cms.beans.config.Template.visibleTemplates
- info.magnolia.cms.beans.config.Template.cachedContent
- info.magnolia.cms.beans.config.Cache.cachedCacheableURIMapping
- info.magnolia.cms.beans.config.Cache.compressionList
- info.magnolia.cms.beans.config.Cache.isCacheable
- info.magnolia.cms.beans.config.Cache.domain
- info.magnolia.cms.beans.config.Listener.ipList
- info.magnolia.cms.beans.config.Listener.cachedContent
- info.magnolia.cms.beans.config.Paragraph.paragraphs
- info.magnolia.cms.beans.config.Paragraph.cachedContent
- info.magnolia.cms.beans.config.VirtualMap.cachedURImapping
- info.magnolia.cms.beans.config.VirtualMap.virtualMap
- info.magnolia.cms.beans.config.Server.cachedContent
- info.magnolia.cms.beans.config.Server.cachedURImapping
- info.magnolia.cms.beans.config.Server.cachedCacheableURIMapping
- info.magnolia.cms.beans.config.ItemType.map
- info.magnolia.cms.beans.runtime.SecureURI.cachedContent
- info.magnolia.cms.beans.runtime.SecureURI.hierarchyManager
- info.magnolia.cms.beans.runtime.SystemProperty.properties
- info.magnolia.cms.beans.runtime.Cache.cachedURIList
You will have to change depending (static) methods as well. You should also check the logging.
Checklists
Acceptance criteria