Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nextcloud 25 Support #1531

Closed
1 task done
sunjam opened this issue Aug 12, 2022 · 35 comments
Closed
1 task done

Nextcloud 25 Support #1531

sunjam opened this issue Aug 12, 2022 · 35 comments
Assignees
Labels
has-updates roadmap Used for tickets that are meant to document the state of milestones/features internally

Comments

@sunjam
Copy link

sunjam commented Aug 12, 2022

For internal testing and notes. Do not expect support!!!!!! Please do report testing issues here.
First beta of 25 released as of 8/12.

10/19/2022 First stable released. See Deck error listed above.
Nextcloud Maintenance and release schedule
Here are overall Nextcloud 25 milestones on Github

  • NextcloudPi app .001 shows as "untested" but works fine once enabled on beta7.
@theCalcaholic theCalcaholic self-assigned this Aug 13, 2022
@sunjam
Copy link
Author

sunjam commented Sep 20, 2022

Running nc-update-nextcloud
Current   Nextcloud version 24.0.3.2
Available Nextcloud version 25.0.0.beta7
Download Nextcloud 25.0.0.beta6...
Error downloading
Clean up...
Done. Press any key...

Download fails when attempting to update to any beta of 25 from ncp-config or 4443

For some reason the update menu "This Nextcloud is up to date" is not displayed in 24.0.3 or 24.0.5 on the Docker image from NextcloudPi.

Successfully upgraded directly to 25.0.0beta7 from the command interface.

sudo -u www-data ./occ config:system:set updater.release.channel --value="beta"
sudo -u www-data php ./occ upgrade
sudo -u www-data php /var/www/nextcloud/updater/updater.phar

@theCalcaholic
Copy link
Collaborator

Thanks for testing!

I think the ncp updater doesn't understand versions that consist of anything else than 3 numbers separated by dots. That's why it's failing.
The update option in the NC GUI is deliberately hidden, because it's dangerous to use the NC updater - if you update via ncp-config or autoupdates instead, ncp can rollback if anything bad happens

@sunjam
Copy link
Author

sunjam commented Sep 22, 2022

Interesting, that functionality was previously available to at least tell you "Your Nextcloud is the latest release" with a green check mark. I understand that in the end it isn't strictly ncp related. Thanks for the clarification.

@theCalcaholic
Copy link
Collaborator

It's basically a specific nextcloud app that has been disabled

@sunjam
Copy link
Author

sunjam commented Sep 22, 2022

As if by magic, the built-in Updater works again. I am unsure of why it wasn't rendering, but it certainly works now. 🍾
image

@theCalcaholic
Copy link
Collaborator

The magic is you updating NC manually :D
ncp's updater disables the NC update app after completing the update

@sunjam
Copy link
Author

sunjam commented Sep 22, 2022

Running nc-update-nextcloud
Current   Nextcloud version 25.0.0.12
Available Nextcloud version 25.0.0rc1
/usr/local/etc/library.sh: line 408: [: 0rc1: integer expression expected

Resolved by switching from beta to stable and then back to beta branch for upgrades.

After installing 25.0.0rc1

The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running "occ db:add-missing-indices" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster.

    Missing index "preferences_app_key" in table "oc_preferences".
    Missing index "mounts_class_index" in table "oc_mounts".

Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running "occ db:convert-filecache-bigint" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read [the documentation page about this ↗](https://docs.nextcloud.com/server/25/go.php?to=admin-bigint-conversion).

    file_metadata.id
  • added this bug to top post, with link to it on the server repo

@sunjam
Copy link
Author

sunjam commented Oct 8, 2022

Edit: this is all on ncp-internal-arm64:3146515542
Changing back to latest. Disregard this post if it isn't helpful.

Upgrade to 25.0.0rc3 fails with Segmentation fault (core dumped) from 24.0.6

/usr/local/bin/ncc: line 3: 1664079 Segmentation fault ${SUDO} php /var/www/nextcloud/occ "$@"

https://bin.disroot.org/?28fe9b9c4eceb513#F6KJ66JMruLyKss5MSVeqJCFfza1rt6hTcQFtADYyJ73
https://bin.disroot.org/?da3cb5397c520f23#5wuvjEu6utzyx89Uy6dcQkXH582hpMDAx1EDsr7At3Ay

NextcloudPi fails to understand it can update from 24.0.5 to 25.0.0rc3, so:

  • Switch branch to beta
  • Update from 24.0.5 to 24.0.6
  • Switch branch to stable
  • Switch branch to beta
  • Update from 24.0.6 to 25.0.0rc3 become available

Interesting, update process works from a fresh container. Wasn't able to reproduce the segmentation fault.
https://bin.disroot.org/?51421b62908b3561#F3tFoXTCE8WH5EwhfFwwoK2hWo7EVpZj7qYQoxZSQi3B

@sirdrakeistda
Copy link

@sunjam Have you fixed the segmentation fault? There is a similar issue with this: #1615
If you have any idea how to fix it would be nice to get some information. The error happened for me with NC24.0.6, so this doesn't seem to be only related to NC25 beta. Is it possible to be related to the php7.4 -> php8.1 update? Maybe thats the reason it can't be reproduced with a fresh container because the fresh container might have already php8.1.

@theCalcaholic
Copy link
Collaborator

Edit: this is all on ncp-internal-arm64:3146515542 Changing back to latest. Disregard this post if it isn't helpful.

Upgrade to 25.0.0rc3 fails with Segmentation fault (core dumped) from 24.0.6

/usr/local/bin/ncc: line 3: 1664079 Segmentation fault ${SUDO} php /var/www/nextcloud/occ "$@"

https://bin.disroot.org/?28fe9b9c4eceb513#F6KJ66JMruLyKss5MSVeqJCFfza1rt6hTcQFtADYyJ73 https://bin.disroot.org/?da3cb5397c520f23#5wuvjEu6utzyx89Uy6dcQkXH582hpMDAx1EDsr7At3Ay

NextcloudPi fails to understand it can update from 24.0.5 to 25.0.0rc3, so:

* Switch branch to beta

* Update from 24.0.5 to 24.0.6

* Switch branch to stable

* Switch branch to beta

* Update from 24.0.6 to 25.0.0rc3 become available

Interesting, update process works from a fresh container. Wasn't able to reproduce the segmentation fault. https://bin.disroot.org/?51421b62908b3561#F3tFoXTCE8WH5EwhfFwwoK2hWo7EVpZj7qYQoxZSQi3B

@sirdrakeistda is right: The segmentation fault occurs if you have upgraded php and not cleared the pre-8.1 opcache.

sudo bash -c /usr/local/etc/library.sh; clear_opcache should fix the issue

@sunjam
Copy link
Author

sunjam commented Oct 11, 2022

sudo bash -c /usr/local/etc/library.sh; clear_opcache should fix the issue is not supported in Docker which lacks support for clear_opcache and systemctl within the container.

I'll keep testing it.

@sunjam
Copy link
Author

sunjam commented Oct 14, 2022

Updater bug has been fixed, basic update process working to 25.0.0rc5

HPB is down.

The PHP OPcache module is not properly configured. See the documentation ↗ for more information.

The OPcache interned strings buffer is nearly full. To assure that repeating strings can be effectively cached, it is recommended to apply opcache.interned_strings_buffer to your PHP configuration with a value higher than 8.

The database is missing some indexes. Due to the fact that adding indexes on big tables could take some time they were not added automatically. By running "occ db:add-missing-indices" those missing indexes could be added manually while the instance keeps running. Once the indexes are added queries to those tables are usually much faster.

Missing index "preferences_app_key" in table "oc_preferences".
Missing index "mounts_class_index" in table "oc_mounts".

The PHP module "imagick" is not enabled although the theming app is. For favicon generation to work correctly, you need to install and enable this module.
Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running "occ db:convert-filecache-bigint" those pending changes could be applied manually. This operation needs to be made while the instance is offline. For further details read the documentation page about this ↗.

file_metadata.id

@sirdrakeistda
Copy link

I installed nextcloud 25.0.0. After update I got an blank page (firefox) or an http 500 error (chrome) after login. Most apps didn't worked and showed a blank page (including the start page with the dashboard, files, ... I don't know why, but polls and Phonetrack did work). The app settings were reachable and usable, occ commands work without problem. After some research I noticed, that this problem was caused by the deck app. Disabling Deck fixed the issue.
nextcloud/deck#3978
I hope this is helpful for others with the same issue.

@sunjam
Copy link
Author

sunjam commented Oct 19, 2022

@sirdrakeistda Good catch! 1.8.0 app of Deck app is now available in the appstore and will fix this issue once you update it.

Updated from 25.0.0rc5 to 25.0.0 stable successfully.

{"reqId":"1P63A1kppAIGceji1dr2","level":3,"time":"2022-10-19T17:40:18+00:00","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"file_get_contents(/data/nextcloud/apps/related_resources/appinfo/signature.json): Failed to open stream: No such file or directory at /data/nextcloud/lib/private/IntegrityCheck/Helpers/FileAccessHelper.php#44","userAgent":"--","version":"25.0.0.17","exception":{"Exception":"Error","Message":"file_get_contents(/data/nextcloud/apps/related_resources/appinfo/signature.json): Failed to open stream: No such file or directory at /data/nextcloud/lib/private/IntegrityCheck/Helpers/FileAccessHelper.php#44","Code":0,"Trace":[{"function":"onError","class":"OC\Log\ErrorHandler","type":"::"},{"file":"/data/nextcloud/lib/private/IntegrityCheck/Helpers/FileAccessHelper.php","line":44,"function":"file_get_contents"},{"file":"/data/nextcloud/lib/private/IntegrityCheck/Checker.php","line":330,"function":"file_get_contents","class":"OC\IntegrityCheck\Helpers\FileAccessHelper","type":"->"},{"file":"/data/nextcloud/lib/private/IntegrityCheck/Checker.php","line":521,"function":"verify","class":"OC\IntegrityCheck\Checker","type":"->"},{"file":"/data/nextcloud/lib/private/IntegrityCheck/Checker.php","line":606,"function":"verifyAppSignature","class":"OC\IntegrityCheck\Checker","type":"->"},{"file":"/data/nextcloud/lib/private/Updater.php","line":309,"function":"runInstanceVerification","class":"OC\IntegrityCheck\Checker","type":"->"},{"file":"/data/nextcloud/lib/private/Updater.php","line":141,"function":"doUpgrade","class":"OC\Updater","type":"->"},{"file":"/data/nextcloud/core/Command/Upgrade.php","line":225,"function":"upgrade","class":"OC\Updater","type":"->"},{"file":"/data/nextcloud/3rdparty/symfony/console/Command/Command.php","line":255,"function":"execute","class":"OC\Core\Command\Upgrade","type":"->"},{"file":"/data/nextcloud/3rdparty/symfony/console/Application.php","line":1009,"function":"run","class":"Symfony\Component\Console\Command\Command","type":"->"},{"file":"/data/nextcloud/3rdparty/symfony/console/Application.php","line":273,"function":"doRunCommand","class":"Symfony\Component\Console\Application","type":"->"},{"file":"/data/nextcloud/3rdparty/symfony/console/Application.php","line":149,"function":"doRun","class":"Symfony\Component\Console\Application","type":"->"},{"file":"/data/nextcloud/lib/private/Console/Application.php","line":213,"function":"run","class":"Symfony\Component\Console\Application","type":"->"},{"file":"/data/nextcloud/console.php","line":100,"function":"run","class":"OC\Console\Application","type":"->"},{"file":"/data/nextcloud/occ","line":11,"args":["/data/nextcloud/console.php"],"function":"require_once"}],"File":"/data/nextcloud/lib/private/Log/ErrorHandler.php","Line":92,"CustomMessage":"--"}}
{"reqId":"1P63A1kppAIGceji1dr2","level":1,"time":"2022-10-19T17:40:28+00:00","remoteAddr":"","user":"--","app":"updater","method":"","url":"--","message":"\OC\Updater::finishedCheckCodeIntegrity: Finished code integrity check","userAgent":"--","version":"25.0.0.17","data":{"app":"updater"}}
{"reqId":"1P63A1kppAIGceji1dr2","level":1,"time":"2022-10-19T17:40:28+00:00","remoteAddr":"","user":"--","app":"updater","method":"","url":"--","message":"\OC\Updater::updateEnd: Update successful","userAgent":"--","version":"25.0.0.18","data":{"app":"updater"}}

@REAPERSbattlecry
Copy link

ncp 1.50.3 on Debian 11 VM with Curl installer.
Fresh install upgraded to NC25.0.0. seem to have no problems.
I installed several apps including Talk, Deck, Snappymail, Mail, Groupfolders.
My impression is, that it is a little bit slower than NC24...

Will check further.

@phil-lipp
Copy link

phil-lipp commented Oct 21, 2022

I just updated from 24.0.6 (with php8.1) to 25.0.0 on an existing instance. So far everything's working fine and navigating through the NC interface feels snappier than ever!
One thing I noticed is that running nc-previews throws the following error:

[Symfony\Component\Console\Exception\CommandNotFoundException]  
  Command "preview:pre-generate" is not defined.                  
                                                                  
  Did you mean one of these?                                      
      notification:generate                                       
      preview:repair                                              
      preview:reset-rendered-texts 

Edit: Enabling the "Preview Generator" App in the Admin Settings fixed the above issue. It presumably got disabled as it is not marked as compatible with the 25.0.0 release, but it works just fine for me after hitting "enable untested app"

@surfrock66
Copy link

surfrock66 commented Nov 19, 2022

Just a heads up, the fix for missing indicies is usually this run from your nextcloud root directory:

sudo -u www-data php ./occ db:add-missing-indices

@sunjam
Copy link
Author

sunjam commented Dec 6, 2022

Release client available for testing if anyone can test for 32-bit

https://help.nextcloud.com/t/rc-3-of-nc-25-0-2/151387

@sunjam
Copy link
Author

sunjam commented Dec 9, 2022

25.0.2 has been released to nc stable. Anyone able to test? Especially appreciated if you can test the update on 32-bit hardware. Thanks!

@janvlug
Copy link
Contributor

janvlug commented Dec 9, 2022

I'm running Nextcloud server 25.0.2 on an old 32-bit Synology, it works. I had to modify a file to get it working on 25.0.1.
I'm looking forward to Nextcloud 25 support by nextcloudpi, because I want to migrate to a bit faster hardware running this project.
BTW: I always update via occ, because I got once (many versions ago) an error when doing an update via the web interface (I think it was because of a timeout or lost connection).
I'm running PHP 7.4.

@sirdrakeistda
Copy link

Update with nc-update on a 64-bit system works without problem.

@REAPERSbattlecry
Copy link

REAPERSbattlecry commented Jan 15, 2023

Did some trials with devel-branch v1.51.0 and the update from NC24.0.8 to 25.0.2.
It generally works but never got it working without having a "service unavailable" on the whole webserver (Nextcloud and ncp-UI).
It is solvable with the new clear-op-cache-tool (Thanks for that I think @ZendaiOwl) but it have to be done in the cli (ncp-config).

Is there a way to trigger the clear-op-cache after the update by default?

Test were done on a Debian VM (64bit / curl installer)

@ZendaiOwl
Copy link
Collaborator

@REAPERSbattlecry

The op_clear_cache tool should be made by @theCalcaholic 🙂 so I'll let him answer that

@sunjam
Copy link
Author

sunjam commented Jan 19, 2023

With the 25.0.3 release PHP 7.4 has reached EOL and is no longer supported moving forward.

@theCalcaholic
Copy link
Collaborator

With the 25.0.3 release PHP 7.4 has reached EOL and is no longer supported moving forward.

Good thing we upgraded PHP when moving to NC 24 ☺️

@svenb1234
Copy link

I pulled the :latest docker image and got the following:

Setup notify_push (attempt 1/5)

✓ redis is configured

✓ push server is receiving redis messages

✓ push server can load mount info from database

✓ push server can connect to the Nextcloud server

✓ push server is a trusted proxy

✓ push server is running the same version as the app

  configuration saved

Nextcloud version 24.0.8.2. NextCloudPi version v1.51.0

Back up current instance...

check free space...

clean up old backup /data/docker-startup-backups/nextcloud-bkp_20221104_1667597843.tar.gz

Maintenance mode enabled

backup database...

backup files...

So nextcloud seems to be at 24 still for the 1.51.0 latest docker image.

@theCalcaholic
Copy link
Collaborator

@svenb1234 Yes, until you run the update to nc 25 from the web UI

@theCalcaholic
Copy link
Collaborator

Now implemented in v1.51.0

@svenb1234
Copy link

Isn'T the whole point of containers that one does update by pulling a new container?

The update does not work either if one does not specify the exact version. 0 used to work in order to update to the latest nextcloud version available.

grafik

@sunjam
Copy link
Author

sunjam commented Jan 24, 2023 via email

@theCalcaholic
Copy link
Collaborator

theCalcaholic commented Jan 25, 2023

Isn'T the whole point of containers that one does update by pulling a new container?

The update does not work either if one does not specify the exact version. 0 used to work in order to update to the latest nextcloud version available.

grafik

Yes, you update NextcloudPi by pulling a new container. But we support multiple NC versions with each NCP version, so updating users Nextcloud version would just be rude (consider that people might rely on NC apps or customizations that aren't compatible with the latest version of NC yet)

EDIT:
Btw, the update by setting the VERSION parameter to "0" is supposed to work (and has been working in our tests), so that's a bug. No idea what's causing it, though

@ZendaiOwl
Copy link
Collaborator

ZendaiOwl commented Jan 25, 2023

It looks like the suggestion is what is filled in the image due to the gray tone of the text, did you fill in a '0' in the field or did you only hit apply?

@svenb1234
Copy link

The 0 is the default input which you get if you enter nothing. This used to pick the latest nextcloud version available for NCP.

With this "nothing" in the input field I clicked on apply.

@svenb1234
Copy link

Still misleading. NCP did never show the latest version available in that field. If there was nothing in the input field NCP checked - after one clicked on apply - for the latest available version, i.e. while showing the progress in the big textarea below apply.

@theCalcaholic
Copy link
Collaborator

theCalcaholic commented Jan 25, 2023

Ah, @ZendaiOwl you're right. The field is actually empty. @svenb1234 The updater never worked with an empty input, but it worked with an input of "0". What we are seeing in your screenshot is a placeholder, while the field is actually empty.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
has-updates roadmap Used for tickets that are meant to document the state of milestones/features internally
Projects
Status: Done
Development

No branches or pull requests

9 participants