# Local metadata and caching

Boomi Console uses a cached approach to avoid roundtrips to the (by nature slow\[er]) API.

### Local Metadata

Boomi Console saves all metadata responses to the file system `ProjectDir\Metatdata`. This data is there for you, only. It is not used for caching, but sometimes it is helpful to look-up or search in these XML files.

<figure><img src="/files/N7MeOCPkpZHfa9d5xJg1" alt=""><figcaption></figcaption></figure>

### SQLite DB

A SQLite database in your workspace directory is used to cache persist API responses. This DB caches the Boom Component Metadata API respones by Component ID and Version.

{% hint style="info" %}
The Component metadata is versioned (on save) and\
it does not change for a specific version (immutable).
{% endhint %}

Based on this "assumption" we can store/cache Component metadata under their ID plus Version. Whenever there is a request for a specific component version, a database look-up takes place. If it fails, an API request is sent and the database updated with the response.

<figure><img src="/files/WCuv7YPainTug9Ca2mya" alt=""><figcaption><p>SQLIte <code>bc.db.sqLite</code></p></figcaption></figure>

All requests which do not specify and explcit component version are directly sent to the API, because the most recent version of the component is required directly from the repository.

You can delete this file at any time, however it'll be created again when you run a command.

### In-Memory cache

There is an in-memroy cache is available only during a single commands execution. It is there to buffer already read component to avoid reading the same component twice during the same run. The cache cannot be modfied or cleared.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://boomi.markusschmidt.pro/boomi-console/library/how-to/local-metadata-and-caching.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
