Je suis sur la migration de mes instances Wazo 18.03 vers 19.12 (avant passage en 20.x)
J’ai un problème avec les schedules qui ne passent pas la migration, j’ai ceci dans wazo-ui après la migration (Menu Schedules)
Malheureusement, il n’y a pas d’information dans le log pour savoir d’où vient le soucis
Pour trouver le coupable, vous allez avoir besoin de vous connecter dans la BD
su postgres -c "psql asterisk"
select * from schedule;
Le plus simple pour trouver le coupable, c’est de demander chacune des schedule (avec l’ID ci-dessus) via wazo-ui (ou les API) jusqu’à ce que vous obteniez l’erreur
wazo-ui:
https://<wazo>/engine/schedules/<schedule-id>
Une fois que vous avez trouvé quel schedule est le coupable, vous pouvez essayer de l’effacer via les API (éviter de le faire via la BD)
Si vous voulez vraiment garder cette schedule et corriger le problème, il va me falloir chacun des objet (incall, group, queue, outcall) relié à cette schedule. Si c’est ce que vous voulez, laissez moi le savoir et je vous fournirez les requêtes pour le faire
Je viens de regarder la table schedule et tester les URL en passant les id.
Il y a trois entrées dans la table, et c’est seulement l’id 1 qui pose problème.
En voulant la supprimer, je vois qu’il y a une clé étrangère vers schedule_path, ce qui m’a permis de voir que le schedule est utilisé par un utilisateur, un groupe, et une file d’attente.
Par rapport à ceux qui fonctionnent, je ne vois pas d’incohérence (caractère spéciaux par exemple)
Pour les schedules que je peux éditer, j’ai constaté que la référence vers les fichiers audio n’était pas maintenu dans wazo-ui alors qu’ils apparaissent dans la base. Je me demande si la table n’aurait pas loupé un upgrade.
Je préférais que l’on trouve la solution pour corriger au cas où cela se produise durant les updates de mes instances de production.
Jamais testé cette procédure, seulement testé plusieurs fois le workaround décrit dans le ticket JIRA ci-dessus. Mais si ton upgrade a passé, ca devrait être bon
Est-ce que tu peux vérifier que le group et la queue qui est rattaché existe bel et bien? Le pathid est l’ID de la ressource. Si la ressource n’existe pas, tu peux supprimer l’entré dans la table schedule_path
Tu as essayer de la supprimer directement dans la DB ou passant par les API?
Je ne vois pas de quel relation tu parles? Dans les destinations d’heure ouvré fermé?
Depuis la base de données directement pour vérifier les implications de clé étrangère. L’utilisateur ne semble plus exister. J’ai supprimer l’entrée en base de données, et c’est tout bon de ce coté là.
Je parle du champs fallback_actionid qui contient le path local vers le fichier audio (fallback_action = sound)
J’en profite pour avoir une information, le changement de version en 19.12 a aussi changer le nom de mes interfaces réseaux sur ma debian (de eno1 vers eth0). Est-ce normal ?
Ouais supprimer la relation dans la table schedule_path n’est pas trop risqué pour supprimer les relations. Donc maintenant le list des schedules fonctionne?
Dans ce cas, ça se peut que l’interface ai un petit soucis d’affichage. Pour vérifier, tu peux utiliser un API
curl -X GET --header 'Accept: application/json' --header 'X-Auth-Token: <token>' 'https://<host>:9486/1.1/schedules?recurse=false'
Ou tu peux utiliser la documentation interactive sur le site:
Normal? Je sais pas, je crois avoir déjà observé ce comportement lors d’upgrade majeur. De mémoire j’ai pas souvenir qu’on ai fait de code et/ou travaux pour changer explicitement ça.
Sinon je te l’accorde que cette partie là est un peu dommage, car on a aucun moyen de changer cette valeur via des API.
La seule façon de faire est de le faire via la BD dans la table netiface
Pour l’interface dans la table dhcp elle peut etre configuré via l’api /dhcp
Après avoir modifié dans la DB il faut rouler les commandes:
xivo-create-config
xivo-update-config
Attention: c’est de mémoire, mais ça devrait te permettre d’avancer
Je vais ajouter un contrôle de cohérence des schedules dans mon script de mise à jour de 18.03 vers 19.12, pour supprimer l’erreur avant la mise à jour. J’ai constaté aussi des erreurs dans les scripts de post-traitement. Avant de travailler dessus, je voulais m’assurer d’avoir résolu ce problème qui peut avoir des conséquences dans l’évolution du schéma de la base de données.
Je te remercie pour ton aide. J’ouvrirai un autre thread si j’ai encore des problèmes.
EDIT : Je confirme qu’en corrigeant la table dans Wazo 18.03, le process de mise à jour vers wazo 19.12 fonctionne parfaitement.