Update Ubuntu LTS 18.04 to 22.04 and dolibarr from 11 to 15

Hello,

After updating ubuntu from LTS 18.04 to 22.04, dolibarr didn’t work anymore, so I decided to uninstall and install a new version dolibarr_15.0.3-4_all.deb.
After solving some php issue, I was able to start install page.
I see several migration steps from 11 to 15 but the first one failed with error:
Erreur DB_ERROR_1118: ALTER TABLE llx_actioncomm DROP COLUMN punctual;
Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
Erreur DB_ERROR_1118: ALTER TABLE llx_societe_rib ADD COLUMN stripe_account varchar(128);
Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
I suppose ignoring it is not a good idea so, do you have any idea how to solve this ?
Thanks
Best regards.

Hi,

please make sure that you are not using a higher php version than php 7.4 for Dolibarr v15. I think ubuntu 22.04 comes with php 8 and this will only be supported from Dolibarr v16, once it gets released.

Hi,

Thank you for the information. Ubuntu 22.04 provide only 8.1 version and php meta package point to this version.
I was able to install prior version by following instruction there:How to Install Different PHP (5.6, 7.0 and 7.1) in Ubuntu
But when I try to install dolibarr deb file, the dependencies system tries install 8.1 and I don’t know how to change that :frowning: .
(sorry it’s in french):
$ sudo apt install ./Téléchargements/dolibarr_15.0.3-4_all.deb
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances… Fait
Lecture des informations d’état… Fait
Note : sélection de « dolibarr » au lieu de « ./Téléchargements/dolibarr_15.0.3-4_all.deb »
Les paquets supplémentaires suivants seront installés :
libgd3 libgd3:i386 php-curl php-gd php-intl php-mail-mime php-mbstring php-mysql php-pear php-xml php-zip
php8.1-common php8.1-curl php8.1-gd php8.1-intl php8.1-mbstring php8.1-mysql php8.1-xml php8.1-zip
Paquets suggérés :
php5-geoip libgd-tools libgd-tools:i386
Les NOUVEAUX paquets suivants seront installés :
dolibarr php-curl php-gd php-intl php-mail-mime php-mbstring php-mysql php-pear php-xml php-zip php8.1-common
php8.1-curl php8.1-gd php8.1-intl php8.1-mbstring php8.1-mysql php8.1-xml php8.1-zip
Les paquets suivants seront mis à jour :
libgd3 libgd3:i386
2 mis à jour, 18 nouvellement installés, 0 à enlever et 6 non mis à jour.
Il est nécessaire de prendre 2 465 ko/43,2 Mo dans les archives.
Après cette opération, 216 Mo d’espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n]

So it seems you can install both version and select the one to use with

sudo a2dismod php8.1
sudo a2enmod php7.4

All values are green when I start installation now:

Ok Ce PHP prend bien en charge les variables POST et GET.
Ok Ce PHP prend en charge les sessions.
Ok Ce PHP prend en charge les fonctions GD.
Ok Ce PHP prend en charge les fonctions Curl.
Ok Ce PHP prend en charge les fonctions Calendar.
Ok Ce PHP prend en charge les fonctions UTF8.
Ok Ce PHP prend en charge les fonctions mbstring.
Ok Ce PHP prend en charge les fonctions Intl.
Ok Ce PHP prend en charge les fonctions ZIP.
Ok Votre mémoire maximum de session PHP est définie à 128M. Ceci devrait être suffisant.
Ok Le fichier de configuration /etc/dolibarr/conf.php existe.
Ok Le fichier /etc/dolibarr/conf.php est modifiable.

Version dernière mise à jour: 11.0.1 - Version programmes: 15.0.3

But I’ve still the same error:

Erreur DB_ERROR_1118: ALTER TABLE llx_actioncomm DROP COLUMN punctual;
Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
Erreur DB_ERROR_1118: ALTER TABLE llx_societe_rib ADD COLUMN stripe_account varchar(128);
Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs

So it doesn’t seem to be a php issue.