import org.postgresql.core.*;
/*
- * $Id: Connection.java,v 1.41 2002/02/26 02:15:54 davec Exp $
+ * $Id: Connection.java,v 1.42 2002/03/05 18:00:36 davec Exp $
*
* This abstract class is used by org.postgresql.Driver to open either the JDBC1 or
* JDBC2 versions of the Connection class.
switch (beresp)
{
case 'Z':
-
- try
- {
- pg_stream.SendChar('Q');
- pg_stream.SendChar(' ');
- pg_stream.SendChar(0);
- pg_stream.flush();
- } catch (IOException e) {
- throw new PSQLException("postgresql.con.ioerror",e);
- }
break;
case 'E':
case 'N':
* <p>The lifetime of a QueryExecutor object is from sending the query
* until the response has been received from the backend.
*
- * $Id: QueryExecutor.java,v 1.6 2001/11/25 23:26:56 barry Exp $
+ * $Id: QueryExecutor.java,v 1.7 2002/03/05 18:01:27 davec Exp $
*/
public class QueryExecutor
int fqp = 0;
boolean hfr = false;
+ int lastMessage = 0;
synchronized (pg_stream)
{
receiveFields();
break;
case 'Z': // backend ready for query, ignore for now :-)
+ if ( lastMessage == 'Z' )
+ {
+ try
+ {
+ pg_stream.SendChar('Q');
+ pg_stream.SendChar(' ');
+ pg_stream.SendChar(0);
+ pg_stream.flush();
+ } catch (IOException e) {
+ throw new PSQLException("postgresql.con.ioerror",e);
+ }
+ fqp++;
+ }
+
break;
default:
throw new PSQLException("postgresql.con.type",
new Character((char) c));
}
+ lastMessage = c;
}
return connection.getResultSet(connection, statement, fields, tuples, status, update_count, insert_oid, binaryCursor);
}