Erreur dans le script de mise à jour en v12.0

Bonjour.

Je viens de voir une petite erreur sur le script de migration du passage de la v11 à la v12 :

Erreur DB_ERROR_SYNTAX: DROP INDEX ix_fk_product_stockALTER TABLE llx_actioncomm DROP COLUMN punctual;
ERROR: 42601: syntax error at or near « TABLE » LINE 1: DROP INDEX ix_fk_product_stockALTER TABLE llx_actioncomm DRO… ^ LOCATION: scanner_yyerror, scan.l:1133

On voit qu’il manque juste l’espace entre ix_fk_product_stock et ALTER TABLE.
Ceci dit, je ne voit pas d’index s’appelant ix_fk_product_stock dans ma table.

Et une autre erreur à cet endroit :

Erreur DB_ERROR_42804: ALTER TABLE llx_extrafields MODIFY COLUMN printable integer DEFAULT 0;
ERROR: 42804: column « printable » cannot be cast automatically to type integer HINT: You might need to specify « USING printable::integer ». LOCATION: ATPrepAlterColumnType, tablecmds.c:9677

Qui n’apparaît sûrement que si on a déjà créé un champ supplémentaire.
J’ai fait manuellement la modification dans la base de données et j’ai forcé la suite de la migration qui s’est bien passée.

PS: je ne sais pas si ça a une importance mais je suis sous postgresql.

Bonjour :slightly_smiling_face:
974 :+1:.
Visiblement cette commande est bien en commentaire (donc ne devrait pas être exécutée):

1 « J'aime »

C’est étrange effectivement que l’erreur soit sortie si la ligne est commentée…
Bon on verra si d’autres ont cette erreur.

Ah non je pense que le

-- VPGSQL8.2 DROP INDEX ix_fk_product_stock

n’est pas vraiment un commentaire mais se déclenche si on est sur postgresql >= 8.2…
Enfin j’imagine.

oui bien vu ça ! j’avais pas remarqué :wink:

Même probléme sur le forum anglais : https://www.dolibarr.org/forum/t/problem-upgrading-to-v12/19222

Bonjour, Je suis sous Postgres et j’ai la même erreur. J’ai noté qu’il manquait un « ; » à la ligne suivante. C’est con mais si tu le rajoute à la fin de la ligne, l’erreur saute
– VPGSQL8.2 DROP INDEX ix_fk_product_stock ;
Pour la seconde, c’est un peu plus coton, il fait passer d’un booleen à un entier. Il n’aime pas la conversion.

1 « J'aime »

Ah bien vu !

Oui j’ai été obligé de le faire manuellement… bon j’avais une seule ligne la dedans alors c’était vite fait.

J’ai supprimé la première ligne correspondant à l’ALTER ma table et supprimé manuellement le champ. Il ne contenait rien de « printable ». La ligne suivante a recréé le champ. L’install est passée.