mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
RM Performance Improvements:
* focus on in-place scenarios with large numbers of DM users and large numbers of in-place records (based on issue informally reported by partner) * improve performance of dynamic authorities used for in-place security evaluation (L1 transaction cache and more preformant authority look up) * remove unwanted queries in tree (N+1 for every node) .. killed it for large file plans * L1 transaction cache for capability condition evaluation .. these are called a LOT so removes some of the bottle necks when evaluating the permissions of a large sets of nodes * extend helper system test used to load up fileplan and now also create in-place records * unit and integration tests run .. sanity testing done via the UI * overall performance of the display of 1000 in-place records in the file plan down from minutes to a few seconds! git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@75186 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -94,7 +94,7 @@ public class HoldCapabilityConditionUnitTest extends BaseUnitTest
|
||||
doReturn(Collections.EMPTY_LIST).when(mockedHoldService).heldBy(eq(recordFolder), anyBoolean());
|
||||
|
||||
// when
|
||||
boolean result = evaluator.evaluate(recordFolder);
|
||||
boolean result = evaluator.evaluateImpl(recordFolder);
|
||||
|
||||
// then
|
||||
assertFalse(result);
|
||||
@@ -114,7 +114,7 @@ public class HoldCapabilityConditionUnitTest extends BaseUnitTest
|
||||
doReturn(AccessStatus.DENIED).when(mockedPermissionService).hasPermission(hold2, RMPermissionModel.FILING);
|
||||
|
||||
// when
|
||||
boolean result = evaluator.evaluate(recordFolder);
|
||||
boolean result = evaluator.evaluateImpl(recordFolder);
|
||||
|
||||
// then
|
||||
assertFalse(result);
|
||||
@@ -134,7 +134,7 @@ public class HoldCapabilityConditionUnitTest extends BaseUnitTest
|
||||
doReturn(AccessStatus.ALLOWED).when(mockedPermissionService).hasPermission(hold2, RMPermissionModel.FILING);
|
||||
|
||||
// when
|
||||
boolean result = evaluator.evaluate(recordFolder);
|
||||
boolean result = evaluator.evaluateImpl(recordFolder);
|
||||
|
||||
// then
|
||||
assertTrue(result);
|
||||
|
@@ -31,6 +31,7 @@ import java.util.Set;
|
||||
|
||||
import org.alfresco.model.ContentModel;
|
||||
import org.alfresco.module.org_alfresco_module_rm.capability.RMPermissionModel;
|
||||
import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanComponentKind;
|
||||
import org.alfresco.module.org_alfresco_module_rm.test.util.BaseUnitTest;
|
||||
import org.alfresco.repo.security.permissions.impl.AccessPermissionImpl;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
@@ -128,6 +129,17 @@ public class FilePlanPermissionServiceImplUnitTest extends BaseUnitTest
|
||||
|
||||
makeChildrenOf(holdContainer, hold);
|
||||
makeChildrenOf(hold, heldRecord);
|
||||
|
||||
doReturn(FilePlanComponentKind.FILE_PLAN).when(filePlanPermissionService).getFilePlanComponentKind(filePlan);
|
||||
doReturn(FilePlanComponentKind.RECORD_CATEGORY).when(filePlanPermissionService).getFilePlanComponentKind(rootRecordCategory);
|
||||
doReturn(FilePlanComponentKind.RECORD_CATEGORY).when(filePlanPermissionService).getFilePlanComponentKind(recordCategory);
|
||||
doReturn(FilePlanComponentKind.RECORD_FOLDER).when(filePlanPermissionService).getFilePlanComponentKind(newRecordFolder);
|
||||
doReturn(FilePlanComponentKind.RECORD).when(filePlanPermissionService).getFilePlanComponentKind(newRecord);
|
||||
doReturn(FilePlanComponentKind.UNFILED_RECORD_FOLDER).when(filePlanPermissionService).getFilePlanComponentKind(unfiledRecordFolder);
|
||||
doReturn(FilePlanComponentKind.UNFILED_RECORD_CONTAINER).when(filePlanPermissionService).getFilePlanComponentKind(unfiledRecordContainer);
|
||||
doReturn(FilePlanComponentKind.RECORD).when(filePlanPermissionService).getFilePlanComponentKind(unfiledRecord);
|
||||
doReturn(FilePlanComponentKind.HOLD_CONTAINER).when(filePlanPermissionService).getFilePlanComponentKind(holdContainer);
|
||||
doReturn(FilePlanComponentKind.HOLD).when(filePlanPermissionService).getFilePlanComponentKind(hold);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user