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

Felix Meschberger commented on JCR-1865:
----------------------------------------

+1 with comments for the propose extensions:

* I suggest adding a MarkEventListener.started() method, which is called when 
scanning starts. This would be the logical lifecycle bracket to the done() 
method.

* I suggest renaming the getPersistenceManagerScan() method to 
isPersistenceManagerScan()

* I suggest defining the millis parameter to the setSleepBetweenNodes as long 
(instead of int) since all time related methods in Java take long rather than 
int. In addition I would add a getSleepBetweenNodes() to return that value, at 
least for completeness sake

* I am unclear as to what the stopScan method is all about. Shouldn't cleanup 
be done at the end of the scan method ? In addition I think the name "stopScan" 
is misleading: According to JavaDoc it does not actually stop something but 
cleanup after scanning is complete.

* Since the API looks much like a Mark&Sweep algorithm is foreseen to collect 
data store garbage, it might be sensible to name the methods accordingly: 
mark() instead of scan() and sweep() instead of deleteUnused(). This would also 
create a cognitive link to the MarkEventListener, which is called while the 
mark() method is running.

* As a corrollary to the previous comments: Why is the scan() (or mark()) 
method separate from the stopScan() and deleteUnused() methods ? If the three 
should be called in succession anyway, there should probably be just a single 
method "gc()" (or similar), which does everything and would also leave the 
actual algorithm choice to the implementation.

> Add the Data Store to the Jackrabbit API
> ----------------------------------------
>
>                 Key: JCR-1865
>                 URL: https://issues.apache.org/jira/browse/JCR-1865
>             Project: Jackrabbit
>          Issue Type: Improvement
>          Components: jackrabbit-core
>            Reporter: Thomas Mueller
>            Assignee: Thomas Mueller
>            Priority: Minor
>         Attachments: api.patch, core.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.

Reply via email to