Can SQL Developer's Cancel Button reliably stop server‑side processing across JDBC driver versions?
0 reputation · 28 Mar 2021, 11:31 UTC
SQL Developer’s worksheet toolbar offers a Cancel button that invokes JDBC Statement.cancel(). The effectiveness of this call varies with Oracle JDBC driver version and the type of statement being executed. In addition, the SQL Execution Timeout setting in Tools → Preferences → Database → Advanced imposes a client‑side limit; when exceeded, SQL Developer attempts to cancel the statement, but the server may still be busy until the next network round‑trip.
Because driver support for Statement.cancel() is not guaranteed for all operations, and because a cancelled statement does not automatically roll back the surrounding transaction, users observe inconsistent behavior across SQL Developer releases (e.g., 21.4 vs 23.1) and driver types.
Which driver versions provide reliable cancellation for long‑running SELECT and PL/SQL statements?
Does the SQL Execution Timeout always trigger a rollback of any open transaction when a statement is cancelled?