Added transaction hook for store purges, version creations and version purges;

this allows an internal cache to be maintained that permits most calls to 
the heavyweight getLatestSnapshotID(String store) AVM API to be skipped.
This addresses a performance problem noticed when the number of stores 
is large.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@6182 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Jon Cox
2007-07-05 22:43:31 +00:00
parent 96ee8a6d01
commit 7d537bf42d
2 changed files with 10 additions and 1 deletions

View File

@@ -142,6 +142,15 @@
<property name="retryingTransactionHelper"> <property name="retryingTransactionHelper">
<ref bean="retryingTransactionHelper"/> <ref bean="retryingTransactionHelper"/>
</property> </property>
<property name="createVersionTxnListener">
<ref bean="createVersionTxnListener"/>
</property>
<property name="purgeVersionTxnListener">
<ref bean="purgeVersionTxnListener"/>
</property>
<property name="purgeStoreTxnListener">
<ref bean="purgeStoreTxnListener"/>
</property>
<!-- Poll interval to check getLatestSnapshotID (in milliseconds) --> <!-- Poll interval to check getLatestSnapshotID (in milliseconds) -->
<property name="pollInterval" value="5000"/> <property name="pollInterval" value="5000"/>

View File

@@ -10,7 +10,7 @@ package org.alfresco.repo.avm;
public interface CreateVersionCallback public interface CreateVersionCallback
{ {
/** /**
* A version of a store has been purged. * A version of a store has been created.
* @param storeName The name of the store in which a new version has been created. * @param storeName The name of the store in which a new version has been created.
* @param versionID The version id of the new version. * @param versionID The version id of the new version.
*/ */