Server: Failure Of Update To 16.0.8 Nextcloud

Created on 10 Feb 2020  Â·  8Comments  Â·  Source: nextcloud/server

Update to 16.0.8

GuzzleHttp\Exception\ConnectException: cURL error 28: Operation timed out after 599057 milliseconds with 16659020 out of 184630366 bytes received (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)

    Repair warning: Installation cannot not be completed, because an Exception was thrown.

Detailed logs

Preparing update

Set log level to debug

Turned on maintenance mode

Repair step: Repair MySQL collation

Repair info: All tables already have the correct collation -> nothing to do

Repair step: Repair SQLite autoincrement

Repair step: Copy data from accounts table when migrating from ownCloud

Repair step: Drop account terms table when migrating from ownCloud

Updating database schema

Updated database

Repair step: Drop old database table

Repair step: Fetch tessdata for ocr.

Repair warning: Installation cannot not be completed, because an Exception was thrown.

GuzzleHttp\Exception\ConnectException: cURL error 28: Operation timed out after 599057 milliseconds with 16659020 out of 184630366 bytes received (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)

The update was unsuccessful. Please report this issue to the Nextcloud community.

Steps to reproduce

1.
2.
3.

Expected behaviour

Tell us what should happen

Actual behaviour

Tell us what happens instead

Server configuration

Operating system:

Web server:

Database:

PHP version:

Nextcloud version: (see Nextcloud admin page)

Updated from an older Nextcloud/ownCloud or fresh install:

Where did you install Nextcloud from:

Signing status:


Signing status

Login as admin user into your Nextcloud and access 
http://example.com/index.php/settings/integrity/failed 
paste the results here.

List of activated apps:


App list

If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your Nextcloud installation folder

Nextcloud configuration:


Config report

If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your Nextcloud installation folder

or 

Insert your config.php content here. 
Make sure to remove all sensitive content such as passwords. (e.g. database password, passwordsalt, secret, smtp password, …)

Are you using external storage, if yes which one: local/smb/sftp/...

Are you using encryption: yes/no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...

LDAP configuration (delete this part if not used)


LDAP config

With access to your command line run e.g.:
sudo -u www-data php occ ldap:show-config
from within your Nextcloud installation folder

Without access to your command line download the data/owncloud.db to your local
computer or access your SQL server remotely and run the select query:
SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap';


Eventually replace sensitive data as the name/IP-address of your LDAP server or groups.

Client configuration

Browser:

Operating system:

Logs

Web server error log


Web server error log

Insert your webserver log here

Nextcloud log (data/nextcloud.log)


Nextcloud log

Insert your Nextcloud log here

Browser log


Browser log

Insert your browser log here, this could for example include:

a) The javascript console log
b) The network log
c) ...

0. Needs triage bug

All 8 comments

@ahlooii Remove the ocr app and run the upgrade again. It seems that the ocr app tries to fetch some data during the upgrade and runs into a timeout.

@janis91 :fearful: I don't know what would work for your app but a operation like downloading 200mb of data is probably a bit to expensive for a repair step. If you rethrow the exception it will abort the upgrade.

@ahlooii The behavior is definitely caused by the ocr app. It seems that the download of the tessdata (language trained data for tesseract to recognize different languages better) takes longer than expected. I would also recommend to try again.

@kesselb The main problem is the following: How to do this alternatively? The app needs this data. I don't want to put it in the internet, because on one hand it is cross origin, on the other some people might serve NC in restricted environments, where it's not possible to load things from the internet. I tried putting it directly inside of the app bundle, but restrictions of max 5mb per app crossed my plans. What would you do instead? I personally think to force an admin to do something by hand is much less comfortable than letting the app handle it self and safe as well.

Btw: Some users and also I experienced some really strange behavior during this Repairstep download: #19131 I reported it already. I don't know where to investigate this. But I think normally this download of ~180mb shouldn't take more than 60 seconds on many servers. And from curl cli it's much faster. So at the moment I think there is an issue with the http client in Nextcloud during the Repairstep actually.

I personally think to force an admin to do something by hand is much less comfortable than letting the app handle it self and safe as well.

Keep in mind that the update routine is also executable via web. That's probably a issue for such long running tasks. A exception from a repair step will abort the upgrade and leave the user with a non functional instance. I would suggest to not rethrow the exception as a start: https://github.com/janis91/ocr/blob/1c6b054f234248b673081e77337cd86575deee92/lib/Migration/FetchTessdata.php#L99

I would suggest to not rethrow the exception as a start

Sounds plausible. I added a disableApp step instead, in case of an Exception.
Still I am really wondering why IClient is taking so extremely long / is so slow.

Actually, it totally blocked me out from accessing the NC gui page and forced to run the update. However, i shut it off yesterday and today on it back, it just worked out of the blue. (with sudo snap disable/enable nextcloud i have no idea what was going on but thank you so much for both of your help, i really appreciated.

Besides, don't mind i ask if i want to update the app to 18.0 Nextcloud Hub, i use sudo snap nextcloud refresh (at host machine of course), it return with the result of nothing to update. The command i found in official nextcloud guideline for snap package update on nextcloud.

Current Ver. of NC: 16.0.8
Ubuntu Server w. LXDE skin.
Nextcloud install with Snap.

and IF i backup my data directory and just uninstall my current nextcloud and reinstall with Vers. 18 Nextcloud Hub Snap and replace the new data directory with my old data directory.

Will that worked?

@ahlooii Happy, that it worked after retrying. I‘m not sure about NC18. My first guess would be, that it‘s not considered „stable“ yet. But I‘m not sure.

Please ask snap related questions at https://help.nextcloud.com/c/support/appliances-docker-snappy-vm or https://github.com/nextcloud/nextcloud-snap. It's not possible for snap users to apply a patch because the snap is read only hence the maintainers are a bit more passive with version upgrades to provide a good experience. The latest version they ship as stable is 16.0.8 but you can switch to another channel (18/edge for example) with newer versions.

Thank you so much all!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

wjwieland picture wjwieland  Â·  87Comments

Wehzie picture Wehzie  Â·  73Comments

philippe-levan picture philippe-levan  Â·  78Comments

mightyBroccoli picture mightyBroccoli  Â·  92Comments

bruennlein picture bruennlein  Â·  73Comments