Fixed AR-546:

VersionCounterDao is enclosed in non-propagating transactions (via config)
   version_counter row is locked while version number is incremented
   Added tests to ensure failure before fixing


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2646 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2006-04-11 10:54:09 +00:00
parent d9a5b76e63
commit f870a17a66
7 changed files with 310 additions and 85 deletions

View File

@@ -318,9 +318,27 @@
</property>
</bean>
<bean id="versionCounterDaoService" class="org.alfresco.repo.version.common.counter.hibernate.HibernateVersionCounterDaoServiceImpl">
<property name="sessionFactory">
<ref bean="sessionFactory" />
<bean id="versionCounterDaoService" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="proxyInterfaces">
<value>org.alfresco.repo.version.common.counter.VersionCounterDaoService</value>
</property>
<property name="transactionManager">
<ref bean="transactionManager" />
</property>
<property name="target">
<bean class="org.alfresco.repo.version.common.counter.hibernate.HibernateVersionCounterDaoServiceImpl" init-method="init">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
<property name="policyComponent">
<ref bean="policyComponent" />
</property>
</bean>
</property>
<property name="transactionAttributes">
<props>
<prop key="*">${server.transaction.mode.default}, PROPAGATION_REQUIRES_NEW</prop>
</props>
</property>
</bean>