ClickHouse / ClickHouse/dbt-clickhouse
dbt Core 2.0 parity: `dbt clone` support
- Dominant language
- Python
- Stars
- 362
- Forks
- 177
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 8
Description
Sub-issue of #660. `dbt clone` (state-based cloning) for the ClickHouse adapter in dbt Core 2.0. Not on main; 5 integration tests fail.
**Status legend:**
- ✅ implemented — merged and working on dbt-core 2.0 origin/main
- 🟡 partial — partly working on origin/main; Notes say what works vs fails
- 🚧 in progress — implemented in an open PR (linked in Notes)
- 🔴 not started — not working anywhere
| Feature | What it means | Status | Notes |
|---|---|---|---|
| **`dbt clone`** | *(overall)* | 🔴 | Not on main; 5 tests fail |
| `clone.sql` (`can_clone_table` / `create_or_replace_clone`) | MergeTree tables cloned via `CREATE OR REPLACE TABLE … CLONE AS`; distributed/non-MergeTree fall back to view; MV target-table cloning | 🔴 | Not on main |
| `--state` / `--defer-state` arg parity | Engine-side state handling used by clone (`--resource-type` flags, dbt-core-exact deferral error wording) | 🔴 | Not on main |
Contributor guide
Research direction
Start by reading clone.sql and running the five failing integration tests against dbt Core 2.0 origin/main. Trace the existing adapter behavior for dbt clone and the --state/--defer-state arguments, using parent issue #660 for context. Done means the listed clone cases and argument parity work on main and the five tests pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clickhouse, python
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100