Aller au contenu

Problème de connexion : le Dispatch renvoie vers un service qui n’existe pas

Redirection du Dispatch vers un Intranet Server inexistant : purger les tables SERVER_URI et SERVER_STATUS.

Sommaire

Plus de contenu Planisware

Introduction

Dans un environnement Planisware Application Server possédant plusieurs Intranet Server (en cluster), le processus Dispatch va renvoyer tout nouvel utilisateur vers l’Intranet Server (IS) le moins chargé. Il peut arriver que la redirection échoue, car l’url cible n’est pas disponible (souvent une erreur 500, service indisponible). En général cela arrive lorsque les processus Intranet Server ne sont pas encore totalement démarrés. Si le problème persiste, même après le démarrage complet des IS, il faut vérifier la pertinence de l’URL renvoyée par le Dispatch.

Analyse de l'URL de redirection

Pour vérifier quelle est l’URL de redirection, il suffit de consulter le fichier de log du processus Dispatch.

Si l’URL renvoyée fait référence à un service (nom de server + port) incohérent cela signifie que la base de données a gardé en mémoire des informations erronnées. La section suivante explique comment le fonctionnement natif des processus Planisware peut être à l’origine de cette anomalie.

Principe de fonctionnement du Dispatch pour la redirection

  1. Chaque processus IS, Dispatch ou Timecard lorsqu’il est démarré va le signaler en ajoutant des informations le concernant en base de données dans les tables suivantes :
    – SERVER_URI
    – SERVER_STATUS
    ​
  2. Le Dispatch va lire ces informations pour savoir vers quel processus il peut rediriger les connexions utilisateurs. Il va alors envoyer une redirection vers l’un des services disponibles. Dans notre exemple ce sera une URL du type « http://my_serveur:8000/BASE_DEV/OPX/my_server:8400/HOME »
  3. Lors de l’arrêt d’un processus les informations relatives à ce processus sont purgées dans les tables SERVER_URI et SERVER_STATUS.

Problème en cas d’export de la base de données services démarrés

Lorsque l’on exporte la base de données P5 lorsque les services sont démarrés, les tables

Pour s’en assurer il suffit d’arrêter tous les services Planisware

Solution rapide pour éviter ce problème

Une solution rapide et efficace pour résoudre ce problème est de forcer la purge des tables SERVER_URI et SERVER_STATUS services Planisware arrêtés (Intranet Server, Dispatch et Timecard). Au redémarrage seuls les processus « vraiment » démarrés apparaitront et le Dispatch ne tentera pas de rediriger des utilisateurs vers des URL erronés.

Sous Oracle cette purge se traduit par les simples commandes SQL suivantes à exécuter sur le schéma de bases de données de l’application :

SQL> TRUNCATE TABLE SERVER_URI;
SQL> TRUNCATE TABLE SERVER_STATUS;

Bloom PPM, votre partenaire Planisware Enterprise et Orchestra

Bloom PPM, partenaire officiel Planisware, vous accompagne sur Planisware Enterprise et Planisware Orchestra, intégration, migration, maintenance, audit et formation. De l’entreprise de taille moyenne à la multinationale, nous adaptons chaque solution à vos besoins réels. Vos besoins, notre expertise.

2017
partenaire Planisware depuis
8+ ans
d'expérience Planisware en moyenne dans nos équipes
ETI → grands comptes
clients accompagnés