How to debug upgrade process?

How to debug upgrade process?

by Roberto Puzzanghera -
Number of replies: 11
Hello,
as mentioned in an old post of january 13, my moodle stops the upgrade process without any error message on the web page nor at the apache log level, even though the php display_errors flag is turned on.

Is there a way to debug what's really happening?

Thanks for any answer
Roberto
Average of ratings: -
In reply to Roberto Puzzanghera

Re: How to debug upgrade process?

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

Switch on Debugging. You'll need to re-load from the backup I hope you made and do it all again of course. 

Average of ratings: Useful (1)
In reply to Howard Miller

Re: How to debug upgrade process?

by Roberto Puzzanghera -

I have enabled a full debug and this is what I see in the apache log (PHP Version 5.6.3)

Thanks for any help

Roberto


PHP Warning:  mkdir(): File exists in /var/www/moodle.mysite.xy/wwwroot2/lib/setuplib.php on line 1368, referer: http://moodle.mysite.xy/admin/index.php?confirmupgrade=1&confirmrelease=1&cache=0
PHP Warning:  mkdir(): File exists in /var/www/moodle.mysite.xy/wwwroot2/lib/setuplib.php on line 1368, referer: http://moodle.mysite.xy/admin/index.php?confirmupgrade=1&confirmrelease=1&cache=0
PHP Warning:  mkdir(): File exists in /var/www/moodle.mysite.xy/wwwroot2/lib/setuplib.php on line 1368, referer: http://moodle.mysite.xy/admin/index.php?confirmupgrade=1&confirmrelease=1&cache=0
PHP Warning:  mkdir(): File exists in /var/www/moodle.mysite.xy/wwwroot2/lib/setuplib.php on line 1368, referer: http://moodle.mysite.xy/admin/index.php?confirmupgrade=1&confirmrelease=1&cache=0
PHP Warning:  mkdir(): File exists in /var/www/moodle.mysite.xy/wwwroot2/lib/setuplib.php on line 1368
PHP Warning:  mkdir(): File exists in /var/www/moodle.mysite.xy/wwwroot2/lib/setuplib.php on line 1368, referer: http://moodle.mysite.xy/admin/index.php?confirmupgrade=1&confirmrelease=1&cache=0 PHP Warning:  mkdir(): File exists in /var/www/moodle.mysite.xy/wwwroot2/lib/setuplib.php on line 1368, referer: http://moodle.mysite.xy/admin/index.php?confirmupgrade=1&confirmrelease=1&cache=0

Default exception handler: The site is being updated, please come back later Debug: \nError code: upgraderunning\n* line 463 of /lib/setuplib.php: moodle_exception thrown\n* line 670 of /lib/setup.php: call to print_error()\n* line 462 of /config.php: call to require_once()\n* line 30 of /pluginfile.php: call to require_once()\n, referer: http://moodle.mysite.xy/theme/styles.php/more/1422963834/all


In reply to Roberto Puzzanghera

Re: How to debug upgrade process?

by Howard Miller -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

Odd, but probably some sort of permissions error in your 'moodledata' area. Moodle can't see the directories but can't create them either. Check your permissions (0777 for everything/recursive is easiest). 

In reply to Howard Miller

Re: How to debug upgrade process?

by Roberto Puzzanghera -

This is already done. Apache has wrx priviledges on *every file* of that folder.

I also switched off and deleted *all* my additional plugins and theme, but the problem is still there. I see many "mkdir(): File exists" errors as before and now an additional error appeared:

Default exception handler: E' stata inviata una sesskey non corretta, il form non \xc3\xa8 stato accettato! Debug: \nError code: invalidsesskey\n* line 463 of /lib/setuplib.php: moodle_exception thrown\n* line 85 of /lib/sessionlib.php: call to print_error()\n* line 32 of /theme/switchdevice.php: call to require_sesskey()\n

I translate: a not correct sesskey has been sent. The form was not accepted

Thanks for any help

Roberto

In reply to Roberto Puzzanghera

Re: How to debug upgrade process?

by Ken Task -
Picture of Particularly helpful Moodlers

In this last posting this path:
/var/www/moodle/
This path indicates a standalone ... no virtual hosting or the default host
whose document root is /var/www/moodle.   Normally document roots have very restricted access/ownerships/permissions.

In previous posting this path:
/var/www/moodle.mysite.xy/wwwroot2/
This path indicates apache virtual hosting.
Definitions for apache virtual hosting normally found at the end of the httpd.conf file.

Check httpd.conf for document root
Check config.php to see if the variable matches
Check ownership/permissions on the document root.

Also, in the last posting:
/theme/switchdevice.php:

You are using FireFox from a laptop/workstation and not tablet of some sort, correct?

Sessions can be disabled from DB in config.php of the site:
$CFG->dbsessions=0;

That should create a sessions directory in moodledata and use files for sessions rather than DB entries.

'spirit of sharing', Ken

Average of ratings: Useful (2)
In reply to Ken Task

Re: How to debug upgrade process?

by Roberto Puzzanghera -

Hi Ken, thanks for your response.

my moodle is installed in a virtualhost. In my previous posts I shortened the host dir because it is very very long, but I'm sure that apache is ok.

I added $CFG->dbsessions=0; in my config.php, chowned to 777 both the moodle and moodledata dirs but the issue is still there. I see these errors now (apart from many "mkdir(): File exists" errors):

