dolthub / dolthub/dolt

lock head during DDL operations

Open
#5,323 2 comments 0 reactions 0 assignees View on GitHub
enhancement sql
Dominant language
Go
Stars
24.4k
Forks
873
Avg merge
1d 8h
Merged PRs (30d)
120

Description

Some DDL operations require rewriting the entire table, which is very expensive and long running. It's possible that during this process other writers could modify the table being rewritten, which could lead to incorrect results in some cases or make the DDL operation fail in others. It's almost never intentional to continue modifying data on a particular head concurrent with a long-running DDL change.

Dolt needs to lock a particular branch head from other writers during long running DDL operations, like other databases do, to prevent this scenario.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the long-running DDL operations and the writer paths for a branch head. Determine how a head can be locked during table-rewriting DDL and how competing writers are handled. Done means concurrent writers cannot modify the affected head while the DDL operation is in progress, preventing incorrect results or failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, sql
Domain
databases
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.