Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[Rust-dataplane] Rust greeting must advertise SERVER_STATUS_AUTOCOMMIT like Go

未关闭 适合新手
#1,343 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
78/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
活跃
技术栈
go, rust

调研方向

阅读 rust/crates/dataplane/src/session_engine.rs 第 4106–4107 行附近的内容,并将 greeting 状态与 pkg/proxy/net/mysql.go 和 pkg/proxy/net/server_status.go 进行比较。先追踪 Rust greeting 如何构造其状态字;当它通告 SERVER_STATUS_AUTOCOMMIT (0x0002),与 Go 一致时,即为完成。payload 提到了 RED 证据运行,但没有测试命令。

由索引模型根据 Issue 内容生成。

描述

migration:bb7133-tiproxy

Migrated from bb7133/tiproxy#179. Original author: wjhuang2016; created: 2026-09-02T12:42:38Z; source body SHA-256: 321b93f72ae2b2ab282bad5eeeb61ce5825d130ea30d0988fc98e85127b185d0.

Rust dataplane rewrite parity/functional RED
  • Snapshot commit: 60efdf5e6e8226423df85033534ad748ccb129db
  • Run: run.tiproxy-rust-dataplane.greeting-autocommit-status.20260902.RED
Problem

Go pnet.Status = ServerStatusAutocommit(0x0002); Rust session_engine.rs send_greeting uses StatusFlags::from_bits_retain(0)

Claim

Rust's proxy-synthesized initial greeting must include SERVER_STATUS_AUTOCOMMIT in its server status word.

Source anchors
  • pkg/proxy/net/mysql.go:29 Status=ServerStatusAutocommit
  • pkg/proxy/net/server_status.go:9 ServerStatusAutocommit=0x0002
  • rust/crates/dataplane/src/session_engine.rs:4106-4107 greeting status 0
Boundary
  • Before: Rust sends greeting status 0x0000
  • After: Go sends greeting status 0x0002 (AUTOCOMMIT)
Local evidence
  • run.tiproxy-rust-dataplane.greeting-autocommit-status.20260902.RED
主要语言
Go
星标
73
派生
40
平均合并
15 小时 43 分钟
30 天内合并 PR
9

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

pingcap/tiproxy 的其他 Issue

查看 pingcap/tiproxy 的全部 Issue

相似的 Issue

更多 Go Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。