Page MenuHomePhorge

Upgrading kloud
Open, Unbreak Now!Public

Description

It's going alright, but going worse now...

Related Objects

StatusAssignedTask
Openkeithzg

Event Timeline

keithzg triaged this task as Unbreak Now! priority.Sun, Sep 15, 6:41 PM

Current error:

Internal Server Error

The server encountered an internal error and was unable to complete your request.
Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
More details can be found in the server log.
[Mon Sep 16 00:35:57.249808 2024] [php:error] [pid 649033] [client 184.70.164.246:45258] PHP Fatal error:  Uncaught Doctrine\\DBAL\\Exception: Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [2002] Connection refused in /mnt/kloud_storage_200gb/owncloud/lib/private/DB/Connection.php:147\nStack trace:\n#0 /mnt/kloud_storage_200gb/owncloud/3rdparty/doctrine/dbal/src/Connection.php(1531): OC\\DB\\Connection->connect()\n#1 /mnt/kloud_storage_200gb/owncloud/3rdparty/doctrine/dbal/src/Connection.php(1029): Doctrine\\DBAL\\Connection->getWrappedConnection()\n#2 /mnt/kloud_storage_200gb/owncloud/lib/private/DB/Connection.php(267): Doctrine\\DBAL\\Connection->executeQuery()\n#3 /mnt/kloud_storage_200gb/owncloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php(345): OC\\DB\\Connection->executeQuery()\n#4 /mnt/kloud_storage_200gb/owncloud/lib/private/DB/QueryBuilder/QueryBuilder.php(280): Doctrine\\DBAL\\Query\\QueryBuilder->execute()\n#5 /mnt/kloud_storage_200gb/owncloud/lib/private/AppConfig.php(421): OC\\DB\\QueryBuilder\\QueryBuilder->execute()\n#6 /mnt/kloud_storage_200gb/owncloud/lib/private/AppConfig.php(187): OC\\AppConfig->loadConfigValues()\n#7 /mnt/kloud_storage_200gb/owncloud/lib/private/AppConfig.php(377): OC\\AppConfig->getApps()\n#8 /mnt/kloud_storage_200gb/owncloud/lib/private/legacy/OC_App.php(803): OC\\AppConfig->getValues()\n#9 /mnt/kloud_storage_200gb/owncloud/lib/private/Server.php(737): OC_App::getAppVersions()\n#10 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(171): OC\\Server->OC\\{closure}()\n#11 /mnt/kloud_storage_200gb/owncloud/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\\AppFramework\\Utility\\SimpleContainer->OC\\AppFramework\\Utility\\{closure}()\n#12 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(138): Pimple\\Container->offsetGet()\n#13 /mnt/kloud_storage_200gb/owncloud/lib/private/ServerContainer.php(171): OC\\AppFramework\\Utility\\SimpleContainer->query()\n#14 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(65): OC\\ServerContainer->query()\n#15 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(193): OC\\AppFramework\\Utility\\SimpleContainer->get()\n#16 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(171): OC\\AppFramework\\Utility\\SimpleContainer->OC\\AppFramework\\Utility\\{closure}()\n#17 /mnt/kloud_storage_200gb/owncloud/3rdparty/pimple/pimple/src/Pimple/Container.php(118): OC\\AppFramework\\Utility\\SimpleContainer->OC\\AppFramework\\Utility\\{closure}()\n#18 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(138): Pimple\\Container->offsetGet()\n#19 /mnt/kloud_storage_200gb/owncloud/lib/private/ServerContainer.php(171): OC\\AppFramework\\Utility\\SimpleContainer->query()\n#20 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(65): OC\\ServerContainer->query()\n#21 /mnt/kloud_storage_200gb/owncloud/lib/private/Server.php(1131): OC\\AppFramework\\Utility\\SimpleContainer->get()\n#22 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(171): OC\\Server->OC\\{closure}()\n#23 /mnt/kloud_storage_200gb/owncloud/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\\AppFramework\\Utility\\SimpleContainer->OC\\AppFramework\\Utility\\{closure}()\n#24 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(138): Pimple\\Container->offsetGet()\n#25 /mnt/kloud_storage_200gb/owncloud/lib/private/ServerContainer.php(171): OC\\AppFramework\\Utility\\SimpleContainer->query()\n#26 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(65): OC\\ServerContainer->query()\n#27 /mnt/kloud_storage_200gb/owncloud/lib/private/Server.php(2091): OC\\AppFramework\\Utility\\SimpleContainer->get()\n#28 /mnt/kloud_storage_200gb/owncloud/lib/private/Files/View.php(108): OC\\Server->getLockingProvider()\n#29 /mnt/kloud_storage_200gb/owncloud/lib/private/Server.php(471): OC\\Files\\View->__construct()\n#30 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(171): OC\\Server->OC\\{closure}()\n#31 /mnt/kloud_storage_200gb/owncloud/3rdparty/pimple/pimple/src/Pimple/Container.php(122): OC\\AppFramework\\Utility\\SimpleContainer->OC\\AppFramework\\Utility\\{closure}()\n#32 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(138): Pimple\\Container->offsetGet()\n#33 /mnt/kloud_storage_200gb/owncloud/lib/private/ServerContainer.php(171): OC\\AppFramework\\Utility\\SimpleContainer->query()\n#34 /mnt/kloud_storage_200gb/owncloud/lib/private/AppFramework/Utility/SimpleContainer.php(65): OC\\ServerContainer->query()\n#35 /mnt/kloud_storage_200gb/owncloud/lib/private/Server.php(1493): OC\\AppFramework\\Utility\\SimpleContainer->get()\n#36 /mnt/kloud_storage_200gb/owncloud/lib/base.php(635): OC\\Server->boot()\n#37 /mnt/kloud_storage_200gb/owncloud/lib/base.php(1196): OC::init()\n#38 /mnt/kloud_storage_200gb/owncloud/ocs/v1.php(31): require_once('...')\n#39 /mnt/kloud_storage_200gb/owncloud/ocs/v2.php(23): require_once('...')\n#40 {main}\n  thrown in /mnt/kloud_storage_200gb/owncloud/lib/private/DB/Connection.php on line 147

