- Posts: 218
- Thank you received: 20
Welcome to the LimeSurvey Community Forum
Ask the community, share ideas, and connect with other LimeSurvey users!
Remonté de bugs en cours pour les sous questions d'un tableau
1 month 2 weeks ago #240046
by riqcles
LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /
Future LimeSurvey version 5.4.5
version 22.10.10 (actuelle)
PHP 7 et 8
BDD : PostGresql 13.x
Bonjour,
je me suis connecté sur ma base de données pour regarder ce qui ne vas pas lorsque je réalise le test d'intégrité des données.
j'ai réalisé l'action suivante pour sélectionner des tables :
///////////////////////////////////////////////////////////////////////////////////////
select 'DROP TABLE ' AS constante1 ,
table_name,
-- substr(table_name,24, 4) as "annee",
-- substr(table_name,28, 2) as "mois",
-- substr(table_name,29, 2) as "jour"
' CASCADE ; ' AS constante2
from information_schema.tables
where table_catalog = 'limesurvey'
and table_schema = 'public'
and table_type = 'BASE TABLE'
and table_name 'lime_%_survey_9912%'
///////////////////////////////////////////////////////////////////////////////////////
Cela fonctionne bien, et me génère la liste des tables concernées....
Mais en regardant le fichier de log, on voit que des erreurs sur la sélection de la table lime_questions sont présentes :
2023-02-02 11:12:27.075 CET [28495] ERREUR: la valeur « 28815429493 » est en dehors des limites pour le type integer au caractère 52
2023-02-02 11:12:27.075 CET [28495] INSTRUCTION : SELECT * FROM "lime_questions" "t" WHERE "t"."qid"='28815429493' AND "t"."sid"=139916 LIMIT 1
la valeur pour chaque lignes (si j'ai des sous questions) dépasse la limite du nombre de caractères pour le type integer.
j'ai 11 caractères au lieu de 10 maximum.
En regardant plus en détail, je constate que si dans le code de la sous question ne commence pas par une lettre (ex : SQ1) et qu'on a que des chiffres, la requête va prendre le code de la sous question qui est un titre, comme code interne de la sous question.
Les utilisateurs ont importé un questionnaire modèle, qui contenait des sous questions avec que des chiffres, et comme ils ont plein de questionnaires dupliqué (2000 lignes d'erreurs avec la sous questions), le temps de traitement lors de la vérification de l'intégrité des données, puis du nettoyage (qui plante chez moi) prends beaucoup de temps.
Je remonte le bug, c'est juste pour info, si vous constater la même chose....
je me suis connecté sur ma base de données pour regarder ce qui ne vas pas lorsque je réalise le test d'intégrité des données.
j'ai réalisé l'action suivante pour sélectionner des tables :
///////////////////////////////////////////////////////////////////////////////////////
select 'DROP TABLE ' AS constante1 ,
table_name,
-- substr(table_name,24, 4) as "annee",
-- substr(table_name,28, 2) as "mois",
-- substr(table_name,29, 2) as "jour"
' CASCADE ; ' AS constante2
from information_schema.tables
where table_catalog = 'limesurvey'
and table_schema = 'public'
and table_type = 'BASE TABLE'
and table_name 'lime_%_survey_9912%'
///////////////////////////////////////////////////////////////////////////////////////
Cela fonctionne bien, et me génère la liste des tables concernées....
Mais en regardant le fichier de log, on voit que des erreurs sur la sélection de la table lime_questions sont présentes :
2023-02-02 11:12:27.075 CET [28495] ERREUR: la valeur « 28815429493 » est en dehors des limites pour le type integer au caractère 52
2023-02-02 11:12:27.075 CET [28495] INSTRUCTION : SELECT * FROM "lime_questions" "t" WHERE "t"."qid"='28815429493' AND "t"."sid"=139916 LIMIT 1
la valeur pour chaque lignes (si j'ai des sous questions) dépasse la limite du nombre de caractères pour le type integer.
j'ai 11 caractères au lieu de 10 maximum.
En regardant plus en détail, je constate que si dans le code de la sous question ne commence pas par une lettre (ex : SQ1) et qu'on a que des chiffres, la requête va prendre le code de la sous question qui est un titre, comme code interne de la sous question.
Les utilisateurs ont importé un questionnaire modèle, qui contenait des sous questions avec que des chiffres, et comme ils ont plein de questionnaires dupliqué (2000 lignes d'erreurs avec la sous questions), le temps de traitement lors de la vérification de l'intégrité des données, puis du nettoyage (qui plante chez moi) prends beaucoup de temps.
Je remonte le bug, c'est juste pour info, si vous constater la même chose....

LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /
Future LimeSurvey version 5.4.5
version 22.10.10 (actuelle)
PHP 7 et 8
BDD : PostGresql 13.x
Please Log in to join the conversation.
- DenisChenu
-
- Offline
- LimeSurvey Community Team
-
Less
More
- Posts: 12886
- Thank you received: 2371
1 month 2 weeks ago #240047
by DenisChenu
Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
Replied by DenisChenu on topic Remonté de bugs en cours pour les sous questions d'un tableau
Oui,
On fait un try/cast : github.com/LimeSurvey/LimeSurvey/pull/2312
Avant ca plantait …
Perso , j'ai un serveur avec plus de 2000 questionnaires (sur du MSSQL en plus) … j'ai laissé tomber …
Il faudrait 2 choses (ou 3)
1. Avoir un checkintegrity par questionnaire
2. Avoir un checkintegrity par ligne de commande (no limit !)
3. Faire le checkintegirit avec un peu d'ajax …
On fait un try/cast : github.com/LimeSurvey/LimeSurvey/pull/2312
Avant ca plantait …
Perso , j'ai un serveur avec plus de 2000 questionnaires (sur du MSSQL en plus) … j'ai laissé tomber …
Il faudrait 2 choses (ou 3)
1. Avoir un checkintegrity par questionnaire
2. Avoir un checkintegrity par ligne de commande (no limit !)
3. Faire le checkintegirit avec un peu d'ajax …
Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
The following user(s) said Thank You: riqcles
Please Log in to join the conversation.
1 month 2 weeks ago #240052
by riqcles
LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /
Future LimeSurvey version 5.4.5
version 22.10.10 (actuelle)
PHP 7 et 8
BDD : PostGresql 13.x
Replied by riqcles on topic Remonté de bugs en cours pour les sous questions d'un tableau
Ok, je vais supprimer les questionnaires concernés, car comme je suis le seul à lancer le test des données.....
Pour chaque questionnaire, les utilisateurs vont pas le faire (ou très peu)
En ligne de commande..... les exploitants me laisseront pas faire ce que je veux en root
En ajax....pourquoi pas, je pourrais demander un développement spécifique avec retour à la communauté si c'est demandé.
Sinon je supprime juste mes 2000 lignes de sous questions
Pour chaque questionnaire, les utilisateurs vont pas le faire (ou très peu)
En ligne de commande..... les exploitants me laisseront pas faire ce que je veux en root

En ajax....pourquoi pas, je pourrais demander un développement spécifique avec retour à la communauté si c'est demandé.
Sinon je supprime juste mes 2000 lignes de sous questions

LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /
Future LimeSurvey version 5.4.5
version 22.10.10 (actuelle)
PHP 7 et 8
BDD : PostGresql 13.x
Please Log in to join the conversation.
- DenisChenu
-
- Offline
- LimeSurvey Community Team
-
Less
More
- Posts: 12886
- Thank you received: 2371
1 month 2 weeks ago - 1 month 2 weeks ago #240068
by DenisChenu
Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
Replied by DenisChenu on topic Remonté de bugs en cours pour les sous questions d'un tableau
Mais ca reste un bogue non ?
Sinon : chez certains hébergeur : tu as accès à des taches cron. Sinon : il suffit de l’accès ssh, pas celui de root.
Sinon : chez certains hébergeur : tu as accès à des taches cron. Sinon : il suffit de l’accès ssh, pas celui de root.
Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
Last edit: 1 month 2 weeks ago by DenisChenu.
Please Log in to join the conversation.
1 month 2 weeks ago #240072
by riqcles
LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /
Future LimeSurvey version 5.4.5
version 22.10.10 (actuelle)
PHP 7 et 8
BDD : PostGresql 13.x
Replied by riqcles on topic Remonté de bugs en cours pour les sous questions d'un tableau
Effectivement, j'ai remonté :
bugs.limesurvey.org/view.php?id=18614
mais pour la production, j'ai accès à rien (pas de ssh) sauf une lecture sur la base de données.
.
Il faudrait pouvoir choisir les années / mois pour le check.
Cela permettrait de faire un nettoyage ciblé et d’accélérer la phase de sélection, plutôt que de prendre toute la base.
Qu'en pensez-vous ?
mais pour la production, j'ai accès à rien (pas de ssh) sauf une lecture sur la base de données.
.
Il faudrait pouvoir choisir les années / mois pour le check.
Cela permettrait de faire un nettoyage ciblé et d’accélérer la phase de sélection, plutôt que de prendre toute la base.
Qu'en pensez-vous ?
LimeSurvey version 3.22.19
OS : CentOS 7.9 / PHP 7.2.4
BDD : PostGresql 11.x /
Future LimeSurvey version 5.4.5
version 22.10.10 (actuelle)
PHP 7 et 8
BDD : PostGresql 13.x
Please Log in to join the conversation.
- DenisChenu
-
- Offline
- LimeSurvey Community Team
-
Less
More
- Posts: 12886
- Thank you received: 2371
1 month 2 weeks ago #240073
by DenisChenu
Et avoir un tag "Modifié" demande à ajouté une requête à chaque mise à jour de question, réponse ou questionnaire.
Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
Replied by DenisChenu on topic Remonté de bugs en cours pour les sous questions d'un tableau
C'est aussi une idée, mais le soucis est que 1 questionnaire d'il ya 3 ans à pu être modifié hier …Il faudrait pouvoir choisir les années / mois pour le check.
Cela permettrait de faire un nettoyage ciblé et d’accélérer la phase de sélection, plutôt que de prendre toute la base.
Qu'en pensez-vous ?
Et avoir un tag "Modifié" demande à ajouté une requête à chaque mise à jour de question, réponse ou questionnaire.
Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
Please Log in to join the conversation.
Moderators: Nickko