You are currently reviewing an older revision of this page.

DRAFT KB-XXXX Tasks no longer available and InvalidShardIdAssignment errors displayed

Symptoms

In a new installation or an upgrade from an Appian version 17.4 or below to Appian 18.1 or above, you may encounter an error in your application server logs concerning an Invalid Shard Id Assignment like the following:

HH:MM:SS.mmm INFO [stdout] (Appian MultithreadedMapper - 1) YYYY-MM-DD HH:MM:SS.mmm [Appian MultithreadedMapper - 1] ERROR com.appiancorp.kougar.driver.ipc.IpcConnection - Could not initialize engine: [process-analytics1:Socket[addr=server01.dev.appian.com/12.13.14.15,port=5020,localport=51307],in,out,RW,LittleEndian (read), offset=29]
HH:MM:SS.mmm INFO [stdout] (Appian MultithreadedMapper - 1) com.appiancorp.kougar.driver.exceptions.Signal: InvalidShardIdAssignment

You may also see that all or certain sets of user tasks are no longer present in your Appian environment.

Cause

The hostname or IP address for each engine must match what is listed in the appian-topology.xml file configurations. This is particularly important for the execution and analytics engines, as they match their local information with the entries in the appian-topology.xml file on startup in order to determine which shard (engine id) they are (execution and analytics engines come in pairs in Appian and usually have 3 or more pairs running in an environment). If the shard values do not match, then the engine will fail to identify itself properly and result in the output above.

Action

First, ensure that the hostname of the server you are running the engines on matches the hostname value present in the appian-topology.xml file. If not, then you can correct this so that the topology file matches the server hostname. If your server has more than one valid hostname for the machine, then you must ensure that the hostname being used in the appian-toplogy.xml file is the very top, first most entry in your OS hosts file.

For Windows, the hosts file is typically located at: C:\Windows\System32\drivers\etc\hosts
For Linux, the hosts file location varies by Linux distro but can typically be found at: /etc/hosts

This will allow the Appian execution and analytics engines to communicate properly, detect their valid shard id, and propagate data between each other successfully.

Affected Versions

Appian 18.1 and 18.2

Last Reviewed

08-Aug-2018