Installation

Upgrade from WW 2.18 to 2.19 does not execute

Upgrade from WW 2.18 to 2.19 does not execute

by Charles Fulton -
Number of replies: 3
I've just upgraded our staging WeBWorK server from 2.18 to 2.19. Things seem okay and I've successfully updated the admin course and the OPL. My problem comes when I go to upgrade the courses. I follow these steps:

  1. Authenticate to Course Administration (/webwork2/admin)
  2. Navigate to Upgrade Courses (/webwork2/admin?effectiveUser=foo&subDisplay=upgrade_course)
  3. Ensure all courses are selected, and click "Upgrade Courses" to start the upgrade

Instead, I just get bounced back to the main Course Administration page.

Charles

In reply to Charles Fulton

Re: Upgrade from WW 2.18 to 2.19 does not execute

by Glenn Rice -
I have never seen this sort of thing happen. We are going to need more information to get an idea of what is going wrong. Could you set the debug "enabled" and "logfile" settings in the webwork2.mojolicious.conf file, and see what information appears in the debug log file that might be relevant? Even without that, does the /opt/webwork/webwork2/logs/webwork2.log file show anything relevant?
In reply to Glenn Rice

Re: Upgrade from WW 2.18 to 2.19 does not execute

by Charles Fulton -
Thanks Glenn. One thing that jumps out is that WeBWorK may be having trouble storing sessions. It seems to be reauthenticating on every access of the admin page, and then (I imagine) losing the post data for the upgrade. Snippet:

[Thu Jul 10 11:08:22.990475 2025] WeBWorK::Authen::verify: BEGIN VERIFY
[Thu Jul 10 11:08:22.990654 2025] WeBWorK::Authen::do_verify: db ok
[Thu Jul 10 11:08:22.990978 2025] WeBWorK::Authen::CAS::get_credentials: service = https://path/to/webwork/webwork2/admin
[Thu Jul 10 11:08:22.991091 2025] WeBWorK::Authen::CAS::get_credentials: no ticket. Redirecting to https://path/to/cas/server/cas/login?service=https://path/to/webwork/webwork2/admin
[Thu Jul 10 11:08:22.991719 2025] WeBWorK::Authen::verify: END VERIFY
[Thu Jul 10 11:08:22.991825 2025] WeBWorK::Authen::verify: result 0
[Thu Jul 10 11:08:22.992007 2025] (eval): Bad news: authentication failed!
[Thu Jul 10 11:08:22.992085 2025] (eval): Rendering WeBWorK::ContentGenerator::Login
[Thu Jul 10 11:08:22.992614 2025] WeBWorK::Authen::store_session: The cookie session is expired.

We're using Authen::CAS. Also seeing this elsewhere:

[Thu Jul 10 11:17:04.535337 2025] WeBWorK::Authen::fetchCookie: fetchCookie: Session cookie does not contain valid information. Returning nothing.

I set these values in localOverrides.conf and then bounced webwork2, to no effect:

$CookieSameSite = "Lax";
$CookieSecure = 1;
$useSessionCookie = 1;

These were all commented out previously.
In reply to Charles Fulton

Re: Upgrade from WW 2.18 to 2.19 does not execute

by Glenn Rice -

The settings for $CookieSameSite and $CookieSecure don't need be uncommented.  Those values are the default values for those variables anyway.  If you want a session cookie, then you do need to uncomment that, since that is not the default.

The problem may be with Authen::CAS usage.  There have been quite a few changes to WeBWorK's authentication in the last few releases, and unfortunately that module has not really been updated for all of those changes.  None of the active developers use that module, and I don't think any of us have a way to test it either.  That means that all we can do is guess at what it needs.  We need someone that has a setting to test it to figure out what is needed to fix it.