matrixorigin / matrixorigin/matrixone

[Feature Request]: Native table TTL (automatic expiry)

Open
#24,552 1 comment 0 reactions 1 assignee Claimed by @LeftHandCold View on GitHub
kind/feature severity/s0
Dominant language
Go
Stars
1.9k
Forks
311
Avg merge
1d 3h
Merged PRs (30d)
768

Description

**Version:** `8.0.30-MatrixOne-v3.0.11` (MatrixOne v3.0.11)

No native TTL clause exists for automatically expiring old rows/partitions. This is important for high-volume, short-lived data (logs / traces / metrics) where you want cheap automatic retention instead of expensive DELETEs.

**Reproduce**
```sql
CREATE TABLE t(id INT, ts TIMESTAMP) TTL ts + INTERVAL 7 DAY; -- SQL parser error
```

**Request**
Support a native `TTL` clause (time-based row/partition expiry).

---
_Found while evaluating MatrixOne git4data / SQL as a data-versioning & agent-trace backend. Version: `8.0.30-MatrixOne-v3.0.11` (MatrixOne v3.0.11)._

## Testing background
Found while evaluating MatrixOne as a **high-volume trace / telemetry backend**: such data is short-lived (days to weeks) and needs cheap automatic retention rather than expensive periodic `DELETE`s.

## Why it matters (expected purpose)
Native `TTL` (time-based row/partition expiry) is essential for observability / log / trace workloads to bound storage cost automatically. Today retention must be done with manual deletes or external schedulers.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.