After updating to Nextcloud 14.0.4: -> PHP Fatal Error (IEventLogger Interface missing)

Hello everyone!

After upgrading Nextcloud my whole Nextcloud server is broken. The problem is quite complicated because i can’t even run occ commands anymore.

System Information:
Nextcloud version (14.0.4)
Operating system (Debian)
Apache version (Apache/2.4.25 (Raspbian))
PHP version (7.3)

Things i have done

  1. Change Web-server from Lighttpd to Apache 2
  2. Rebooted Server
  3. Checked other PHP-Sites (all of them are working)
  4. Checked Web-server (working well)
  5. Installed Upgrades (update and upgrade)
  6. Checked permissions in the Main folder
  7. Googled a long time (found nothing :sweat_smile:)

Is this the first time you’ve seen this error? (Y)

Steps to replicate it:

  1. Update Nextcloud from 14.0.3 -> 14.0.4

I would be very thankful if you could help me (and others who got the same problem) :grin:

Different Logs:

Error_Log (apache2):

[Mon Dec 03 12:32:58.043714 2018] [php7:warn] [pid 8835] [client XXX:XXX:XXX:XXXX] PHP Warning:  include(/var/www/html/nextcloud/lib/composer/composer/../../../lib/public/Diagnostics/IEventLogger.php): failed to open stream: No such file or directory in /var/www/html/nextcloud/lib/composer/composer/ClassLoader.php on line 444
[Mon Dec 03 12:32:58.043897 2018] [php7:warn] [pid 8835] [client XXX:XXX:XXX:XXXX] PHP Warning:  include(): Failed opening '/var/www/html/nextcloud/lib/composer/composer/../../../lib/public//Diagnostics/IEventLogger.php' for inclusion (include_path='/var/www/html/nextcloud/3rdparty/pear/archive_tar:/var/www/html/nextcloud/3rdparty/pear/console_getopt:/var/www/html/nextcloud/3rdparty/pear/pear-core-minimal/src:/var/www/html/nextcloud/3rdparty/pear/pear_exception:/var/www/html/nextcloud/apps') in /var/www/html/nextcloud/lib/composer/composer/ClassLoader.php  on line 444
[Mon Dec 03 12:32:58.043975 2018] [php7:error] [pid 8835] [client 31.18.252.220:8522] PHP Fatal error:  Interface 'OCP\\Diagnostics\\IEventLogger' not found in /var/www/html/nextcloud/lib/private/Diagnostics/EventLogger.php on line 29
Nextcloud Config:
<?php
$CONFIG = array (
  'instanceid' => 'fdsgfsgfsgrewtrewtrewtrewtrewterwtrewtrewtrewtewt',
  'passwordsalt' => 'fdsgfsgfsgrewtrewtrewtrewtrewterwtrewtrewtrewtewt',
  'secret' => 'fdsgfsgfsgrewtrewtrewtrewtrewterwtrewtrewtrewtewt',
  'trusted_domains' => 
  array (
    0 => 'myDomain(working)',
  ),
  'datadirectory' => '/media/hdd1/nextcloud',
  'dbtype' => 'mysql',
  'version' => '14.0.4.2',
  'overwrite.cli.url' => '[working]',
  'dbname' => 'nextclouddb',
  'dbhost' => 'localhost:XXXX',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => 'XXXXXXXXXXXXXX',
  'dbpassword' => 'XXXXXXXXXXXXXX',
  'installed' => true,
  'mail_from_address' => 'XXXXXXXXXXXXXX',
  'mail_smtpmode' => 'XXXXXXXXXXXXXX',
  'mail_domain' => 'XXXXXXXXXXXXXX',
  'mail_smtpauthtype' => 'LOGIN',
  'mail_smtpauth' => 1,
  'mail_smtpsecure' => 'ssl',
  'mail_smtphost' => 'XXXXXXXXXXXXXX',
  'mail_smtpport' => 'XXXXXXXXXXXXXX',
  'mail_smtpname' => 'XXXXXXXXXXXXXX',
  'mail_smtppassword' => 'XXXXXXXXXXXXXX',
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'redis' => 
  array (
    'host' => 'localhost',    
    'port' => XXXX,
  ),
  'maintenance' => false,
  'updater.secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
  'theme' => '',
  'loglevel' => 2,
);

I would start by restoring the backup you surely created before doing the upgrade (you did a backup right?).

Yeah unfortunately i have to do so.
After downgrading everything it works again.

"Never change a running system"

So obviously something failed during the upgrade. I prefer to use the command line upgrade utility so I can see what’s happening and it makes it easier to troubleshoot if there are problems. Just run sudo -u www-data php /var/www/nextcloud/updater/updater.phar to initiate it.