Store Action Queues in an External Database

File System Connector provides asynchronous actions. Each asynchronous action has a queue to store requests until threads become available to process them. You can configure File System Connector to store these queues either in an internal database file, or in an external database hosted on a database server.

The default configuration stores queues in an internal database. Using this type of database does not require any additional configuration.

You might want to store the action queues in an external database so that several servers can share the same queues. In this configuration, sending a request to any of the servers adds the request to the shared queue. Whenever a server is ready to start processing a new request, it takes the next request from the shared queue. You can therefore distribute requests between components without configuring a Distributed Action Handler (DAH).

Note: You cannot use multiple servers to process a single request. Each request is processed by one server.

Note: Although you can configure several connectors to share the same action queues, the connectors do not share fetch task data. If you share action queues between several connectors and distribute synchronize actions, the connector that processes a synchronize action cannot determine which items the other connectors have retrieved. This might result in some documents being ingested several times.


Configure File System Connector

To configure File System Connector to use a shared action queue, follow these steps.

To store action queues in an external database

  1. Stop File System Connector, if it is running.
  2. Open the File System Connector configuration file.
  3. Find the relevant section in the configuration file:

  4. Set the following configuration parameters.

    AsyncStoreLibraryDirectory The path of the directory that contains the library to use to connect to the database. Specify either an absolute path, or a path relative to the server executable file.

    The name of the library to use to connect to the database. You can omit the file extension. The following libraries are available:

    • postgresAsyncStoreLibrary - for connecting to a PostgreSQL database.

    The connection string to use to connect to the database. The user that you specify must have permission to create tables in the database. For example:

    ConnectionString=Driver={PostgreSQL}; Server=; Port=9876; Database=SharedActions; Uid=user; Pwd=password; MaxVarcharSize=0;



    For example:

  5. If you are using the same database to store action queues for more than one type of component, set the following parameter in the [Actions] section of the configuration file.


    The group of components to share actions with. You can set this parameter to any string, but the value must be the same for each server in the group. For example, to configure several File System Connectors to share their action queues, set this parameter to the same value in every File System Connector configuration. HPE recommends setting this parameter to the name of the component.

    Caution: Do not configure different components (for example, two different types of connector) to share the same action queues. This will result in unexpected behavior.

    For example:
  6. Save and close the configuration file.

    When you start File System Connector it connects to the shared database.