Specifically, this code in QueryExecutor:
case 'N': // Error Notification
connection.addWarning(pgStream.ReceiveString(connection.getEncoding()));
break;
At that point the ResultSet doesn't necc. exist, but the Statement does. There are a few
approaches to fixing this:
1) Clear the warnings before executing the query
2) Appeneding the warnings to the Statement
3) Keeping our own warnings chain, then appending the whole chain after the ResultSet is
created.
Personally I perfer #3, but could there be a case where the ResultSet isn't created
because of some other error, and then we don't want to lose the warning?