clockworklabs / clockworklabs/SpacetimeDB
Proper SQL support roadmap
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 25.2k
- Forks
- 1.1k
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 46
Description
Abstract
Since SpacetimeDB claims to be an SQL-compatible database, I hereafter propose a checklist on improving (and hopefully completing) the SQL querying & data manipulation support in it.
Note: I decided not to add all the already-implemented features in order to minimize necrobumping noise; feel free to do so if desired.
Syntax
- Timestamp literals: #2450
- #2842
- Tuples: #2843
- Arrays: #2849
- Enum literals: #3434
- #2844
NULLliteral: #3606
Compliance
- Meta: #2993
- Mixed projections: #2968
- Option compatibility: #3607
BYTEAliteral escape format: #3756SELECTbehavior over PG: #3770- #3771
Features
FORMAT: #1437EXPLAIN: #2058#2075- #4793
ORDER BY: #2457- Foreign keys: #2608
- #2670
OUTER JOIN: #2892:ownerparameter: #3229- Non-index joins: #3241
ALTER: #3272- Parametrized views: #3489
- #3791
COPY OUT#3928RETURNING: #3935SELECT 1OFFSETGROUP BYCAST()/CONVERT()- Implicit joins
- Nested queries
Disclaimer: most of the linked PRs are mine. I'm not particularly trying to be pushy, but I found it desirable to categorize all the mess those make and perhaps help the maintainers get them over with imposing less friction.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the SQL compatibility documentation and the linked issues in the syntax, compliance, and features sections. Choose a separately scoped unchecked item only after reviewing its linked issue or pull request; done would mean that item has been implemented and its SQL behavior verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- sql
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100