pixeline / bugs

Simple Issue Tracking for Teams. Built in Laravel 3 (php/mysql)
pixeline.github.io/bugs/
MIT License
88 stars 24 forks source link

Error with Comment/Close a ticket #521

Closed Albatros78 closed 3 years ago

Albatros78 commented 3 years ago

Ici une erreur en fermant un ticket (Admin)

Unhandled Exception Message: Undefined variable: columns Location: E:\xampp\htdocs\bugtracker\app\laravel\database\query\grammars\grammar.php on line 437 Stack Trace:

0 E:\xampp\htdocs\bugtracker\app\laravel\laravel.php(40): Laravel\Error::native(8, 'Undefined varia...', 'E:\xampp\htdocs...', 437)

1 E:\xampp\htdocs\bugtracker\app\laravel\database\query\grammars\grammar.php(437): Laravel{closure}(8, 'Undefined varia...', 'E:\xampp\htdocs...', 437, Array)

2 E:\xampp\htdocs\bugtracker\app\laravel\database\query.php(887): Laravel\Database\Query\Grammars\Grammar->update(Object(Laravel\Database\Query), Array)

3 [internal function]: Laravel\Database\Query->update(Array)

4 E:\xampp\htdocs\bugtracker\app\laravel\database\eloquent\query.php(267): call_user_func_array(Array, Array)

5 E:\xampp\htdocs\bugtracker\app\laravel\database\eloquent\model.php(392): Laravel\Database\Eloquent\Query->__call('update', Array)

6 E:\xampp\htdocs\bugtracker\app\application\models\project\issue\comment.php(95): Laravel\Database\Eloquent\Model->save()

7 E:\xampp\htdocs\bugtracker\app\application\controllers\project\issue.php(81): Project\Issue\Comment::create_comment(Array, Object(Project), Object(Project\Issue))

8 [internal function]: Project_Issue_Controller->post_index('1', '3')

9 E:\xampp\htdocs\bugtracker\app\laravel\routing\controller.php(325): call_user_func_array(Array, Array)

10 E:\xampp\htdocs\bugtracker\app\laravel\routing\controller.php(285): Laravel\Routing\Controller->response('index', Array)

11 E:\xampp\htdocs\bugtracker\app\laravel\routing\controller.php(165): Laravel\Routing\Controller->execute('index', Array)

12 E:\xampp\htdocs\bugtracker\app\laravel\routing\route.php(153): Laravel\Routing\Controller::call('project.issue@i...', Array)

13 E:\xampp\htdocs\bugtracker\app\laravel\routing\route.php(124): Laravel\Routing\Route->response()

14 E:\xampp\htdocs\bugtracker\app\laravel\laravel.php(160): Laravel\Routing\Route->call()

15 E:\xampp\htdocs\bugtracker\index.php(19): require('E:\xampp\htdocs...')

16 {main}

En revenant en arrière le ticket est bien fermé !

