Anomalie #1932
ferméErreur suite à la mise à jour de Galette 0.8.3 vers 1.1.5.2
0%
Description
Bonjour,
Je suis en train d'essayer de mettre à jour galette depuis un backup des fichiers et de la base postgres d'une version 0.8.3 vers galette 1.1.5.2 sur debian 12.
J'ai réussi à dérouler la mise à jour, mais lorsque je charge la page d'index l'erreur suivante s'affiche dans le navigateur:
Erreur de Galette
Erreur de l’application
Ci-dessous les messages d'erreur que je trouve dans les logs du serveur apache :
[Sun Apr 20 13:03:21.658234 2025] [php:notice] [pid 34651:tid 34651] [client 10.0.3.1:43392] Slim Application Error Type: DI\\DependencyException Code: 0 Message: Error while injecting in Galette\\Controllers\\GaletteController::fields_config. Statement could not be executed (22P02 - 7 - ERROR: invalid input syntax for type boolean: "4" CONTEXTE : unnamed portal parameter $4 = '...') File: /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Resolver/ObjectCreator.php Line: 185 Trace: #0 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Resolver/ObjectCreator.php(153): DI\\Definition\\Resolver\\ObjectCreator->injectProperty() #1 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Resolver/ObjectCreator.php(131): DI\\Definition\\Resolver\\ObjectCreator->injectMethodsAndProperties() #2 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Resolver/ObjectCreator.php(56): DI\\Definition\\Resolver\\ObjectCreator->createInstance() #3 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Resolver/ResolverDispatcher.php(60): DI\\Definition\\Resolver\\ObjectCreator->resolve() #4 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Container.php(354): DI\\Definition\\Resolver\\ResolverDispatcher->resolve() #5 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Container.php(136): DI\\Container->resolveDefinition() #6 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/invoker/src/CallableResolver.php(84): DI\\Container->get() #7 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/invoker/src/CallableResolver.php(38): Invoker\\CallableResolver->resolveFromContainer() #8 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/slim-bridge/src/CallableResolver.php(75): Invoker\\CallableResolver->resolve() #9 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/slim-bridge/src/CallableResolver.php(36): DI\\Bridge\\Slim\\CallableResolver->resolvePossibleSignature() #10 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/Routing/Route.php(345): DI\\Bridge\\Slim\\CallableResolver->resolveRoute() #11 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(73): Slim\\Routing\\Route->handle() #12 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(73): Slim\\MiddlewareDispatcher->handle() #13 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/Routing/Route.php(321): Slim\\MiddlewareDispatcher->handle() #14 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/Routing/RouteRunner.php(74): Slim\\Routing\\Route->run() #15 /var/www/galette/galette-1.1.5.2/galette/vendor/akrabat/rka-slim-session-middleware/RKA/SessionMiddleware.php(66): Slim\\Routing\\RouteRunner->handle() #16 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(129): RKA\\SessionMiddleware->process() #17 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/csrf/src/Guard.php(482): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle() #18 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(129): Slim\\Csrf\\Guard->process() #19 /var/www/galette/galette-1.1.5.2/galette/lib/Galette/Middleware/Language.php(68): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle() #20 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(177): Galette\\Middleware\\Language->__invoke() #21 /var/www/galette/galette-1.1.5.2/galette/lib/Galette/Middleware/Telemetry.php(69): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle() #22 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(177): Galette\\Middleware\\Telemetry->__invoke() #23 /var/www/galette/galette-1.1.5.2/galette/includes/main.inc.php(177): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle() #24 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(280): Closure->{closure}() #25 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/Middleware/RoutingMiddleware.php(45): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle() #26 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(129): Slim\\Middleware\\RoutingMiddleware->process() #27 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/Middleware/ErrorMiddleware.php(77): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle() #28 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(129): Slim\\Middleware\\ErrorMiddleware->process() #29 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/twig-view/src/TwigMiddleware.php(117): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle() #30 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(129): Slim\\Views\\TwigMiddleware->process() #31 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/MiddlewareDispatcher.php(73): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle() #32 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/App.php(209): Slim\\MiddlewareDispatcher->handle() #33 /var/www/galette/galette-1.1.5.2/galette/vendor/slim/slim/Slim/App.php(193): Slim\\App->handle() #34 /var/www/galette/galette-1.1.5.2/galette/includes/main.inc.php(209): Slim\\App->run() #35 /var/www/galette/galette-1.1.5.2/galette/webroot/index.php(50): require_once('...') #36 {main} Previous Error: Type: Laminas\\Db\\Adapter\\Exception\\InvalidQueryException Code: 0 Message: Statement could not be executed (22P02 - 7 - ERROR: invalid input syntax for type boolean: "4" CONTEXTE : unnamed portal parameter $4 = '...') File: /var/www/galette/galette-1.1.5.2/galette/vendor/laminas/laminas-db/src/Adapter/Driver/Pdo/Statement.php Line: 223 Trace: #0 /var/www/galette/galette-1.1.5.2/galette/lib/Galette/Entity/FieldsConfig.php(925): Laminas\\Db\\Adapter\\Driver\\Pdo\\Statement->execute() #1 /var/www/galette/galette-1.1.5.2/galette/lib/Galette/Entity/FieldsConfig.php(368): Galette\\Entity\\FieldsConfig->insert() #2 /var/www/galette/galette-1.1.5.2/galette/lib/Galette/Entity/FieldsConfig.php(153): Galette\\Entity\\FieldsConfig->checkUpdate() #3 /var/www/galette/galette-1.1.5.2/galette/includes/dependencies.php(340): Galette\\Entity\\FieldsConfig->__construct() #4 [internal function]: {closure}() #5 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/invoker/src/Invoker.php(74): call_user_func_array() #6 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Resolver/FactoryResolver.php(69): Invoker\\Invoker->call() #7 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Resolver/ResolverDispatcher.php(60): DI\\Definition\\Resolver\\FactoryResolver->resolve() #8 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Container.php(354): DI\\Definition\\Resolver\\ResolverDispatcher->resolve() #9 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Container.php(136): DI\\Container->resolveDefinition() #10 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Reference.php(44): DI\\Container->get() #11 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Resolver/ResolverDispatcher.php(55): DI\\Definition\\Reference->resolve() #12 /var/www/galette/galette-1.1.5.2/galette/vendor/php-di/php-di/src/Definition/Resolver/ObjectCreator.php(181): DI\\Definition\\Resolver\\ResolverDispatcher->resolve()
Merci pour votre aide.
Mis à jour par Johan Cwiklinski il y a environ 19 heures
- Statut changé de Nouveau à Commentaire
Je pense que la tbale en question contient des valeurs incorrectes (aucune idée pourquoi). Le moyen le plus simple de tester, c'est di vider entièrement la table galette_fields_config
. Elle sera automatiquement remplie avec les valeurs par défaut (qui elles sont bonnes).
Mis à jour par Gauthier C. il y a environ 8 heures
Merci pour la réponse rapide.
J'ai commencé par faire un truncate de la table qui n'a pas corrigé le problème.
En regardant la structure de la table galette_fields_config
, je me suis aperçu qu'elle n'avait pas correctement été mise à jour:
galette=# \d galette_fields_config
Table "public.galette_fields_config"
Column | Type | Collation | Nullable | Default
-------------------+-----------------------+-----------+----------+---------------
table_name | character varying(30) | | not null |
field_id | character varying(30) | | not null |
required | boolean | | not null |
visible | boolean | | not null |
position | integer | | not null |
id_field_category | integer | | |
list_visible | boolean | | not null | false
list_position | integer | | | '-1'::integer
width_in_forms | integer | | not null | 1
Indexes:
"galette_fields_config_pkey" PRIMARY KEY, btree (table_name, field_id)
Foreign-key constraints:
"galette_fields_config_id_field_category_fkey" FOREIGN KEY (id_field_category) REFERENCES galette_fields_categories(id_field_category) ON UPDATE CASCADE ON DELETE RESTRICT
J'ai donc supprimé et recréé la table avec les données présentes dans le fichier ./install/scripts/pgsql.sql
galette=# DROP TABLE IF EXISTS galette_fields_config CASCADE;
CREATE TABLE galette_fields_config (
table_name character varying(30) NOT NULL,
field_id character varying(30) NOT NULL,
required boolean NOT NULL,
visible integer NOT NULL,
position integer NOT NULL,
list_visible boolean NOT NULL,
list_position integer NOT NULL,
width_in_forms integer DEFAULT '1' NOT NULL,
id_field_category integer REFERENCES galette_fields_categories ON DELETE RESTRICT ON UPDATE CASCADE,
PRIMARY KEY (table_name, field_id)
);
Tout semble fonctionner correctement. Je continue mes tests.
Encore merci.
Mis à jour par Johan Cwiklinski il y a environ 8 heures
· Edité
- Statut changé de Commentaire à Fermé
Gauthier C. a écrit (#note-2):
...
En regardant la structure de la tablegalette_fields_config
, je me suis aperçu qu'elle n'avait pas correctement été mise à jour:
[...]
Il y a un fichier de log spécifique à l'installation/mise à jour, cela vaudrait peut-^tere le coup de regarder voir ce qui s'est passé ; et surtout s'il n'y a pas d'autres soucis.
Le problème étant visiblement résolu, je clos la demande :)