mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
ALF-3142: patch.updateDmPermissions takes too long to complete
- first upgrade test 100k set permissions/20 minutes (worst case each node has an ACL) - single threaded git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@21934 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -1053,6 +1053,11 @@
|
|||||||
<property name="fixesFromSchema"><value>0</value></property>
|
<property name="fixesFromSchema"><value>0</value></property>
|
||||||
<property name="fixesToSchema"><value>124</value></property>
|
<property name="fixesToSchema"><value>124</value></property>
|
||||||
<property name="targetSchema"><value>125</value></property>
|
<property name="targetSchema"><value>125</value></property>
|
||||||
|
<property name="dependsOn" >
|
||||||
|
<list>
|
||||||
|
<ref bean="patch.fixNameCrcValues-2" />
|
||||||
|
</list>
|
||||||
|
</property>
|
||||||
<property name="accessControlListDao">
|
<property name="accessControlListDao">
|
||||||
<ref bean="admNodeACLDAO"/>
|
<ref bean="admNodeACLDAO"/>
|
||||||
</property>
|
</property>
|
||||||
@@ -1632,7 +1637,6 @@
|
|||||||
<property name="dependsOn" >
|
<property name="dependsOn" >
|
||||||
<list>
|
<list>
|
||||||
<ref bean="patch.updateDmPermissions" />
|
<ref bean="patch.updateDmPermissions" />
|
||||||
<ref bean="patch.fixNameCrcValues-2" />
|
|
||||||
</list>
|
</list>
|
||||||
</property>
|
</property>
|
||||||
<property name="importerBootstrap">
|
<property name="importerBootstrap">
|
||||||
|
@@ -158,13 +158,12 @@ public class ADMAccessControlListDAO implements AccessControlListDAO
|
|||||||
CounterSet result = new CounterSet();
|
CounterSet result = new CounterSet();
|
||||||
// Do the children first
|
// Do the children first
|
||||||
|
|
||||||
|
Acl existingAcl = null;
|
||||||
Long aclId = nodeDAO.getNodeAclId(nodeId);
|
Long aclId = nodeDAO.getNodeAclId(nodeId);
|
||||||
if (aclId == null)
|
if (aclId != null)
|
||||||
{
|
{
|
||||||
// TODO: What happens here? It's causing NPEs
|
existingAcl = aclDaoComponent.getAcl(aclId);
|
||||||
throw new IllegalStateException("Null aclId is causing NPEs. Node: " + nodeId);
|
|
||||||
}
|
}
|
||||||
Acl existingAcl = aclDaoComponent.getAcl(aclId);
|
|
||||||
|
|
||||||
Long toInherit = null;
|
Long toInherit = null;
|
||||||
Long idToInheritFrom = null;
|
Long idToInheritFrom = null;
|
||||||
@@ -189,7 +188,7 @@ public class ADMAccessControlListDAO implements AccessControlListDAO
|
|||||||
idToInheritFrom = newAcl.getId();
|
idToInheritFrom = newAcl.getId();
|
||||||
nodeDAO.setNodeAclId(nodeId, idToInheritFrom);
|
nodeDAO.setNodeAclId(nodeId, idToInheritFrom);
|
||||||
}
|
}
|
||||||
if (existingAcl.getAclType() == ACLType.SHARED)
|
else if (existingAcl.getAclType() == ACLType.SHARED)
|
||||||
{
|
{
|
||||||
// nothing to do just cascade into the children - we most likely did a bulk set above.
|
// nothing to do just cascade into the children - we most likely did a bulk set above.
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user