nextcloud / nextcloud/viewer

[Bug]: Client interface freezes after opening and processing an image

Open
#2,105 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

0. Needs triage bug feature: editor
Dominant language
JavaScript
Stars
119
Forks
72
Avg merge
18h 42m
Merged PRs (30d)
24

Description

⚠️ This issue respects the following points: ⚠️
Bug description

After opening and processing an image, one has to wait a long while before one can continue acting with Nextcloud.

Steps to reproduce
  1. Go into Files!
  2. Open an image!
  3. Go into editing mode!
  4. Rotate the image!
  5. Save changes!
  6. Change to another tab for a while!
  7. Return to Nextcloud!
  8. Try to move the image or click the close button! Experience frustration as that change would take effect after a few minutes and sometimes the whole page freezes!
Expected behavior

There would be no sensible time delay between giving the closing or moving command and the effect.

Installation method

Community Manual installation with Archive

Nextcloud Server version

27

Operating system

Debian/Ubuntu

PHP engine version

PHP 8.2

Web server

Apache (supported)

Database engine version

MariaDB

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

Updated from a MINOR version (ex. 22.1 to 22.2)

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***",
        "overwrite.cli.url": "https:\/\/nextcloud.ons.ee\/",
        "overwriteprotocol": "https",
        "htaccess.RewriteBase": "\/",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "nextcloud.ons.ee"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "27.1.5.1",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": 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": "587",
        "mail_smtpauth": 1,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "memcache.local": "\\OC\\Memcache\\Redis",
        "filelocking.enabled": true,
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 6379,
            "timeout": 0,
            "dbindex": 0
        },
        "default_phone_region": "EE",
        "app_install_overwrite": [
            "weather",
            "mindmap_app"
        ],
        "maintenance": false,
        "theme": "",
        "loglevel": 2
    }
}
List of activated Apps
Enabled:
  - activity: 2.19.0
  - calendar: 4.6.0
  - circles: 27.0.1
  - cloud_federation_api: 1.10.0
  - comments: 1.17.0
  - contacts: 5.5.0
  - contactsinteraction: 1.8.0
  - dashboard: 7.7.0
  - dav: 1.27.0
  - deck: 1.11.2
  - emlviewer: 1.0.8
  - federatedfilesharing: 1.17.0
  - federation: 1.17.0
  - files: 1.22.0
  - files_mindmap: 0.0.30
  - files_pdfviewer: 2.8.0
  - files_reminders: 1.0.0
  - files_rightclick: 1.6.0
  - files_sharing: 1.19.0
  - files_trashbin: 1.17.0
  - files_versions: 1.20.0
  - firstrunwizard: 2.16.0
  - forms: 3.4.3
  - groupfolders: 15.3.2
  - health: 2.2.2
  - logreader: 2.12.0
  - lookup_server_connector: 1.15.0
  - mail: 3.5.0
  - nextcloud_announcements: 1.16.0
  - notes: 4.9.1
  - notifications: 2.15.0
  - oauth2: 1.15.1
  - onlyoffice: 8.2.4
  - password_policy: 1.17.0
  - photos: 2.3.0
  - privacy: 1.11.0
  - provisioning_api: 1.17.0
  - recognize: 5.0.3
  - recommendations: 1.6.0
  - registration: 2.2.0
  - related_resources: 1.2.0
  - serverinfo: 1.17.0
  - settings: 1.9.0
  - sharebymail: 1.17.0
  - spreed: 17.1.4
  - support: 1.10.0
  - survey_client: 1.15.0
  - systemtags: 1.17.0
  - tasks: 0.15.0
  - text: 3.8.0
  - theming: 2.2.0
  - twofactor_backupcodes: 1.16.0
  - updatenotification: 1.17.0
  - user_status: 1.7.0
  - viewer: 2.1.0
  - weather_status: 1.7.0
  - workflowengine: 2.9.0
Disabled:
  - admin_audit: 1.17.0
  - bruteforcesettings: 2.7.0
  - encryption: 2.15.0
  - files_external: 1.19.0
  - richdocuments: 8.2.3 (installed 8.2.3)
  - suspicious_login: 5.0.0
  - twofactor_totp: 9.0.0
  - user_ldap: 1.17.0
  - weather: 1.7.7
Nextcloud Signing status
https://nextcloud.ons.ee/index.php/settings/integrity/failed
Nextcloud Logs
Info	updater	\OC\Updater::resetLogLevel: Reset log level to Warning(2)		2023-12-15T17:47:03+0200
Info	updater	\OC\Updater::maintenanceDisabled: Turned off maintenance mode		2023-12-15T17:47:03+0200
Info	updater	\OC\Updater::updateEnd: Update successful		2023-12-15T17:47:03+0200
Info	updater	\OC\Updater::finishedCheckCodeIntegrity: Finished code integrity check		2023-12-15T17:47:03+0200
Info	updater	\OC\Updater::startCheckCodeIntegrity: Starting code integrity check...		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add language model tasks cleanup job		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add possibly missing system config		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Clean up abandoned apps		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add token cleanup job		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add background job to set the lookup server share state for users		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Repair DAV shares		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Queue a one-time job to check for user uploaded certificates		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add job to cleanup the bruteforce entries		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Remove old dashboard app config data		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Check encryption key format		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Keep legacy encryption enabled		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Reset generated avatar flag		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Clear access cache of projects		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: No need to remove link shares.		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Remove potentially over exposing share links		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add background job to cleanup login flow v2 tokens		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Cleanup invalid photocache files for carddav		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Queue a one-time job to cleanup old backups of the updater		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add preview background cleanup job		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Clear every generated avatar		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: JS cache cleared		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: Image cache cleared		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Clear frontend caches		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add log rotate job		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Repair language codes		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: No mounts updated		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Fix potential broken mount points		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: Delete clients (and their related access tokens) with the redirect_uri starting with oc:// or ending with *		2023-12-15T17:46:50+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: Update the oauth2_clients table schema.		2023-12-15T17:46:49+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: Update the oauth2_access_tokens table schema.		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Migrate oauth2_clients table to nextcloud schema		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add preview cleanup background jobs		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: Repair step already executed		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Add move avatar background job		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: .step file moved to .step-previous-update		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: .step-previous-update removed		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: .step file exists		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Move .step file of updater to backup location		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Repair invalid shares		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: 0 tags with no entries have been removed.		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: 0 tag entries for deleted tags have been removed.		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: 0 tags for delete files have been removed.		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairInfoEvent: Repair info: 0 tags of deleted users have been removed.		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Clean tags and favorites		2023-12-15T17:46:48+0200
Info	updater	OC\Repair\Events\RepairStepEvent: Repair step: Repair mime types		2023-12-15T17:46:48+0200
Additional info

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source files or tests are named. First reproduce the Files viewer flow: open an image, rotate and save it, switch tabs, then try closing or moving it while observing browser performance and network activity. Done means those actions respond without a long delay or page freeze.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.