# Pipeline database configuration

These items are used to configure and pre-populate the [pipeline module](transformer-transformer-modules.md#standard-modules) database. This is an in-memory database that pipelines can use to communicate with each other.

To get more detail, just click on the item you’re interested in.

## database-dumpfile

`database-dumpfile` specifies a file and optional directory path to which the pipeline database is dumped when Transformer exits.

The file name and directory path can contain the `%r`, `%a` and `%h` parameters. At run time:

* `%r` is replaced by the root directory ([`application-root`](../datasource/datasource-run-time-environment-configuration.md#application-root)) under which the Transformer runs
* `%a` is replaced by the Transformer’s DataSource [`application-name`](../datasource/datasource-run-time-environment-configuration.md#application-name).
* `%h` is replaced by the host machine’s `hostname`.

**Syntax:** `database-dumpfile <file-path-and-name>`

**Type:** string

**Default value:** (none) If you don’t explicitly specify a file, the pipeline database isn’t dumped when Transformer exits.

## database-insert

`database-insert` specifies a triplet of values that are inserted into the pipeline database when Transformer starts up, but before any pipelines are loaded. Use a separate `database-insert` item for each triplet to be inserted in the database.

**Syntax:** `database-insert <primary-key> <secondary-key> <value>`

**Type:** array of strings

**Default value:** (none)

**Example:**

```
database-insert "/XNAS" "CloseType" "next"
```

This example pre-populates the database with the market close configuration for the XNAS exchange.

**💡 TIP**\
You can also access this database from your pipeline code; see the "Configuration database access" page in the Modules section of the _[Transformer Pipeline SDK (API)](https://docs.caplin.com/developer/api/transformer_pipeline_sdk/latest/)_.

## database-log-options

`database-log-options` specifies the types of database activity to be recorded in the pipeline activity log (see [`logfile`](transformer-pipeline-configuration.md#logfile) in [Pipeline configuration](transformer-pipeline-configuration.md)). The log records of database activity are at `[log-level](transformer-pipeline-configuration.md#log-level) INFO`.

**Syntax:** `database-log-options <option-value>`

**Type:** string

**Default value:** `all` (all pipeline database access is logged)

**Values accepted:**

| Log option name | Description |
| --- | --- |
| `all` | Log all pipeline database access. |
| `put` | Log database insertions. |
| `get` | Log database retrievals. |
| `delete` | Log deletions. |
| `counter` | Log changes to atomic counters. (See `database.increment_atomic_counter()`, `database.decrement_atomic_counter()` and related functions on the "Configuration database access" page in the Modules section of the _[Transformer Pipeline SDK](https://docs.caplin.com/developer/api/transformer_pipeline_sdk/latest/)_.) |

You can specify multiple values using the `|` operator, as in this example:

```
database-log-options put|delete
```

which logs database insertions and deletions, but not retrievals or changes to atomic counters.

---

**See also:**

* Reference: [Pipeline configuration](transformer-pipeline-configuration.md)
* Reference: [Pipeline threads configuration](transformer-pipeline-threads-configuration.md)
* Reference: [Transformer Pipeline SDK (API)](https://docs.caplin.com/developer/api/transformer_pipeline_sdk/latest/) (particularly the "Configuration database access" page in the Modules section.)
