Chromeleon 7 Discovery Web Service peut ne pas fonctionner correctement dans un environnement avec un nombre élevé de ressources de grande taille stockées dans des coffres-forts de données. La raison est que la taille des messages reçus par Discovery Web Service est limitée.

Pour confirmer que vous êtes confronté à ce problème :

Procédure

  1. Naviguez vers C:\Program Data\Thermo\Chromeleon\Log.
  2. Ouvrez DiscoveryAccess.log.
  3. Recherchez le message dans le journal “Grpc.Core.RpcException: Status(StatusCode="ResourceExhausted", Detail="Received message exceeds the maximum configured message size.")”.

Pour résoudre ce problème, il existe deux solutions possibles, pouvant être effectuées lors de l’installation ou de la mise à niveau de Chromeleon :

  • Modifiez la taille de la page de flux du message pouvant être reçu par le serveur.
  • Modifiez la taille maximale (en octets) du message pouvant être reçu par le serveur.

Modification de la taille de la page de flux du message

Le paramètre “StreamPageSize” définit le nombre maximum d’enregistrements envoyés dans un message. La valeur par défaut de ce paramètre est “500”.

Procédure

  1. Naviguez vers C:\Program Files (x86)\Thermo\Chromeleon\bin\DiscoveryServerWeb.
  2. Ouvrez le fichier appsettings.json.
  3. Dans la section “Server Settings” (Paramètres du serveur), ajoutez le paramètre “StreamPageSize” avec une valeur numérique inférieure à 500, par exemple 50.

Modification de la taille maximale du message

Cette option définit la taille maximale du message (en octets) pouvant être reçu par le serveur Discovery Web Service. L’augmentation de sa valeur permet au serveur de recevoir des messages plus volumineux, mais peut avoir un impact négatif sur la consommation de mémoire. Lorsque la taille est définie sur “null”, la taille du message est illimitée. La valeur par défaut du paramètre “MaxReceiveMessageSize” est 4 Mo (4*1024*1024 octets).

Procédure

  1. Naviguez vers C:\ProgramData\Dionex\Chromeleon.
  2. Ouvrez le fichier config-data.sqlite.
  3. Modifiez la valeur du paramètre “MaxReceiveMessageSize” en octets.