ChemLocator troubleshooting

    Failed to ping the specified node

    This error is most likely due to the fact that the communication with Elasticsearch server has been stopped.


    1. Make sure that the server where Chemlocator docker images are installed and running can access Elasticsearch service:
      • curl -XGET http://[ES server address]:9200
    2. If the server cannot access the Elasticsearch service but can connect to the server where the service is installed, please restart Elasticsearch service:
      • if you are running a Docker instance restart the container
      • if Elasticsearch is running as a service directly on your Linux or Windows server, please restart the service
    3. If the above did not fix the issue, restarting ChemLocator container could help in fixing this issue:
      • restart ChemLocator containers (e.g. running docker-compose restart in the folder where the configuration files of ChemLocator were installed)
    4. If the above did not fix the issue please open a support ticket and provide diagnostic logs from the time when the error occured.

    No results found

    If documents are not found when searching check the following:

    1. Your user has the permissions to view the documents
      • if your user has been assigned to a new group you might have to log out and log back in into ChemLocator
      • if the document permissions ahve been changed since the last crawl a new incremental crawl must be ran. During a crawl, the doucment permissions are indexed for query search performance and to reduce traffic with cloud content sources
    2. Check if the content sources have finished indexing and that there is data for the queried content source(s)
    3. Check if the license is valid. If the license has expired, please change the license according to the how to guide

    Indexing is stuck

    If indexing is not porgressing after some considerable time it could be possible that some ChemLocator processes have been closed by the host due to insufficient memory (this can be checked by cheking the host logs, e.g. output from command journalctl | grep "Out of memory": Out of memory: Kill process 19165 (dotnet) score 695 or sacrifice child).

    If this is the case an additional check can be performed by running the following command on the Docker host server (replace chemlocator_chemlocator_1 with the one that is running on your server):

    docker container top chemlocator_chemlocator_1

    The expected output should contain a process with the following command: dotnet /app/ChemLocator.dll server -r 23.

    If this process is missing please restart ChemLocator containers:

    docker-compose stop
    docker-compose start

    After the container starts, the indexing process will resume and the documents that previously did not finish indexing will be indexed again.

    Substructure search error

    When the following error occurs during "Substructure search”, you need to start jchem-psql service manually:

    Search error

    1. Open a command prompt and find the id of jpc-chemlocator container:
      $ docker ps -a

      CONTAINER ID   IMAGE                                                               COMMAND                  CREATED       STATUS        PORTS                                                                          NAMES
      d5876a3561a1   "/"          11 days ago   Up 11 hours>5432/tcp, :::3051->5432/tcp                                      dev_jpc_1
      46c128c929ff                               "/usr/local/bin/dumb…"   5 weeks ago   Up 9 hours>5601/tcp, :::5601->5601/tcp                                      dev_kibana_1
      04815b3428bb   osixia/openldap:1.2.5                                               "/container/tool/run…"   5 weeks ago   Up 11 hours>389/tcp, :::389->389/tcp,>636/tcp, :::636->636/tcp   dev_ldap_1
      88804b6953de                 "/usr/local/bin/dock…"   5 weeks ago   Up 9 hours>9200/tcp, :::9200->9200/tcp, 9300/tcp                            dev_elasticsearch_1
    2. Then enter into the container by issuing the following command:
      $ docker exec -it d5876a3561a1 /bin/bash

    3. Check if service is really not running:
      $ service –status-all

      [ - ] cron
      [ - ] dbus
      [ ? ]
      [ - ] jchem-psql
      [ + ] postgresql
      [ - ] procps
      [ - ] sysstat
      [ - ] x11-common
    4. As it looks service is indeed not running, so let’s start it with:
      $ service jchem-psql start