Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User page crashed while there are more than 3000 groups sync from LDAP #25371

Closed
joeyjy opened this issue Jul 6, 2016 · 4 comments
Closed

User page crashed while there are more than 3000 groups sync from LDAP #25371

joeyjy opened this issue Jul 6, 2016 · 4 comments

Comments

@joeyjy
Copy link

joeyjy commented Jul 6, 2016

Steps to reproduce

  1. Config LDAP settings
  2. Open /settings/users page
    3.

Expected behaviour

open successfully, scroll down and show more people and group

Actual behaviour

page crashed

Server configuration

Operating system: Centos7

Web server: Apache2.4.6

Database: mysql5.5

PHP version: 5.4

ownCloud version: (see ownCloud admin page) 9.0.1

Updated from an older ownCloud or fresh install: fresh

Where did you install ownCloud from:

Signing status (ownCloud 9.0 and above):

Login as admin user into your ownCloud and access 
http://example.com/index.php/settings/integrity/failed 
paste the results here.

List of activated apps:
Enabled:

  • activity: 2.2.1
  • comments: 0.2
  • dav: 0.1.6
  • encryption: 1.2.0
  • federatedfilesharing: 0.1.0
  • federation: 0.0.4
  • files: 1.4.4
  • files_pdfviewer: 0.8
  • files_sharing: 0.9.1
  • files_texteditor: 2.1
  • files_trashbin: 0.8.0
  • files_versions: 1.2.0
  • files_videoplayer: 0.9.8
  • gallery: 14.5.0
  • notifications: 0.2.3
  • provisioning_api: 0.4.1
  • systemtags: 0.2
  • templateeditor: 0.1
  • updatenotification: 0.1.0
  • user_cas: 1.1
  • user_ldap: 0.8.0
    Disabled:
  • external
  • files_external
  • firstrunwizard
  • user_external
  • user_shib
If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your ownCloud installation folder

The content of config/config.php:
{
"system": {
"instanceid": "ocsqodv3wcw7",
"passwordsalt": "_REMOVED SENSITIVE VALUE",
"secret": "_REMOVED SENSITIVE VALUE
",
"trusted_domains": [
"oc.cloud.corp.com",
"10.9.113.195",
"10.9.113.196"
],
"datadirectory": "/var/www/html/oc/data",
"overwrite.cli.url": "https://oc.cloud.corp.com",
"dbtype": "mysql",
"version": "9.0.1.3",
"dbname": "occlouddb",
"dbhost": "occloud.mysql.db.corp.com:55944",
"dbtableprefix": "oc_",
"dbuser": "_REMOVED SENSITIVE VALUE",
"dbpassword": "_REMOVED SENSITIVE VALUE
",
"logtimezone": "UTC",
"keysalt": "B25m5g87EacYjY",
"default_language": "zh_CN",
"objectstore": {
"class": "OC\Files\ObjectStore\Swift",
"arguments": {
"username": "swift",
"password": "_REMOVED SENSITIVE VALUE_",
"container": "systemdev",
"autocreate": true,
"region": "regionOne",
"url": "http://cloud.ops.corp.com:5000/v2.0",
"tenantName": "admin",
"serviceName": "swift",
"urlType": "internal"
}
},
"integrity.check.disabled": true,
"ldapIgnoreNamingRules": false,
"loglevel": 2,
"filelocking.enabled": true,
"memcache.distributed": "\OC\Memcache\Redis",
"memcache.locking": "\OC\Memcache\Redis",
"memcache.local": "\OC\Memcache\APC",
"redis": {
"host": "10.9.113.196",
"port": 6379,
"timeout": 0,
"password": ""
},
"asset-pipeline.enabled": true,
"installed": true
}
}

If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your ownCloud installation folder

or 

Insert your config.php content here
(Without the database password, passwordsalt and secret)

Are you using external storage, if yes which one: local/smb/sftp/... Ceph RGW

Are you using encryption: yes/no yes

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/... LDAP

LDAP configuration (delete this part if not used)

