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.
1.2 KiB
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.