dolthub / dolthub/dolt

Need tests for use of functions in CHECK constraints

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

Description

We recently enabled the use of deterministic functions in CHECK constraints.

But the current implementation relies on the proper string serialization of function expressions.

But early testing indicates that at least some functions have a string serialization format that isn't round-trip capable, which makes it possible to create tables that break at INSERT time.

We need a test that guarantees that every deterministic function is usable in CHECK constraint.

We also need to tag all dolt-specific functions (DOLT_CHECKOUT etc) as non-deterministic.

Contributor guide

No contributing guide indexed for this repository

Research direction

Locate the CHECK-constraint handling, function-expression string serialization, and deterministic-function definitions in the repository, then inspect how existing constraint tests are organized. Done means coverage verifies every deterministic function can be used in a CHECK constraint without failing at INSERT time, and Dolt-specific functions such as DOLT_CHECKOUT are tagged non-deterministic.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.