+-------------------------------+--------------------------------------------------------------------------------+
| Configuration | |
+-------------------------------+--------------------------------------------------------------------------------+
| hasMemberOfFilterSupport | 1 |
| hasPagedResultSupport | |
| homeFolderNamingRule | |
| lastJpegPhotoLookup | 0 |
| ldapAgentName | cn=sysdrive,ou=App_InActive,ou=Account,ou=LCM,dc=cn1,dc=global,dc=corp,dc=com |
| ldapAgentPassword | *** |
| ldapAttributesForGroupSearch | |
| ldapAttributesForUserSearch | |
| ldapBackupHost | |
| ldapBackupPort | |
| ldapBase | ou=上海,dc=cn1,dc=global,dc=corp,dc=com |
| ldapBaseGroups | ou=上海,dc=cn1,dc=global,dc=corp,dc=com |
| ldapBaseUsers | ou=上海,dc=cn1,dc=global,dc=corp,dc=com |
| ldapCacheTTL | 600 |
| ldapConfigurationActive | 1 |
| ldapDynamicGroupMemberURL | |
| ldapEmailAttribute | mail |
| ldapExperiencedAdmin | 0 |
| ldapExpertUUIDGroupAttr | |
| ldapExpertUUIDUserAttr | |
| ldapExpertUsernameAttr | |
| ldapGroupDisplayName | cn |
| ldapGroupFilter | (&(|(objectclass=group))) |
| ldapGroupFilterGroups | |
| ldapGroupFilterMode | 0 |
| ldapGroupFilterObjectclass | group |
| ldapGroupMemberAssocAttr | member |
| ldapHost | cn1.global.corp.com |
| ldapIgnoreNamingRules | |
| ldapLoginFilter | (&(&(|(objectclass=person)))(samaccountname=%uid)) |
| ldapLoginFilterAttributes | |
| ldapLoginFilterEmail | 0 |
| ldapLoginFilterMode | 0 |
| ldapLoginFilterUsername | 1 |
| ldapNestedGroups | 0 |
| ldapOverrideMainServer | |
| ldapPagingSize | 500 |
| ldapPort | 389 |
| ldapQuotaAttribute | |
| ldapQuotaDefault | |
| ldapTLS | 0 |
| ldapUserDisplayName | displayName |
| ldapUserDisplayName2 | |
| ldapUserFilter | (&(|(objectclass=person))) |
| ldapUserFilterGroups | |
| ldapUserFilterMode | 1 |
| ldapUserFilterObjectclass | person |
| ldapUuidGroupAttribute | auto |
| ldapUuidUserAttribute | auto |
| turnOffCertCheck | 0 |
| useMemberOfToDetectMembership | 1 |
+-------------------------------+--------------------------------------------------------------------------------+

With access to your command line run e.g.:
sudo -u www-data php occ ldap:show-config
from within your ownCloud installation folder

Without access to your command line download the data/owncloud.db to your local
computer or access your SQL server remotely and run the select query:
SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap';


Eventually replace sensitive data as the name/IP-address of your LDAP server or groups.

Client configuration

Browser: google chrome

Operating system: Window7 basic

Logs

Web server error log

Insert your webserver log here

ownCloud log (data/owncloud.log)

Insert your ownCloud log here

Browser log

Insert your browser log here, this could for example include:

a) The javascript console log
b) The network log 
c) ...

Hi OC,

Since my AD server contains large number of users and groups, I set users limit to 50 in the js, but is there also a way to limit groups so that I can open user page successfully? more than 3000 groups are appended to user page at the same time.

Thanks!

@Alex-Hou
Copy link

Alex-Hou commented Jul 6, 2016

Got the same issue.

@PVince81
Copy link
Contributor

PVince81 commented Jul 6, 2016

I just checked the code and there doesn't seem to be any pagination / limit logic in the GroupsController or Group\Metadata on the server side.

Also it's not only about the left side panel but also about all the group selection dropdowns for every user row.

Related issue / WIP PR: #20493 and #10994

@PVince81
Copy link
Contributor

PVince81 commented Jul 6, 2016

On a more general note, if you have a lot of users and groups, you should rather manage users / groups in LDAP directly and not in ownCloud.

Closing as duplicate of #9201

@PVince81 PVince81 closed this as completed Jul 6, 2016
@lock
Copy link

lock bot commented Aug 4, 2019

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@lock lock bot locked as resolved and limited conversation to collaborators Aug 4, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants