Improved progress display

Previously, the progress bar updated only after completing an entire table.

For large tables such as LIBARC, this could make the application appear to have stopped responding.

Phase 10 updates the interface while rows are being exported.
This commit is contained in:
Mark Gregory
2026-10-16 22:28:08 +01:00
parent 37043f316e
commit 788c3373d8
24 changed files with 268 additions and 164 deletions
+9
View File
@@ -0,0 +1,9 @@
# Phase 15 — Live MySQL Session Management
Adds session control to Administration → Client Connections. Select a session ID from `SHOW FULL PROCESSLIST`, then choose **Stop Query** (`KILL QUERY`) or **Disconnect Session** (`KILL CONNECTION`). Both actions require a destructive confirmation. The app validates the session ID as a positive UInt64, rejects terminating its own active MySQL connection, reports errors and refreshes the process list afterward. Search and five-second auto-refresh from Phase 13 remain available.
**Permissions:** MySQL privileges determine which sessions can be seen or terminated. Session IDs may be reused after a connection exits; always verify the selected session before confirming. A race remains possible between selecting an ID and execution. Terminating connections may interrupt work or roll back uncommitted transactions. There is no undo.
**Scope:** This phase focuses on session management. Advanced server configuration editing and performance diagnostics are not implemented here.
**Validation:** Source patch and ZIP integrity checked. No macOS Xcode compiler or live MySQL server available in this environment; test on a disposable MySQL instance before production use.