jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-1865) Add the Data Store to the Jackrabbit API
Date Wed, 02 Sep 2009 14:30:32 GMT

    [ https://issues.apache.org/jira/browse/JCR-1865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12750452#action_12750452
] 

Jukka Zitting commented on JCR-1865:
------------------------------------

Why do we need to modify JackrabbitSession for this? As discussed earlier, I'd be perfectly
happy with a ManagedRepository interface with the createDataStoreGarbageCollector() method.

Some other concerns:

* I'd just put all the management interfaces in o.a.j.api.management, no need to create subpackages

* I'd drop the DataStore part of the interface and method names, as in future we may well
want to extend the mechanism to cover other uses, for example optimizing the search indexes
or removing old journal records.

* Do we really need the MarkEventListener mechanism? I can see how it can be useful in creating
a nice progress bar display, but is having such a feature important enough to make the API
more complex and thus noticeably limit implementation options? 

* The sleepBetweenNodes property seems really implementation specific. What if we later find
out that a better way to control the impact of garbage collection is to for example use the
Thread.setPriority() method? I'd rather not fix such implementation details in the API unless
there's a very good reason for having it there.

* If we do the above, do we then need to expose a close() method on the garbage collector?

As a summary, here's what I'd expose as the *only* new interfaces and methods:

    ManagedRepository repository = ...;
    GarbageCollector collector = repository.getGarbageCollector();
    collector.mark();
    collector.sweep();

This covers the basic use case while giving us maximum implementation flexibility. 


> Add the Data Store to the Jackrabbit API
> ----------------------------------------
>
>                 Key: JCR-1865
>                 URL: https://issues.apache.org/jira/browse/JCR-1865
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-core
>            Reporter: Thomas Mueller
>            Assignee: Thomas Mueller
>            Priority: Minor
>         Attachments: api.patch, api_2.patch, core.patch, core_2.patch
>
>
> Currently, the garbage collection is not part of the Jackrabbit API. However, the data
store garbage collection must be used once in a while if the data store is enabled. I propose
to add the required interfaces to the Jackrabbit API. This will also allow to call garbage
collection using RMI.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message