mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-14 17:58:59 +00:00
Merged HEAD-BUG-FIX (5.1/Cloud) to HEAD (5.1/Cloud)
98900: Merged 5.0.N (5.0.2) to HEAD-BUG-FIX (5.1/Cloud) 98891: Merged V4.2-BUG-FIX (4.2.5) to 5.0.N (5.0.2) 98889: Reverse merged V4.1-BUG-FIX (4.1.10) << Caused a performance problem found in 5.0.1 testing >> Merged V4.1-BUG-FIX (4.1.10) to V4.2-BUG-FIX (4.2.5) 93762: Fix for MNT-13198 BM-0012: Run v420b1494_01: (CMIS) GetSites is Slow - use the bridge table to list sites. 93802: Fix for MNT-13198 BM-0012: Run v420b1494_01: (CMIS) GetSites is Slow - use hasSite to check for existence and fix person lookup case sensitivity configuration git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@98956 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -1210,26 +1210,22 @@ public class SiteServiceImpl extends AbstractLifecycleBean implements SiteServic
|
|||||||
{
|
{
|
||||||
final int maxResults = size > 0 ? size : 1000;
|
final int maxResults = size > 0 ? size : 1000;
|
||||||
final Set<String> siteNames = new TreeSet<String>();
|
final Set<String> siteNames = new TreeSet<String>();
|
||||||
|
authorityService.getContainingAuthoritiesInZone(AuthorityType.GROUP, userName, AuthorityService.ZONE_APP_SHARE, new AuthorityFilter(){
|
||||||
// MNT-13198 - use the bridge table
|
@Override
|
||||||
String actualUserName = personService.getUserIdentifier(userName);
|
public boolean includeAuthority(String authority)
|
||||||
if(actualUserName != null)
|
|
||||||
{
|
|
||||||
Set<String> containingAuthorities = authorityService.getContainingAuthorities(AuthorityType.GROUP, actualUserName, false);
|
|
||||||
for(String authority : containingAuthorities)
|
|
||||||
{
|
{
|
||||||
if (siteNames.size() < maxResults)
|
if (siteNames.size() < maxResults)
|
||||||
{
|
{
|
||||||
String siteName = resolveSite(authority);
|
String siteName = resolveSite(authority);
|
||||||
// MNT-10836 fix, after MNT-10109 we should also check site existence
|
// MNT-10836 fix, after MNT-10109 we should also check site existence
|
||||||
// A simple exists check would be better than getting the site properties etc - profiling suggests x2 faster
|
if (siteName == null || getSite(siteName) == null)
|
||||||
if ((siteName != null) && hasSite(siteName))
|
|
||||||
{
|
{
|
||||||
siteNames.add(siteName);
|
return false;
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
return siteNames.add(siteName);
|
||||||
}
|
}
|
||||||
|
return false;
|
||||||
|
}}, maxResults);
|
||||||
if (siteNames.isEmpty())
|
if (siteNames.isEmpty())
|
||||||
{
|
{
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
|
Reference in New Issue
Block a user