# Announcing the release of 2.0.0 of CHT Sync

**URL:** <https://forum.communityhealthtoolkit.org/t/announcing-the-release-of-2-0-0-of-cht-sync/4869>\
**Category:** Releases\
**Created:** [April 16, 2025, 2:10pm UTC](https://forum.communityhealthtoolkit.org/t/announcing-the-release-of-2-0-0-of-cht-sync/4869 "2025-04-16T14:10:15Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![twier](https://communityhealthtoolkit.b-cdn.net/user_avatar/forum.communityhealthtoolkit.org/twier/32/2856_2.png) [@twier](https://forum.communityhealthtoolkit.org/u/twier)\
**Post date:** [April 16, 2025, 2:10pm UTC](https://forum.communityhealthtoolkit.org/t/announcing-the-release-of-2-0-0-of-cht-sync/4869/1 "2025-04-16T14:10:15Z")

</div>

_We’re excited to announce the release of 2.0.0 of CHT Sync_

## Highlights

### Improved dbt Performance Tuning

[CHT Sync V2](https://github.com/medic/cht-sync/releases/tag/v2.0.0) introduces several configuration options to improve `dbt` performance and control for large-scale deployments:

- **Multithreading** : `dbt` can run independent models concurrently using threads.
- **Batch Processing** : Large inserts can be broken up into smaller batches to improve perfromance and observability.
- **Multi-container dbt Support** : Instead of running all models in one container, V2 allows splitting dbt workloads across multiple containers. Each container can be configured with a `DBT_SELECTOR` (e.g., `package:cht_pipeline_base` or `tag:custom-models`) to run only a subset of models.

[Read the full tuning guide »](https://docs.communityhealthtoolkit.org/hosting/analytics/tuning-dbt/)

### Support for multiple CHT instances and multiple CouchDB databases

- CHT Sync V2 adds support for syncing multiple CHT instances, multiple CouchDB databases, to one PostgreSQL database.
- This was possible in V1, but the source, host, and database were not separated into their own columns.

### Changes to docker compose and local developemnt

- V2 makes it easier to [develop dbt models locally](https://docs.communityhealthtoolkit.org/hosting/analytics/setup-docker-compose/#local), without requiring a separate dbt configuration, or a remote github repository.
- The docker compose files in V2 were changed to use profiles instead of separate docker compose files to handle different deployments environments.

## Upgrade Notes

See [upgrading notes](https://docs.communityhealthtoolkit.org/hosting/analytics/setup-docker-compose/#upgrading) for detailed upgrade instructions.

### Breaking changes

V2 added the source column to the couchdb table, and several other columns to the metadata table. To add these columns log in to the database and run this sql.

### Configuration Changes

- Add `DBT_THREADS`, `DBT_BATCH_SIZE`, and `DBT_SELECTOR` to tune performance and customize dbt execution.
- When using Kubernetes, update your `values.yaml` to define multiple dbt containers with `dbt_selectors`.
