Skip to content

Migrate Mysql protocol and NIO to Rust - #1246

Merged
hnwyllmm merged 1 commit into
masterfrom
task/2026071400117432064
Aug 4, 2026
Merged

Migrate Mysql protocol and NIO to Rust#1246
hnwyllmm merged 1 commit into
masterfrom
task/2026071400117432064

Conversation

@hnwyllmm

@hnwyllmm hnwyllmm commented Aug 3, 2026

Copy link
Copy Markdown
Member

Task Description

Migrate mysql protocol and nio networking part to Rust.

Solution Description

A new folder named rust is created under the codebase of seekdb, where a crate sql-nio can be found. This crate implements mysql protocol for encoding and decoding mysql packets and nio part with mio. In the original version of seekdb, linux uses SO_REUSEPORT for scaling incoming connections whereas mac/windows delivers all connections to only one thread. In this migration, all platform uses one thread to accept incoming connections and dispatch them to multiple io threads.

Passed Regressions

This version shows same performance on sysbench compared to baseline.

Upgrade Compatibility

Other Information

Release Note

@hnwyllmm

hnwyllmm commented Aug 3, 2026

Copy link
Copy Markdown
Member Author

The mapping Dima issue is [Migrate seekdb to Rust](

@hnwyllmm
hnwyllmm force-pushed the task/2026071400117432064 branch from 0a0da23 to f66c6d2 Compare August 4, 2026 03:25
@hnwyllmm
hnwyllmm merged commit 1e0c246 into oceanbase:master Aug 4, 2026
2 of 3 checks passed
@hnwyllmm
hnwyllmm deleted the task/2026071400117432064 branch August 4, 2026 03:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants