Skip to content

[Bug]: Moving or copy a file dialog uses too much ressources #48951

@xundeenergie

Description

@xundeenergie

⚠️ This issue respects the following points: ⚠️

Bug description

I run my nextcloud 30.0.0 on a zimablade with 4 cores and 12GB RAM on a SSD.

when i try to move/copy a file, there is a dialog for the destination. Dies Dialog is very, very slow and sometimes it says the dest is empty (but i know, there are subdirectories and files in it).

So i investigated a lot.

I set pm.max_children in php up to 250. Watching the php-logfile shows, that php-processes increase up to this number.
Also database-connections run out of configured max_connections. Even with pgbouncer (i run postgresql as database).
Also ps shows the maximum configured pm.max_childres number of php-fpm processes.

When the folder is opened in the dialog, the connections to database decrease. Until i open the next subfolder.

In Case of this screenshot you see, i've configures pm.max_children to 80. And exact 80 php-fpm processes are created (just before opening the subdir there have been 9 php-fpm processes). The dialog stuck on the greyed out template-entries for more than a minute.

Image

is it really necessary to use SO MUCH ressources for just opening an overview for a subdir in php?

Steps to reproduce

  1. Mark a file for moving/copying to another location
  2. Open home in dialog
  3. Open some subdir and again a subdir in a choosen one.
  4. Watch php-fpm processes and db-connections all the time.

Expected behavior

Open the overview for the subdir quick.
Do only need less ressources for opening a subdir in dialog.

Nextcloud Server version

30

Operating system

Debian/Ubuntu

PHP engine version

PHP 8.3

Web server

Nginx

Database engine version

PostgreSQL

Is this bug present after an update or on a fresh install?

None

Are you using the Nextcloud Server Encryption module?

Encryption is Disabled

What user-backends are you using?

  • Default user-backend (database)
  • LDAP/ Active Directory
  • SSO - SAML
  • Other

Configuration report

{
"system": {
"instanceid": "REMOVED SENSITIVE VALUE",
"passwordsalt": "REMOVED SENSITIVE VALUE",
"secret": "REMOVED SENSITIVE VALUE",
"trusted_domains": [
"nc.home.arpa",
"nc.schuerz.at"
],
"trusted_proxies": "REMOVED SENSITIVE VALUE",
"maintenance_window_start": 5,
"default_phone_region": "AT",
"datadirectory": "REMOVED SENSITIVE VALUE",
"version": "30.0.0.14",
"overwrite.cli.url": "https://nc.schuerz.at",
"overwriteprotocol": "https",
"dbtype": "pgsql",
"dbname": "REMOVED SENSITIVE VALUE",
"dbuser": "REMOVED SENSITIVE VALUE",
"dbpassword": "REMOVED SENSITIVE VALUE",
"dbhost": "REMOVED SENSITIVE VALUE",
"dbport": "6432",
"dbtableprefix": "oc_",
"installed": true,
"loglevel": 2,
"logfile": "/var/log/nextcloud/nextcloud.log",
"debug": false,
"memories.db.triggers.fcu": true,
"memories.exiftool": "/var/www/nextcloud/apps/memories/bin-ext/exiftool-amd64-glibc",
"memories.vod.path": "/var/www/nextcloud/apps/memories/bin-ext/go-vod-amd64",
"app_install_overwrite": [
"forms",
"maps"
],
"allow_user_to_change_display_name": false,
"lost_password_link": "disabled",
"oidc_login_client_id": "nc-schuerz-at",
"oidc_login_client_secret": "Uh3tZKcAIsGP2zTqqrudUwIyJKlAURYN",
"oidc_login_provider_url": "https://kc.schuerz.at/realms/schuerz_at",
"oidc_login_end_session_redirect": true,
"oidc_login_logout_url": "https://nc.schuerz.at",
"oidc_login_auto_redirect": true,
"oidc_login_redir_fallback": false,
"oidc_login_disable_registration": false,
"oidc_login_button_text": "Log in with OpenID SCHUERZ.AT",
"oidc_login_hide_password_form": false,
"oidc_login_attributes": {
"id": "preferred_username",
"name": "name",
"mail": "email",
"groups": "ownCloudGroups",
"is_admin": "ownCloudAdmin",
"login_filter": "ownCloudGroups"
},
"oidc_login_scope": "openid profile email",
"oidc_login_filter_allowed_values": [
"perm-app-nextcloud_admins",
"perm-app-nextcloud_users"
],
"oidc_create_groups": true,
"mail_from_address": "REMOVED SENSITIVE VALUE",
"mail_smtpmode": "smtp",
"mail_sendmailmode": "smtp",
"mail_domain": "REMOVED SENSITIVE VALUE",
"mail_smtphost": "REMOVED SENSITIVE VALUE",
"mail_smtpport": "25",
"memcache.local": "\OC\Memcache\APCu",
"memcache.distributed": "\OC\Memcache\Redis",
"memcache.locking": "\OC\Memcache\Redis",
"redis": {
"host": "REMOVED SENSITIVE VALUE",
"port": 0
},
"maintenance": false,
"memories.vod.ffmpeg": "/usr/bin/ffmpeg",
"memories.vod.ffprobe": "/usr/bin/ffprobe",
"memories.gis_type": 2,
"enabledPreviewProviders": [
"OC\Preview\MP3",
"OC\Preview\TXT",
"OC\Preview\MarkDown",
"OC\Preview\OpenDocument",
"OC\Preview\Krita",
"OC\Preview\Imaginary"
],
"preview_imaginary_url": "REMOVED SENSITIVE VALUE",
"preview_format": "webp"
}
}

List of activated Apps

Enabled:

  • activity: 3.0.0
  • bruteforcesettings: 3.0.0
  • calendar: 5.0.1
  • cfg_share_links: 6.1.1
  • circles: 30.0.0-dev
  • cloud_federation_api: 1.13.0
  • comments: 1.20.1
  • contacts: 6.1.0
  • contactsinteraction: 1.11.0
  • cookbook: 0.11.2
  • cospend: 2.0.0
  • dav: 1.31.1
  • deck: 1.14.1
  • event_update_notification: 2.5.0
  • federatedfilesharing: 1.20.0
  • federation: 1.20.0
  • files: 2.2.0
  • files_bpm: 1.5.0
  • files_downloadactivity: 1.17.0
  • files_downloadlimit: 3.0.0
  • files_external: 1.22.0
  • files_pdfviewer: 3.0.0
  • files_reminders: 1.3.0
  • files_sharing: 1.22.0
  • files_trashbin: 1.20.1
  • files_versions: 1.23.0
  • fileslibreofficeedit: 2.0.1
  • firstrunwizard: 3.0.0
  • forms: 4.3.2
  • gpoddersync: 3.10.0
  • gpxpod: 7.0.4
  • groupfolders: 18.0.3
  • integration_excalidraw: 2.2.0
  • libresign: 10.0.2
  • logreader: 3.0.0
  • lookup_server_connector: 1.18.0
  • maps: 1.4.0
  • memories: 7.4.1
  • music: 2.0.1
  • nextcloud_announcements: 2.0.0
  • nextpod: 0.7.6
  • notes: 4.11.0
  • notifications: 3.0.0
  • oauth2: 1.18.1
  • oidc_login: 3.2.0
  • ownershiptransfer: 1.0.1
  • ownpad: 0.12.0
  • password_policy: 2.0.0
  • photos: 3.0.2
  • polls: 7.2.4
  • previewgenerator: 5.6.0
  • privacy: 2.0.0
  • provisioning_api: 1.20.0
  • quota_warning: 1.20.0
  • recognize: 8.1.1
  • recommendations: 3.0.0
  • related_resources: 1.5.0
  • serverinfo: 2.0.0
  • settings: 1.13.0
  • sharebymail: 1.20.0
  • snappymail: 2.38.2
  • support: 2.0.0
  • survey_client: 2.0.0
  • systemtags: 1.20.0
  • tasks: 0.16.1
  • text: 4.1.0
  • theming: 2.5.0
  • twofactor_backupcodes: 1.19.0
  • updatenotification: 1.20.0
  • user_status: 1.10.0
  • viewer: 3.0.0
  • weather_status: 1.10.0
  • webhook_listeners: 1.1.0-dev
  • whiteboard: 1.0.4
  • workflow_script: 1.15.0
  • workflowengine: 2.12.0
    Disabled:
  • admin_audit: 1.20.0
  • dashboard: 7.10.0 (installed 7.10.0)
  • encryption: 2.18.0
  • suspicious_login: 8.0.0
  • twofactor_nextcloud_notification: 4.0.0
  • twofactor_totp: 12.0.0-dev (installed 12.0.0-dev)
  • user_ldap: 1.21.0

Nextcloud Signing status

No errors have been found.

Nextcloud Logs

No response

Additional info

I recognized this behaviour since many nextcloud-versions. But now i run a new one on a small zimablade-box. Not it is relevant for performance.
And i think, there is some bad looping on opening/reading the content of the foldert in the move/copy-dialog.

Metadata

Metadata

Assignees

No one assigned

    Labels

    0. Needs triagePending check for reproducibility or if it fits our roadmap30-feedbackbug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions