Bonjour

Je suis dans un sale pétrin !
J'ai développé un site en Drupal 7 chez un hébergeur. J'y utilise views_calc pour sommer des colonnes de vues. Il marche parfaitement bien.

Fin Août les temps de réponse n'étant pas satisfaisants et le site devant ouvrir à la rentrée, je décide de choisir un autre hébergeur pour le site de production (j'ai choisi web4all une assoce qui milite pour le Libre). Je transfère le site, vérifie que tout marche. OK.

Sauf que je n'ai pas vu que les lignes de totaux en bas des vues views_calc ne s'affichent plus. et dans le backend il me sort un message d'erreur : SQLSTATE[42000]: Syntax error or access violation: 1140 Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause

Les vues étant les mêmes et la structure de la base aussi la seule chose qui diffère ce sont les niveaux de logiciel MySQL d'après phpmyadmin :

Chez l'hébergeur de mon prototype
Serveur : Version du serveur: 5.1.49-3-log
client : mysqlnd 5.0.8-dev - 20102224 - $Id: 65fe78e70ce53d27a6cd578597722950e490b0d0 $

Chez web4all:
Version du logiciel: 5.0.51a-24+lenny5-log - (Debian)
Version du client de base de données: libmysql - 5.1.63

Bien entendu l'assistance de web4all dit que c'est un problème Drupal. Aucune aide de ce côté. J'ai posté aussi un billet dans le forum de Drupal France, personne n'a d'idée.

J'ai bien une piste :
"As far as why this worked locally, but not on your live server;
MySql doesn't require complete listing of non-aggregate columns in the GROUP BY clause by default, but your live server probably has the
ONLY_FULL_GROUP_BY  option turned on."

On peut la tourner ON via phpmyadmin :
SET sql_mode = 'ONLY_FULL_GROUP_BY';
Mais c'est la tourner OFF qu'il faudrait faire. Et je n'ai pas trouvé comment on fait. Si quelqu'un sait... Merci

J'ai aussi vu que le groupe Drupal est au courant (on parle de Drupa 8, de patches...), mais je n'ai pas vu de solution proposée, mais ai-je bien regardé ?

Bref si quelqu'un a une idée qui me permettrait de sortir de ce truc je lui vouerai une reconnaissance éternelle !

Librement
Pierre



%%% Merci de respecter ces consignes http://www.linux-azur.org/savoir-vivre %%%








Répondre à