mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-21 18:09:20 +00:00
Possible fix to unit test failures
- Make RepositoryContainer cope with executing inside a read transaction git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@43621 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -45,6 +45,7 @@ import org.alfresco.repo.security.authentication.AuthenticationUtil.RunAsWork;
|
|||||||
import org.alfresco.repo.tenant.TenantAdminService;
|
import org.alfresco.repo.tenant.TenantAdminService;
|
||||||
import org.alfresco.repo.tenant.TenantDeployer;
|
import org.alfresco.repo.tenant.TenantDeployer;
|
||||||
import org.alfresco.repo.transaction.AlfrescoTransactionSupport;
|
import org.alfresco.repo.transaction.AlfrescoTransactionSupport;
|
||||||
|
import org.alfresco.repo.transaction.AlfrescoTransactionSupport.TxnReadState;
|
||||||
import org.alfresco.repo.transaction.RetryingTransactionHelper;
|
import org.alfresco.repo.transaction.RetryingTransactionHelper;
|
||||||
import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback;
|
import org.alfresco.repo.transaction.RetryingTransactionHelper.RetryingTransactionCallback;
|
||||||
import org.alfresco.repo.transaction.TooBusyException;
|
import org.alfresco.repo.transaction.TooBusyException;
|
||||||
@@ -339,7 +340,9 @@ public class RepositoryContainer extends AbstractRuntimeContainer implements Ten
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if (transactionService.getRetryingTransactionHelper().doInTransaction(authWork, transactionService.isReadOnly()))
|
boolean readOnly = transactionService.isReadOnly();
|
||||||
|
boolean requiresNew = !readOnly && AlfrescoTransactionSupport.getTransactionReadState() == TxnReadState.TXN_READ_ONLY;
|
||||||
|
if (transactionService.getRetryingTransactionHelper().doInTransaction(authWork, readOnly, requiresNew))
|
||||||
{
|
{
|
||||||
// Execute Web Script if authentication passed
|
// Execute Web Script if authentication passed
|
||||||
// The Web Script has its own txn management with potential runAs() user
|
// The Web Script has its own txn management with potential runAs() user
|
||||||
|
Reference in New Issue
Block a user