Problem upgrading from v. 22 to 23

I am trying to catch up to the latest version of Gibbon. Up to 22.0.01 was fine. But when I go from there to v. 23, I get the “Something has gone wrong: the Gibbons have escaped!” message. I saw a thread about the Data Admin module and substituted v. 1.6.1 there, but that does not seem to be the cause. I cannot log in at all. Any ideas about how to go about troubleshooting this?

Hello dcowens76,

Not sure if this is a recent post.

The Topic suggests you’re trying to upgrade Gibbon from v22 to v23.

The latest version is actually v25.

The message you are seeing during the upgrade commonly occurs when you do not Reset File/Folders Permissions.

How are you doing the upgrade? Here are the steps you can follow:

https://docs.gibbonedu.org/administrators/getting-started/updating-gibbon/

Let me know if I’m missing anything.

Thanks

Tieku

Thanks for responding, @tiekubd . Yes, I am taking it a version at a time to get to v. 25, but maybe I can go straight to v. 25?

Anyway, ownership of the folder is www-data and permissions set to 755. So that should work. It did from v. 21 to v. 22.

Oh, and I did follow the same procedure for upgrade as on the page you referenced.

I asked the upgrade path question before:

It appears you can upgrade from as early as v20.0.00 straight to v25, from checking CHANGEDB.php.

So yes you can upgrade from v22 straight to v25. Remember to take a backup and try it on a copy of your site first.

I hope this helps.

Thanks, yes, so I did try going from v. 22 to 25, and it gives me a login screen, but upon login I get the gibbons have escaped message. It must not be a permissions issue because www-data (Apache user on Ubuntu) owns the folder, recursively, and permissions are set at 755 (also recursively).

Anyone have an idea what else might be causing this error message?

Can you provide the php error logs from when you tried logging in?

Can you retry the upgrade with a copy of your backup? Disable the installed modules first.

Can you provide your versions of PHP and MySQL?

I will ask @ross and @sandra for their input as well.

Sorry for the radio silence, @tiekubd . I have been moving. I am back to trying to solve this.

So I disabled installed modules and removed their folders. I tried running the upgrade from v. 22 to 25, and this is what I get in the error log:

Stack trace:

#0 /var/www/gibbon/src/Database/Result.php(49): PDOStatement->rowCount()

#1 /var/www/gibbon/src/Domain/Traits/TableAware.php(106): Gibbon\Database\Result->isNotEmpty()

#2 /var/www/gibbon/src/Auth/Adapter/AuthenticationAdapter.php(270): Gibbon\Domain\User\UserGateway->getByID()

#3 /var/www/gibbon/src/Auth/Adapter/AuthenticationAdapter.php(169): Gibbon\Auth\Adapter\AuthenticationAdapter->verifyMFA()

#4 /var/www/gibbon/src/Auth/Adapter/DefaultAdapter.php(73): Gibbon\Auth\Adapter\AuthenticationAdapter->verifyLogin()

#5 /var/www/gibbon/vendor/aura/auth/src/Service/LoginService.php(73): Gibbon\Auth\Adapter\DefaultAdapter->login()

#6 /var/www/gibbon/login.php(109): Aura\Auth\Service\LoginService->login()

#7 {main}

thrown in /var/www/gibbon/src/Database/Result.php on line 49

I am running PHP 8.1 and MySQL 8.0.33.

By starting fresh with the Gibbon files, rather than using rsync to upgrade, I managed to install v. 23.0.01 and to upgrade the Data Admin module to v. 1.6.03. But I get the gibbons have escaped message when trying to upgrade to v. 24 and v. 25. So I am stuck, unable to upgrade beyond v. 23.

In addition, Data Admin gives me the gibbons have escaped when I click on either Import From File
or View Import History.

I get similar messages for the Reporting module, but I will contact the author for that.

I am a bit frustrated that the upgrade process has been so problematic after v. 22. I may have to go back to v. 21 just to get grades out.

And yes, gibbon/ is owned my www-data and permissions set to 755 (recursively for both).

I can install a fresh copy of v. 25 on my system, so I know the problem is not the environment.

The only thing I can think of is that there is a problem with the update process, either user error (most likely) or something in the release archive causing this. Since there aren’t others encountering the same problem, it is most likely user error, but I am following the update process carefully.

Is there a way to install and then import your database and update it (from v. 23)? I have tried but not been successful so far.

@sandra @ross - any advice?

If there was a way you could share a copy of your site files and database with me, I could give it a try.

Sure, that would be helpful, @tiekubd. I sent a request to connect on LinkedIn.

Hi !!!
I had the same issue with a few modules (badges…), I realised that switching back to php 7.4 solved the issue… I dont really know if this is a “correct” solution but it worked for me…

Hi @dcowens76 Thanks for providing me with copies of your site files and database.

I downloaded and installed a fresh copy of v23 from GitHub, and then upgraded to v25. The upgrade was successful without a hitch. So it’s probably something with your current setup?

When I tried upgrading your site I kept coming up against this issue:

I’ll ask @sandra for help at this point.

I am still unable to upgrade to v. 23 or 25, even using a fresh copy.

Hello @dcowens76
I noticed PHP 8.1 has a little compatibility issue, try 8.0. and one more thing: once logged in and you get the error can you try edit the URL to look https://yoursite/update.php [like a forced upgrade].

If this doesn’t work Do manual database upgrade using CHANGEDB SQL starting from your current working version and your current database [making sure to update the site files as well]. [This last method is is very manual but should 100% work]

cheers

Yeah, so going back to PHP 7.4 enables me to actually upgrade (I didn’t try HP 8.0), at least on MAMP. But I still have questions, but perhaps for another place.

I have been able to upgrade, and I think the cause was a package or two that were missing in my system. I ended up using the tutorial at https://howtoforge.com/how-to-install-gibbon-lms-on-ubuntu-20-04/ to make sure I had all packages, and that seemed to be the difference. When the installer checks for everything, it doesn’t check for EVERYTHING needed to run Gibbon. So I suggest the documentation should be updated to be more complete. Also, PHP 7.4 is essential. PHP 8 simply didn’t work.

1 Like

Thanks for the update, glad to hear it’s working. PHP 8.0 and 8.1 should work, but yes, we don’t support PHP 8.2+ just yet, so it could cause issues.

Did you happen to see which packages/PHP extensions were required but not checked by the installer? We should be able to add these to the list, unless maybe they’re specific to the server software (Apache vs Nginx). Thanks!

Sorry, I did not take note of which packages were needed, but I used this command from the tutorial:

apt-get install apache2 mariadb-server php libapache2-mod-php php-common php-sqlite3 php-mysql php-gmp php-curl php-intl php-mbstring php-xmlrpc php-gd php-bcmath php-xml php-cli php-zip unzip git -y

Looking at what the system check for PHP extensions looks for (specifically: gettext, mbstring, curl, zip, xml, gd), it seems that bcmath, xmlrpc, intl, and gmp are missing from that check.

1 Like