Chromeleon 7 Discovery Web Service might not work properly in an environment with high number of large-sized resources stored in data vaults. Reason is the size of the messages that are received by the Discovery Web Service is limited.

To confirm, that you are facing this issue:

Procedure

  1. Navigate to C:\Program Data\Thermo\Chromeleon\Log.
  2. Open the DiscoveryAccess.log.
  3. Search the log for the message "Grpc.Core.RpcException: Status(StatusCode="ResourceExhausted", Detail="Received message exceeds the maximum configured message size.")".

To fix this issue there are two possible solutions, that can be performed during installation or upgrade of the Chromeleon:

  • Change the stream page size of the message that can be received by the server.
  • Change the maximum size (in bytes) of the message that can be received by the server.

Change the stream page size of the message

The “StreamPageSize” parameter defines the maximum number of records that are sent within one message. The default value of this parameter is 500.

Procedure

  1. Navigate to C:\Program Files (x86)\Thermo\Chromeleon\bin\DiscoveryServerWeb.
  2. Open the file appsettings.json.
  3. In the “Server Settings” section add the parameter “StreamPageSize” with a numeral value smaller than 500, for example 50.

Change the maximum size of the message

This option defines the maximum message size limit (in bytes) that can be received by the Discovery Web Service server. Increasing its value allows the server to receive larger messages but can negatively impact memory consumption. When the size is set to null, the message size is unlimited. The default value of the “MaxReceiveMessageSize” parameter is 4 MB (4*1024*1024 bytes).

Procedure

  1. Navigate to C:\ProgramData\Dionex\Chromeleon.
  2. Open the file config-data.sqlite.
  3. Change the value of parameter “MaxReceiveMessageSize” in bytes.