[ http://issues.apache.org/jira/browse/JCR-599?page=comments#action_12444730 ] Przemo Pakulski commented on JCR-599: -------------------------------------
Well, I can't agree that repository/workspace configs should be immutable. There is a lot of configuration options available for workspace and many administraction activities which requires change of workspace/repository config to maintain repository. See some examples below (from our experience only) : - changes of paths required to restore repository from backup on different location and/or on another machine, - changes of indexes location to another disk/filesystem becuase of either running out of space or performance reasons, - changes of other SearchIndex/PersistanceManager configuration parameters which can impact performance or memory usage, - in case of using database PM, changes of db host, db name, username, password or any other DBPM paramaters (including jdbc driver), - etc. All these changes are quite trivial if you are using LocalFileSystem and single (or a couple of) workspace, but becomes painful and errorprone if your repository has many workspaces and/or all configuration files are stored in database using DBFileSystem (our case). To change single parameter or path you have to iterate through all workspaces and edit blob content several times ... Naturally not all changes are possible and you should be aware what are you doing exactly. As I mentioned before we can add additional parameter 'inheritConfig' with default value set to 'false'. Without setting explicitly this parameter to 'true' everything wilk work exactly as before, so this change will be transparent and backward compatible. > Allow to inherit workspace configuration from repository level template > ----------------------------------------------------------------------- > > Key: JCR-599 > URL: http://issues.apache.org/jira/browse/JCR-599 > Project: Jackrabbit > Issue Type: New Feature > Components: config > Affects Versions: 1.0, 1.0.1, 1.1, 0.9 > Reporter: Przemo Pakulski > Priority: Minor > > RepositoryConfig file contains section with template for Workspace config. > This template is used to create new workspace using jackrabbit internal api, > and new workspace configuration file is created based on this template. > Probably in most scenarios common configuration for all workspaces is used. > If you need to make some configuration changes then you have to iterate > through each workspace and edit each config file separately. > It is quit easy task if you are using local file system, but can be hard if > other file systems are used (for example using DbFileSystem editing blobs in > database is required). > Our proposal to make some improvement here and allow to inherit workspace > configuration by reading it from repository level template. Change made in > repository config file will be reflected auomaticallly in all worskpaces then. > Feature details : > - if workspace.xml file doesn't exists it can be inherited (read and created > in memory from template), no workspace.xml file must be generated, > - you can still override workspace config by creating workspace.xml file by > hand, then this file will be used instead of template, > - if required additional parameter 'inheritConfig' can be added with default > value 'false' to keep current behaviour > and workspace config inheritance will work only if this parameter is set to > 'true'. > We are working on this feature, and we will contribute patch. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
