ClickHouse / ClickHouse/dbt-clickhouse

dbt Core 2.0 parity: `dbt clone` support

Open
#730 0 comments 0 reactions 0 assignees View on GitHub
enhancement
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.