Hi Tomasz,

currently all workspaces are initialized and loaded on startup, which is unfortunate when there are a lot of workspaces. however, I think it should be possible to change this behaviour to only load workspaces that are actively in use, that is, a session is connected to it.

One reason I'm aware of why workspaces need to be initialized on startup is that each workspace index also contains the repository wide version index. because of this, all workspace indexes need to be up and running to include versioning changes. I've created a jira issue to cover this: http://issues.apache.org/jira/browse/JCR-257

anyone else aware of other areas that prevent us from putting a workspace to sleep when it is not actively used?

regards
 marcel

Tomasz Dabrowski wrote:
After a few months of using my application my repository will have over
800 workspaces. That's why I decided to wrote some prototyping how many
workspaces can be in Jackrabbit (it clones one workspace many times).
Result of it is: Every time when Jackrabbit is started all files related
with indexing are opened (from "<workspace>/index" folder). As you know
OS has its own constraint for number of opened file per process. So in
fact "more workspace" = "more index files" = higher possibility to get
error "Too many files open".

Does anyone know if there are any constraints for number of workspaces
in repository? Have you tried in your project lots of workspaces??? Is
there any possibility to decrease number of index files for workspace
(eg. by defining some parameter in <SearchIndex> from repository.xml)

Ps. Of course I can set higher number for file per process in OS, but
this is not good idea ;)

Reply via email to