apache / apache/kvrocks

[OSPP 2024] Tracking issues: Enhance Kvrocks Transaction Syntax

Open
#2,331 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
C++
Stars
4.4k
Forks
658
Avg merge
1d 20h
Merged PRs (30d)
10

Description

### Search before asking

- [X] I had searched in the [issues](https://github.com/apache/kvrocks/issues) and found no similar issues.

### Motivation

This issue is about part of the Open Source Promotion Plan(OSPP): Enhance Kvrocks Transaction Syntax
link: https://summer-ospp.ac.cn/org/prodetail/249430512?lang=en&list=pro

This project hopes to attempt to enhance kvrocks transactions in the following areas:
1. Provide complete isolation semantics for single commands
2. Optimize transactions for Multi/Exec and Lua commands
3. Optimize blocking commands such as BLPOP
4. (Optional) Add optimistic transaction mode

Since multiple issues may be involved, we can use this issues to track them uniformly:

In the process of updating, relevant issues and plans will be gradually added.

- [x] https://github.com/apache/kvrocks/issues/2310
- [x] https://github.com/apache/kvrocks/issues/2162
- [ ] Optimize transactions for Multi/Exec commands
- [ ] Optimize blocking commands such as BLPOP
- [ ] (Optional) Add optimistic transaction mode

Anyone is welcome to provide suggestions

### Solution

_No response_

### Are you willing to submit a PR?

- [ ] I'm willing to submit a PR!

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading the linked issues #2310 and #2162, then review the remaining checklist items for Multi/Exec, blocking commands such as BLPOP, and optimistic transactions. The issue names no files, tests, or entry points; completion would require the remaining transaction work and corresponding plans or issues to be tracked here.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, redis
Domain
databases, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.