Webinterface broken after update to 26 beta 1

Support intro

Sorry to hear you’re facing problems :slightly_frowning_face:

help.nextcloud.com is for home/non-enterprise users. If you’re running a business, paid support can be accessed via portal.nextcloud.com where we can ensure your business keeps running smoothly.

In order to help you as quickly as possible, before clicking Create Topic please provide as much of the below as you can. Feel free to use a pastebin service for logs, otherwise either indent short log examples with four spaces:

example

Or for longer, use three backticks above and below the code snippet:

longer
example
here

Some or all of the below information will be requested if it isn’t supplied; for fastest response please provide as much as you can :heart:

Nextcloud version (eg, 20.0.5): 26.0 beta 1
Operating system and version (eg, Ubuntu 20.04): Debian 11 (Bullseye)
Apache or nginx version (eg, Apache 2.4.25): NginX 1.23.3
PHP version (eg, 7.4): 8.1

The issue you are facing:
After upgrading to NC26 beta1 I can’t access the WebUI anymore. Login screen is getting displayed, but after entering my credentials I get an HTTP error 500.
System is still sending notifications about new app versions via mail

Is this the first time you’ve seen this error? (Y/N): y

Steps to replicate it:

  1. upgrade from latest NC 25 to NC 26b1
  2. try to login

The output of your Nextcloud log in Admin > Logging:

(can't access that page)

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):

<?php
$CONFIG = array (
  'instanceid' => 'oczzuwbpg95u',
  'passwordsalt' => 'redacted',
  'secret' => 'redacted',
  'trusted_domains' => 
  array (
    0 => 'example.com,
    1 => 'cloud.example.com',
    2 => '192.168.xxx.*',
    3 => 'nextcloud.example.com',
  ),
  'datadirectory' => '/mnt/STOR/nextcloud-data',
  'dbtype' => 'mysql',
  'version' => '26.0.0.3',
  'overwrite.cli.url' => 'http://localhost',
  'dbname' => 'nextcloud',
  'dbhost' => 'localhost:/var/run/mysqld/mysqld.sock',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'mysql.utf8mb4' => true,
  'dbuser' => 'redacted',
  'dbpassword' => 'GoTryYourOwn',
  'installed' => true,
  'activity_expire_days' => 14,
  'auth.bruteforce.protection.enabled' => true,
  'blacklisted_files' => 
  array (
    0 => '.htaccess',
    1 => 'Thumbs.db',
    2 => 'thumbs.db',
  ),
  'cron_log' => true,
  'enable_previews' => true,
  'enabledPreviewProviders' => 
  array (
    0 => 'OC\\Preview\\PNG',
    1 => 'OC\\Preview\\JPEG',
    2 => 'OC\\Preview\\GIF',
    3 => 'OC\\Preview\\BMP',
    4 => 'OC\\Preview\\XBitmap',
    5 => 'OC\\Preview\\Movie',
    6 => 'OC\\Preview\\PDF',
    7 => 'OC\\Preview\\MP3',
    8 => 'OC\\Preview\\TXT',
    9 => 'OC\\Preview\\MarkDown',
  ),
  'filesystem_check_changes' => 1,
  'filelocking.enabled' => 'true',
  'htaccess.RewriteBase' => '/',
  'integrity.check.disabled' => false,
  'knowledgebaseenabled' => false,
  'logfile' => '/mnt/STOR/web/nextcloud-data/nextcloud.log',
  'loglevel' => 0,
  'logtimezone' => 'Europe/Berlin',
  'log_rotate_size' => 104857600,
  'maintenance' => false,
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'memcache.distributed' => '\\OC\\Memcache\\Redis',
  'redis' => 
  array (
    'host' => '/var/run/redis/redis-server.sock',
    'port' => 0,
    'timeout' => 0.0,
  ),
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'overwriteprotocol' => 'https',
  'preview_max_x' => 1024,
  'preview_max_y' => 768,
  'preview_max_scale_factor' => 1,
  'quota_include_external_storage' => false,
  'share_folder' => '/Shares',
  'skeletondirectory' => '',
  'theme' => '',
  'trashbin_retention_obligation' => 'auto, 7',
  'updater.release.channel' => 'beta',
  'mail_smtpmode' => 'sendmail',
  'mail_sendmailmode' => 'pipe',
  'mail_from_address' => 'nextcloud',
  'mail_domain' => 'schorers.org',
  'mail_smtpauthtype' => 'LOGIN',
  'mail_smtpauth' => 1,
  'mail_smtphost' => 'example.com',
  'mail_smtpport' => '587',
  'mail_smtpname' => 'user@example.com',
  'mail_smtppassword' => 'redacted',
  'mail_smtpsecure' => 'tls',
  'default_phone_region' => 'DE',
  'app_install_overwrite' => 
  array (
    0 => 'dicomviewer',
    1 => 'files_mindmap',
    2 => 'carnet',
    3 => 'onlyoffice',
    4 => 'richdocuments',
    5 => 'richdocumentscode',
    6 => 'documentserver_community',
    7 => 'files_photospheres',
    8 => 'telephoneprovider',
    9 => 'audioplayer',
    10 => 'audioplayer_editor',
    11 => 'extract',
    12 => 'tasks',
    13 => 'ocsms',
    14 => 'files_trackdownloads',
    15 => 'ocdownloader',
    16 => 'twofactor_u2f',
    17 => 'checksum',
    18 => 'event_update_notification',
    19 => 'mindmap_app',
    20 => 'contacts',
    21 => 'deck',
    22 => 'spreed',
    23 => 'twofactor_webauthn',
  ),
  'has_rebuilt_cache' => true,
);

The output of your Apache/nginx/system log in /var/log/nginx/nextcloud-access.log:

80.147.124.105 - - [03/Feb/2023:09:26:57 +0100] "POST /login HTTP/2.0" 500 0 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36"

/var/log/nginx/nextcloud-error.log:

2023/02/03 09:26:31 [error] 29962#29962: *10524 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Declaration of OCA\Deck\Db\RelationalEntity::markFieldUpdated($attribute) must be compatible with OCP\AppFramework\Db\Entity::markFieldUpdated(string $attribute): void in /var/www/nextcloud/apps/deck/lib/Db/RelationalEntity.php on line 56" while reading response header from upstream, client: 80.147.124.105, server: cloud.example.com, request: "POST /login HTTP/2.0", upstream: "fastcgi://unix:/run/php/php8.1-fpm.sock:", host: "cloud.example.com"
2023/02/03 09:26:57 [error] 29962#29962: *10524 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Declaration of OCA\Deck\Db\RelationalEntity::markFieldUpdated($attribute) must be compatible with OCP\AppFramework\Db\Entity::markFieldUpdated(string $attribute): void in /var/www/nextcloud/apps/deck/lib/Db/RelationalEntity.php on line 56" while reading response header from upstream, client: 80.147.124.105, server: cloud.example.com, request: "POST /login HTTP/2.0", upstream: "fastcgi://unix:/run/php/php8.1-fpm.sock:", host: "cloud.example.com"

Same error is thrown when trying to upgrade manually to next beta release from the command line:

sudo -u www-data php8.1 occ upgrade
PHP Fatal error:  Declaration of OCA\Deck\Db\RelationalEntity::markFieldUpdated($attribute) must be compatible with OCP\AppFramework\Db\Entity::markFieldUpdated(string $attribute): void in /var/www/nextcloud/apps/deck/lib/Db/RelationalEntity.php on line 56

Or any other manual invocation of the occ tool.

Any hints on how to solve that?

Use your backup to get back to your working system.

Looks like a issue in Deck, try to disable the deck app via occ

How can I do that?
Tried doing it with the occ command, but that failed with the error given above.

So occ app:disable deck does not work?

Nope:

sudo -u www-data php8.1 occ app:disable deck
PHP Fatal error:  Declaration of OCA\Deck\Db\RelationalEntity::markFieldUpdated($attribute) must be compatible with OCP\AppFramework\Db\Entity::markFieldUpdated(string $attribute): void in /var/www/nextcloud/apps/deck/lib/Db/RelationalEntity.php on line 56

Edit:
Deleted the apps/deck directory and then unpacked the official deck.tar.gz from Github. After fixing ownership and permissions I again invoked the command above - same result.

Did you download it from the release page? This is the same version as the App Store, so unless you build directly from git, there’s no change.

But I think your error is this: Update signature of Entity::markFieldUpdated · nextcloud/deck@96e9571 · GitHub

You can apply it as a patch https://github.com/nextcloud/deck/pull/4398.patch

1 Like

Yeah, that’s what I did, just to make sure there was no unpack error during the upgrade.

That fix did the trick - after restarting php8.1-fpm the WebUI works just fine again. Thanks a million!

Cool :+1: thanks for testing the beta!

Hi there! Not sure if it’s useful, but I just applied this fix on my beta instance, but with php8.2- the fix repaired my web interface.