Show query plans in the Linux SQL editor
メンテナーはふだん 1 日以内に返信
@J2TeamNNL がすでに取り組んでいます。
2026年10月31日 から。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
調査の方向性
Start with linux/crates/core/src/statement/statement_builder.rs and the macOS reference features/explain-visualization.mdx; the issue also points to linux/ROADMAP.md. Trace how statements and results are built in the Linux app, then compare each engine’s required plan format. Done means Explain renders a PostgreSQL join as a tree with row estimates and works across the listed engines.
索引モデルが issue の本文から書いたものです。
説明
Problem
The Linux app has no way to show a query plan. The user can type EXPLAIN in the editor and read the plan as rows of text, but nothing draws it, and each engine has its own format: text or JSON on PostgreSQL and MySQL, XML on SQL Server, a list of steps on SQLite. The only EXPLAIN in the code is a unit test (linux/crates/core/src/statement/statement_builder.rs:166).
It is not on the roadmap: neither the backlog nor the Ideas list (linux/ROADMAP.md, Backlog, Ideas) mentions it. The macOS app draws plans (features/explain-visualization.mdx).
Proposed solution
- Explain in the editor, for the statement at the cursor or the selection, with a shortcut.
- Each engine runs its own form:
EXPLAIN (FORMAT JSON)on PostgreSQL,EXPLAIN FORMAT=JSONon MySQL and MariaDB,SET SHOWPLAN_XML ONon SQL Server,EXPLAINon ClickHouse, andEXPLAIN QUERY PLANon SQLite. - The plan shows as a tree of nodes in a results entry, built from GTK list widgets, with each node's estimated rows and cost where the engine gives them, and the costliest node marked.
- Explain Analyze, where the engine has it, runs the statement, so it asks first. On a statement that writes, it is refused on a read-only connection and otherwise runs inside a transaction that is rolled back.
- The raw plan text stays one click away, for copying.
Done means: on PostgreSQL, Explain on a join shows a tree with row estimates, and the same action works on the other engines with their own plan formats.
Alternatives considered
Run EXPLAIN by hand in the editor and read the rows.
Platform
Linux
Related database type
N/A / General
- 主要言語
- Swift
- スター
- 6.2k
- フォーク
- 412
- 平均マージ
- 3時間 56分
- マージ済み PR(30日)
- 669
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
TableProApp/TablePro のほかの issue
-
Linux: Remember Password fails silently when there is no default keyring対応中かも @datlechin が今日担当しました。 オープンbug platform-linux
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
TableProApp/TablePro#4098 ·
メンテナーはふだん 1 日以内に返信
-
bug platform-linux
難易度 2/5 1〜3時間 初心者へのやさしさ 35/100
TableProApp/TablePro#4101 ·
メンテナーはふだん 1 日以内に返信
-
bug platform-linux
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
TableProApp/TablePro#4099 · コメント 3 件 ·
メンテナーはふだん 1 日以内に返信
-
enhancement platform-macos
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
TableProApp/TablePro#4071 ·
メンテナーはふだん 1 日以内に返信
-
enhancement platform-macos
難易度 3/5 1〜2日 初心者へのやさしさ 66/100
TableProApp/TablePro#4070 ·
メンテナーはふだん 1 日以内に返信
TableProApp/TablePro の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
OneBusAway/vehicle-positions#260 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
eliasstravik/herdr-projects#789 · コメント 1 件 ·
-
follow-up needs-triage S3: minor
難易度 1/5 1〜3時間 初心者へのやさしさ 85/100
manaflow-ai/cmux#38032 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 67/100
arkavo-org/ArkavoKit#70 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
vorssaint/vorssaint-utils#3933 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信