ah, well

root@kloud:/var/www/owncloud# service mariadb status
× mariadb.service - MariaDB 10.6.18 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
    Drop-In: /etc/systemd/system/mariadb.service.d
             └─migrated-from-my.cnf-settings.conf
     Active: failed (Result: oom-kill) since Mon 2024-09-16 00:30:11 UTC; 11min ago
       Docs: man:mariadbd(8)
             https://mariadb.com/kb/en/library/systemd/
    Process: 1044 ExecStart=/usr/sbin/mariadbd $MYSQLD_OPTS $_WSREP_NEW_CLUSTER $_WSREP_START_POSITION (code=killed, signal=KILL)
   Main PID: 1044 (code=killed, signal=KILL)
     Status: "Taking your SQL requests now..."
        CPU: 1min 9.381s

Sep 15 02:00:57 kloud systemd[1]: /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf:7: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
Sep 15 02:00:57 kloud systemd[1]: /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf:8: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
Sep 15 02:00:58 kloud systemd[1]: /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf:7: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
Sep 15 02:00:58 kloud systemd[1]: /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf:8: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
Sep 15 02:00:58 kloud systemd[1]: /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf:7: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
Sep 15 02:00:58 kloud systemd[1]: /etc/systemd/system/mariadb.service.d/migrated-from-my.cnf-settings.conf:8: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
Sep 16 00:30:11 kloud systemd[1]: mariadb.service: A process of this unit has been killed by the OOM killer.
Sep 16 00:30:11 kloud systemd[1]: mariadb.service: Main process exited, code=killed, status=9/KILL
Sep 16 00:30:11 kloud systemd[1]: mariadb.service: Failed with result 'oom-kill'.
Sep 16 00:30:11 kloud systemd[1]: mariadb.service: Consumed 1min 9.381s CPU time.

Got Nextcloud to 27.1.11, latest is 29.0.7 with 30 in release candidates.

The recurring OOM killing of the database server isn't the only issue, alas. As reported to me by Val in Discord, https://kloud.keithzg.ca/pymusicleague/spotify_track_availability.php isn't working right:

<@230569237150826496> your availability tracker seems to not be working anymore. It keeps giving me responses saying songs I have access to are unavailable anywhere including Ireland

keithzg changed the visibility from "All Users" to "Public (No Login Required)".Sun, Sep 15, 10:11 PM

Hmmmm the immediate problem was I didn't have the tekore module installed, but when I install it then I get another error:

Traceback (most recent call last):
  File "/var/www/html/pymusicleague/./check_track_availability.py", line 36, in <module>
    track_id = track.asbuiltin()['id']
  File "/usr/local/lib/python3.10/dist-packages/pydantic/main.py", line 853, in __getattr__
    raise AttributeError(f'{type(self).__name__!r} object has no attribute {item!r}')
AttributeError: 'FullTrack' object has no attribute 'asbuiltin'

Maybe Tekore has changed their classes? Clearly I need to either update my Python logic accordingly, or just rewrite the checks in pure PHP myself.

Yeah, Tekore 4.6.1 worked but earlier 5.x versions didn't, I mean cheers to that project for actually taking semantic versioning seriously?

Current status:

Current version is 28.0.10.

Update to Nextcloud 29.0.7 available. (channel: "stable")

Currently:

Current version is 29.0.7.

Update to Nextcloud 30.0.0 available. (channel: "stable")

Yeah naw that's good, lets not jump right onto a .0.0 revision.

Probably time then to do another OS upgrade . . .