The Basics
- Nextcloud Server version (e.g., 29.x.x):
32.latest > 33.0.0
- Operating system and version (e.g., Ubuntu 24.04):
Uberspace7 (some CentOS)
- Web server and version (e.g, Apache 2.4.25):
Apache (not relevant)
- Reverse proxy and version _(e.g. nginx 1.27.2)
nginx (not relevant)
- PHP version (e.g, 8.3):
8.3.8
- Is this the first time you’ve seen this error? (Yes / No):
yes
- When did this problem seem to first start?
after automated updater does the update to 33.0
- Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
- Are you using CloudfIare, mod_security, or similar? (Yes / No)
no
Summary of the issue you are facing:
Nextcloud got stuck in maintenance mode (I think) because of the changes by @ernolf (hi
)
Steps to replicate it (hint: details matter!):
-
click an Uberspace U7
-
install NC 32
-
update to NC33
-
get stuck
Log entries
Nextcloud
~]$ php occ upgrade
Setting log level to debug
Updating database schema
Updated database
An unhandled exception has been thrown:
Error: Undefined constant "CURL_HTTP_VERSION_2TLS" in /var/www/virtual/cloudev/html/lib/private/Http/Client/Client.php:62
Stack trace:
#0 /var/www/virtual/user/html/lib/private/Http/Client/Client.php(219): OC\Http\Client\Client->buildRequestOptions(Array)
#1 /var/www/virtual/user/html/lib/private/App/AppStore/Fetcher/Fetcher.php(92): OC\Http\Client\Client->get('https://apps.ne...', Array)
#2 /var/www/virtual/user/html/lib/private/App/AppStore/Fetcher/AppFetcher.php(56): OC\App\AppStore\Fetcher\Fetcher->fetch('', '')
#3 /var/www/virtual/user/html/lib/private/App/AppStore/Fetcher/Fetcher.php(170): OC\App\AppStore\Fetcher\AppFetcher->fetch('', '', false)
#4 /var/www/virtual/user/html/lib/private/App/AppStore/Fetcher/AppFetcher.php(157): OC\App\AppStore\Fetcher\Fetcher->get(false)
#5 /var/www/virtual/user/html/lib/private/Installer.php(379): OC\App\AppStore\Fetcher\AppFetcher->get(false)
#6 /var/www/virtual/user/html/lib/private/Updater.php(379): OC\Installer->isUpdateAvailable('activity')
#7 /var/www/virtual/user/html/lib/private/Updater.php(242): OC\Updater->upgradeAppStoreApps(Array)
#8 /var/www/virtual/user/html/lib/private/Updater.php(100): OC\Updater->doUpgrade('33.0.0.16', '32.0.6.1')
#9 [...]
My Workaround
Change lib/private/Http/Client/Client.php
\CURLOPT_HTTP_VERSION => \CURL_HTTP_VERSION_2TLS,
to
\CURLOPT_HTTP_VERSION => \CURL_HTTP_VERSION_NONE,
then rerun
php occ update
and
php occ maintenance:mode --off
then turn off the auto updater and just do manual updates (with that hack as shown before) as long as this issue persists
or use a backup to return to NC32, turn off automated updates and only use NC32.x.x updates