The JDBC driver's regression test suite has revealed a change in behavior introduced by the hot standy patch. Previously when a client sent a cancel request on an idle connection, nothing happened. Now it sends an error message "ERROR: canceling statement due to user request". This confuses the driver's protocol handling and it thinks that the error message is for the next statement issued.

Attached is a test case.

Kris Jurka
import java.sql.*;

public class Cancel {
        public static void main(String args[]) throws Exception {
                Class.forName("org.postgresql.Driver");
                Connection conn = 
DriverManager.getConnection("jdbc:postgresql://localhost:5851/jurka", "jurka", 
"");

                Statement stmt = conn.createStatement();
                stmt.cancel();
                ResultSet rs = stmt.executeQuery("SELECT 1");

        }
}

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to