Show query plans in the Linux SQL editor
Maintainer antworten meist innerhalb von 1 Tag
@J2TeamNNL arbeitet bereits daran.
Seit 31.10.2026.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
Rechercherichtung
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.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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
- Vorherrschende Sprache
- Swift
- Sterne
- 6.2k
- Forks
- 412
- Ø Merge
- 3 Std. 56 Min.
- Gemergte PRs (30 T.)
- 669
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus TableProApp/TablePro
-
Linux: Remember Password fails silently when there is no default keyringEvtl. vergeben @datlechin hat das heute übernommen. Offenbug platform-linux
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
TableProApp/TablePro#4098 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug platform-linux
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 35/100
TableProApp/TablePro#4101 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug platform-linux
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
TableProApp/TablePro#4099 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement platform-macos
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
TableProApp/TablePro#4071 ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement platform-macos
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 66/100
TableProApp/TablePro#4070 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in TableProApp/TablePro
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 83/100
OneBusAway/vehicle-positions#260 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
eliasstravik/herdr-projects#789 · 1 Kommentar ·
-
follow-up needs-triage S3: minor
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 85/100
manaflow-ai/cmux#38032 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 67/100
arkavo-org/ArkavoKit#70 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
vorssaint/vorssaint-utils#3933 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 2 Tagen