Default exception handler: Il sito \xc3\xa8 in fase di aggiornamento, per favore provate ad accedere pi\xc3\xb9 tardi Debug:
\nError code: upgraderunning\n* line 463 of /lib/setuplib.php: moodle_exception thrown\n*
line 670 of /lib/setup.php: call to print_error()\n*
line 464 of /config.php: call to require_once()\n* line 41 of /calendar/set.php: call to require_once()\n
[Tue Feb 03 17:26:35.012912 2015] [:error] [pid 17387:tid 140460362249984] [client 78.15.89.116:60484]

Default exception handler: Il sito \xc3\xa8 in fase di aggiornamento, per favore provate ad accedere pi\xc3\xb9 tardi Debug:
\nError code: upgraderunning\n* line 463 of /lib/setuplib.php: moodle_exception thrown\n*
line 670 of /lib/setup.php: call to print_error()\n* line 464 of /config.php: call to require_once()\n*
line 31 of /pluginfile.php: call to require_once() \n, referer: http://moodle.sagredo.eu/theme/styles.php/more/1422980789/all

thanks for any help

Roberto

In reply to Roberto Puzzanghera

Re: How to debug upgrade process?

by Ken Task -
Picture of Particularly helpful Moodlers

With what virtual hosting company?  Wonder if mod_fcgid needs tweaking for the upgrade.

sito \xc3\xa8 Appears to be

LATIN CAPITAL LETTER E WITH CIRCUMFLEX

Have never seen that reported in any error on Moodle forums.

All strange to me ... dunno about anyone else.

What does the version.php file show at document root?

Do you have command line access to the server?

If so, restart apache: /sbin/service httpd restart (CentOS Linux)

cd /pathtomoodlecode/admin/cli/

then issue: php upgrade.php --non-interactive [ENTER]

Let's see what it says there.

Have you tried purging caches on server? by going to URL directly?

http://yoursite/admin/purgecaches.php

Might have to manually remove files/folders in moodledata/cache/ to get the site under 'control' again.

Is the more theme compatible with the 2.8.x version?

'spirit of sharing', Ken



Average of ratings: Useful (1)
In reply to Ken Task

Re: How to debug upgrade process?

by Roberto Puzzanghera -

Many many thanks to you Ken,

I followed your suggestion, I manually erased the cache (but I did the same one time before), removed all additional themes and plugins (but I did the same one time before) and launched the upgrade from the command line as you suggested and... it was completed corretly smile))

I don't know what could be the cause yet.

It is a server of mine. I have mod_php installed, with php-5.6.3, but I was having the same problem with mod_fcgid and php-5.4. Very strange.

Best regards

Roberto

In reply to Ken Task

Re: How to debug upgrade process?

by Roberto Puzzanghera -

Now I have 2.8.3 installed, but the reinstallation of additional plugins fails when the web interface is used. I have to do all the maintenance by the command line and I don't know why. I'm going to check apache, the vhost and .htaccess files

Roberto

In reply to Roberto Puzzanghera

Re: How to debug upgrade process?

by Ken Task -
Picture of Particularly helpful Moodlers

Well, you're gonna have to disclose some more info about ... "the reinstallation of additional plugins fails when the web interface is used".  Does the attempt return a curl error?  If so, does it mention a specific curl error number?

Sounds like you need to leave debugging on and attempt to install a plugin via web interface.   Then report what debugging shows ... if anything.

While you are at it, check your server error logs and messages log to see if anything shows there.

Unless you are running a really old and no longer supported version of Linux/Unix OS also mind disclosing that?

'spirit of sharing', Ken

Average of ratings: Useful (1)
In reply to Ken Task

Re: How to debug upgrade process?

by Roberto Puzzanghera -

Hi Ken,

I think I was not installing those additional plugins properly. I was used to extract the plugin.zip in the /mod folder, let the program recognize the presence of the new plugin and start the database upgrade. And the two additional plugins are not 2.8 compliant (lightboxgallery and media) and maybe this caused the errors.

Now I'm using the "Install plugin" feature and the installation is working fine.

btw, each time I upgrade the database, moodle shows me a prompt which reminds me that there are old themes to be deleted. Those themes are no more on the disk, so moodle can't accomplish the task and each time I try to upgrade the db it continues to show the same alert, as shown below.

Any idea on how to manually delete those entries from the database?

thanks for your help

Roberto


Manual grading by student /mod/quiz/report/gradingstudents Aggiuntivo
2014111200
  • Moodle 2013101800
  • mod_quiz (2013110500)
Da installare
Temi
afterburner
Standard 2014041400

Da eliminare
anomaly
Standard 2014041400

Da eliminare
arialist
Standard 2014041400

Da eliminare
binarius
Standard 2014041400

Da eliminare
boxxie
Standard 2014041400

Da eliminare
formal_white
Standard 2013110500

Da eliminare
formfactor
Standard 2013110500

Da eliminare
fusion
Standard 2013110500

Da eliminare
leatherbound
Standard 2013110500

Da eliminare
magazine
Standard 2013110500

Da eliminare
nimble
Standard 2013110500

Da eliminare
nonzero
Standard 2013110500

Da eliminare
overlay
Standard 2013110500

Da eliminare
serenity
Standard 2013110500

Da eliminare
sky_high
Standard 2013110500

Da eliminare
splash
Standard 2013110500

Da eliminare
standard
Standard 2013110500

Da eliminare
standardold
Standard 2013110500

Da eliminare