Pour info, il semble que cette erreur soit uniquement sur le 1er ticket du projet... (et uniquement sur un projet et pas l'autre !!)

Patriboom commented 3 years ago

Pour info, il semble que cette erreur soit uniquement sur le 1er ticket du projet... (et uniquement sur un projet et pas l'autre !!)

Ça rend les choses compliquées! Tant que le système fonctionne pour les autres et continue à bien fonctionner ensuite .... j'y mettrai du temps plus tard.

Merci pour le retour détaillé. J'apprécie votre aide.

Albatros78 commented 3 years ago

Bon après cette erreur j'ai continué à travailler et Boum, tout planté... Je sais a peu près comment... En changer l'assignation d'un ticket... Et là plantage complet, j'ai dû réinstallé à nouveau... (bon maintenant je sauvegarde la base de temps en temps ...:-)

Je recommencerais cette même opération pour voir si le plantage complet recommence, et aussi pour cette histoire de 1er ticket en le fermant...

A suivre.....

Albatros78 commented 3 years ago

Bon avec la nouvelle installation je n'ai que un projet.

Je ferme le 1er ticket ==> Erreur (la même que ci dessus) Je réouvre ==> OK Je ferme le 2nd ticket ==> OK Je ferme le 1er ticket ==> Erreur

Il semble que cela soit donc sur le 1er uniquement (peut être un problème avec les followers ???) qui ne sont pas les mêmes sur les 2 tickets

Patriboom commented 3 years ago

Je n'arrive pas à reproduire l'erreur. Voici ce que j'ai fait:

  1. Création du projet 1
  2. Création du billet 1
  3. Fermeture du billet 1
  4. Réouverture du billet 1
  5. Création du billet 2
  6. Fermeture du billet 1 Tout est réglo, tout a fonctionné.

Je tenterai, prochaine étape, de créer deux projets, puis un billet dans le premier projet.

Patriboom commented 3 years ago

Deuxième essai - sans erreur encore une fois:

  1. Création du projet 1
  2. Création du projet 2
  3. Création du billet 1 dans projet 1
  4. Création du billet 2 dans projet 1
  5. Fermeture du billet 1 (du projet 1)
  6. Réouverture du billet 1 (du projet 1)
  7. Fermeture du billet 1 (du projet 1)
Patriboom commented 3 years ago

Je n'arrive pas à reproduire l'erreur. Désolé.

Albatros78 commented 3 years ago

Bizarre car je viens de retester avec le dernier zip... Pas d'erreur...

Bon on ferme et on verra plus tard si cela se reproduit.

Albatros78 commented 3 years ago

Je viens d'avoir à nouveau l'erreur en faisant un close du ticket 1 du projet 1 et l'erreur

Unhandled Exception Message: Undefined variable: columns Location: E:\xampp\htdocs\bugtracker3\app\laravel\database\query\grammars\grammar.php on line 437 Stack Trace:

0 E:\xampp\htdocs\bugtracker3\app\laravel\laravel.php(40): Laravel\Error::native(8, 'Undefined varia...', 'E:\xampp\htdocs...', 437)

1 E:\xampp\htdocs\bugtracker3\app\laravel\database\query\grammars\grammar.php(437): Laravel{closure}(8, 'Undefined varia...', 'E:\xampp\htdocs...', 437, Array)

2 E:\xampp\htdocs\bugtracker3\app\laravel\database\query.php(887): Laravel\Database\Query\Grammars\Grammar->update(Object(Laravel\Database\Query), Array)

3 [internal function]: Laravel\Database\Query->update(Array)

4 E:\xampp\htdocs\bugtracker3\app\laravel\database\eloquent\query.php(267): call_user_func_array(Array, Array)

5 E:\xampp\htdocs\bugtracker3\app\laravel\database\eloquent\model.php(392): Laravel\Database\Eloquent\Query->__call('update', Array)

6 E:\xampp\htdocs\bugtracker3\app\application\models\project\issue\comment.php(95): Laravel\Database\Eloquent\Model->save()

7 E:\xampp\htdocs\bugtracker3\app\application\controllers\project\issue.php(81): Project\Issue\Comment::create_comment(Array, Object(Project), Object(Project\Issue))

8 [internal function]: Project_Issue_Controller->post_index('1', '2')

9 E:\xampp\htdocs\bugtracker3\app\laravel\routing\controller.php(325): call_user_func_array(Array, Array)

10 E:\xampp\htdocs\bugtracker3\app\laravel\routing\controller.php(285): Laravel\Routing\Controller->response('index', Array)

11 E:\xampp\htdocs\bugtracker3\app\laravel\routing\controller.php(165): Laravel\Routing\Controller->execute('index', Array)

12 E:\xampp\htdocs\bugtracker3\app\laravel\routing\route.php(153): Laravel\Routing\Controller::call('project.issue@i...', Array)

13 E:\xampp\htdocs\bugtracker3\app\laravel\routing\route.php(124): Laravel\Routing\Route->response()

14 E:\xampp\htdocs\bugtracker3\app\laravel\laravel.php(160): Laravel\Routing\Route->call()

15 E:\xampp\htdocs\bugtracker3\index.php(19): require('E:\xampp\htdocs...')

16 {main}

Reproduit 3 fois de suite (close, reopen - close,reopen ...etc...)

Voici la base afs_bugtracker Erreur close issue1 projet 1.zip

La je pense que cela doit être utile pour toi !

Courage, cela avance bien !

Patriboom commented 3 years ago

Je ne vois pas de ticket 1 dans le projet 1. D'ailleurs, la BD que vous m'avez envoyée ne comporte aucun ticket dont l'id serait 1

Patriboom commented 3 years ago

Dans l'historique je vois que cet exercice de fermer et rouvrir a été pratiqué sur le ticket 2.

Albatros78 commented 3 years ago

Par prudence voici la base a nouveau afs_bugtracker (6).zip

Il s'agit du ticket 1 mais pas en id mais dans la liste mais le nom soit 'suivie par 2 managers OK' dans projet 1

Le viens de recommencer. La première fois tout va bien je fais reopen je referme ==> erreur

Patriboom commented 3 years ago

J'ai tout désisintallé mon BUGStest et tout réinstallé à l'aide du système BUGS: rien n'y fait, je reste incapable de reproduire l'erreur.

Je mets cela de côté pour le moment, en attendant d'autres occurences de l'erreur afin de repérer des constantes et comprendre ce qui se passe.

Albatros78 commented 3 years ago

Etrange tout de même ! OK .... a suivre à nouveau

Mais moi j'arrive assez facilement.... !!!

Albatros78 commented 3 years ago

J'ai fermé l'onglet de mon navigateur (Chrome) et ouvert à nouveau un nouvel onglet (je pensais que cela venait de là)

Aucune erreur en fermant / ouvrant un ou x tickets ! du premier projet de la liste je vais sur le second projet et Boum ... erreur (la même que ci dessus) Et maintenant c'est sur le second projet.

Mais le ticket est bien fermé malgré l'erreur...

Etrange !

Il n'y a pas de variables de session / cookies qui pourraient être la cause ?

Patriboom commented 3 years ago

Ah oui!

Là vous pointez quelque chose de précieux.
Si vous aviez plusieurs onglets d'ouverts dans le même fureteur, les variables session / cookie peuvent avoir provoqué ce genre d'erreur.

Je crois que vous avez bien visé. Ça expliquerait aussi que je sois incapable de reproduire l'erreur puisque je n'ai toujours qu'un onglet de chaque site ouvert dans le même fureteur. Pour faire des tests à deux fenêtres d'un même site, j'ouvre habituellement un autre fureteur.

Félicitations, c'est vous qui avez débogué.

Albatros78 commented 3 years ago

J'ai directement non pas un onglet de Chrome, mais j'ai fermé tout le navigateur !!!!

Et réouvert dans un seul onglet.

Là je n'ai plus d'erreur...

Bon je vais fermer le ticket demain si tout est ok A suivre tout de même ..... Si c'était cela, ca serait mieux et plsu simple pour toi :-)

C'est pas contrôlable pour afficher un message d'erreur ou d'avertissement ?

Si non, peut être une idée: afficher un message après le login pour préciser que l'application ne peut pas être ouverte plusieurs fois dans le même navigateur.... et les boutons OK (et on affiche à nouveau au prochain login) et OK ne plus afficher (on a compris) ou toujours OK ! c'est juste une piste si on ne peut pas le contrôler dans le code.

Albatros78 commented 3 years ago

Je crois mais pas certain ... J'ai laissé le timeout se mettre en place pour fermer la session. Je me reconnecte et je ferme le ticket . Erreur je réouvre je referme .... erreur

je ferme l'onglet de Chrome (Chrome a toujorus d'autres onglets ouverts) J'ouvre un nouvel onglet et relance Bugs je referme .... erreur Je réouvre

Je ferme Chrome entièrement Je relance Chrome et Bugs je referme ...OK Je réouvre je referme ...OK Je réouvre je referme ...OK Je réouvre

Je me demande donc si il ne faut pas chercher dans les variables de session, timeout, reconnexion ....etc... Peut être que après le Timeout des variables sont remises à zéro. et même en relancant dans l'onglet toujours actif cela ne fonctionne plus ..

Voilà quelques tests ce soir

Albatros78 commented 3 years ago

Et encore... des erreurs... même pas sûr de mon commentaire ci avant !

Mais lorsque je réussissais systématiquement, je t'ai envoyé ma base et toi tu n'as pas réussi !!! curieux. Donc cela ne vient pas de la base... et si c'était un bug dans le code cela serait à chaque fois... Donc cela doit être un bug lié à une variable ou quelque chose qui change d'état et que le code n'attend pas !

Donc l'idée de session c'est peut être la piste....

Albatros78 commented 3 years ago

Après une bonne nuit je voulais regarder cela... Bugs et les sessions

Dans les sources y'a de quoi s'occuper: image

En utilisant Bugs, cookie image

Est-ce la bonne piste ?

Albatros78 commented 3 years ago

Avec la v1.8.5ac cela ne semble plus se produire. Mais la base n'est pas la même. Je me demande si cela n'était lié à un problème dans la base ???

Bon je ferme le ticket pour le moment... A réouvrir si cela se reproduit.