public abstract class QueryExecutorBase extends Object implements QueryExecutor
| Modifier and Type | Field and Description |
|---|---|
protected PGStream |
pgStream |
QUERY_BOTH_ROWS_AND_STATUS, QUERY_DESCRIBE_ONLY, QUERY_DISALLOW_BATCHING, QUERY_EXECUTE_AS_SIMPLE, QUERY_FORCE_DESCRIBE_PORTAL, QUERY_FORWARD_CURSOR, QUERY_NO_BINARY_TRANSFER, QUERY_NO_METADATA, QUERY_NO_RESULTS, QUERY_ONESHOT, QUERY_SUPPRESS_BEGIN| Modifier | Constructor and Description |
|---|---|
protected |
QueryExecutorBase(PGStream pgStream,
String user,
String database,
int cancelSignalTimeout,
Properties info) |
| Modifier and Type | Method and Description |
|---|---|
void |
abort()
Abort at network level without sending the Terminate message to the backend.
|
void |
addNotification(PGNotification notification) |
void |
addWarning(SQLWarning newWarning) |
CachedQuery |
borrowCallableQuery(String sql) |
CachedQuery |
borrowQuery(String sql) |
CachedQuery |
borrowQueryByKey(Object key) |
CachedQuery |
borrowReturningQuery(String sql,
String[] columnNames) |
void |
close()
Close this connection cleanly.
|
CachedQuery |
createQuery(String sql,
boolean escapeProcessing,
boolean isParameterized,
String... columnNames) |
CachedQuery |
createQueryByKey(Object key) |
Object |
createQueryKey(String sql,
boolean escapeProcessing,
boolean isParameterized,
String... columnNames) |
AutoSave |
getAutoSave() |
int |
getBackendPID()
Return the process ID (PID) of the backend server process handling this connection.
|
String |
getDatabase() |
Encoding |
getEncoding() |
HostSpec |
getHostSpec() |
PGNotification[] |
getNotifications()
Retrieve and clear the set of asynchronous notifications pending on this connection.
|
PreferQueryMode |
getPreferQueryMode() |
String |
getServerVersion()
Return the server version from the server_version GUC.
|
int |
getServerVersionNum()
Get a machine-readable server version.
|
boolean |
getStandardConformingStrings()
Returns whether the server treats string-literals according to the SQL standard or if it uses
traditional PostgreSQL escaping rules.
|
TransactionState |
getTransactionState()
Get the current transaction state of this connection.
|
String |
getUser() |
SQLWarning |
getWarnings()
Retrieve and clear the chain of warnings accumulated on this connection.
|
protected boolean |
hasNotifications() |
boolean |
isClosed()
Check if this connection is closed.
|
boolean |
isColumnSanitiserDisabled() |
boolean |
isFlushCacheOnDeallocate() |
boolean |
isReWriteBatchedInsertsEnabled() |
void |
releaseQuery(CachedQuery cachedQuery) |
protected abstract void |
sendCloseMessage() |
void |
sendQueryCancel()
Sends a query cancellation for this connection.
|
void |
setAutoSave(AutoSave autoSave) |
void |
setBackendKeyData(int cancelPid,
int cancelKey) |
void |
setEncoding(Encoding encoding) |
void |
setFlushCacheOnDeallocate(boolean flushCacheOnDeallocate)
By default, the connection resets statement cache in case deallocate all/discard all
message is observed.
|
void |
setServerVersion(String serverVersion) |
void |
setServerVersionNum(int serverVersionNum) |
void |
setStandardConformingStrings(boolean value) |
void |
setTransactionState(TransactionState state) |
boolean |
willHealOnRetry(SQLException e) |
protected boolean |
willHealViaReparse(SQLException e) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcreateFastpathParameters, createSimpleQuery, execute, execute, fastpathCall, fetch, getApplicationName, getIntegerDateTimes, getProtocolVersion, getReplicationProtocol, getTimeZone, processNotifies, processNotifies, setBinaryReceiveOids, setBinarySendOids, startCopy, wrapuseBinaryForReceive, useBinaryForSendprotected final PGStream pgStream
protected QueryExecutorBase(PGStream pgStream, String user, String database, int cancelSignalTimeout, Properties info) throws SQLException
SQLExceptionprotected abstract void sendCloseMessage()
throws IOException
IOExceptionpublic HostSpec getHostSpec()
getHostSpec in interface QueryExecutorpublic String getUser()
getUser in interface QueryExecutorpublic String getDatabase()
getDatabase in interface QueryExecutorpublic void setBackendKeyData(int cancelPid,
int cancelKey)
public int getBackendPID()
QueryExecutorgetBackendPID in interface QueryExecutorpublic void abort()
QueryExecutorabort in interface QueryExecutorpublic void close()
QueryExecutorclose in interface QueryExecutorpublic boolean isClosed()
QueryExecutorisClosed in interface QueryExecutorpublic void sendQueryCancel()
throws SQLException
QueryExecutorsendQueryCancel in interface QueryExecutorSQLException - if something goes wrong.public void addWarning(SQLWarning newWarning)
public void addNotification(PGNotification notification)
public PGNotification[] getNotifications() throws SQLException
QueryExecutorgetNotifications in interface QueryExecutorSQLException - if and error occurs while fetching notificationspublic SQLWarning getWarnings()
QueryExecutorgetWarnings in interface QueryExecutorpublic String getServerVersion()
QueryExecutorgetServerVersion in interface QueryExecutorpublic int getServerVersionNum()
QueryExecutorgetServerVersionNum in interface QueryExecutorpublic void setServerVersion(String serverVersion)
public void setServerVersionNum(int serverVersionNum)
public void setTransactionState(TransactionState state)
public void setStandardConformingStrings(boolean value)
public boolean getStandardConformingStrings()
QueryExecutorgetStandardConformingStrings in interface QueryExecutorpublic TransactionState getTransactionState()
QueryExecutorgetTransactionState in interface QueryExecutorpublic void setEncoding(Encoding encoding) throws IOException
IOExceptionpublic Encoding getEncoding()
getEncoding in interface QueryExecutorpublic boolean isReWriteBatchedInsertsEnabled()
isReWriteBatchedInsertsEnabled in interface QueryExecutorpublic final CachedQuery borrowQuery(String sql) throws SQLException
borrowQuery in interface QueryExecutorSQLExceptionpublic final CachedQuery borrowCallableQuery(String sql) throws SQLException
borrowCallableQuery in interface QueryExecutorSQLExceptionpublic final CachedQuery borrowReturningQuery(String sql, String[] columnNames) throws SQLException
borrowReturningQuery in interface QueryExecutorSQLExceptionpublic CachedQuery borrowQueryByKey(Object key) throws SQLException
borrowQueryByKey in interface QueryExecutorSQLExceptionpublic void releaseQuery(CachedQuery cachedQuery)
releaseQuery in interface QueryExecutorpublic final Object createQueryKey(String sql, boolean escapeProcessing, boolean isParameterized, String... columnNames)
createQueryKey in interface QueryExecutorpublic CachedQuery createQueryByKey(Object key) throws SQLException
createQueryByKey in interface QueryExecutorSQLExceptionpublic final CachedQuery createQuery(String sql, boolean escapeProcessing, boolean isParameterized, String... columnNames) throws SQLException
createQuery in interface QueryExecutorSQLExceptionpublic boolean isColumnSanitiserDisabled()
isColumnSanitiserDisabled in interface QueryExecutorpublic PreferQueryMode getPreferQueryMode()
getPreferQueryMode in interface QueryExecutorpublic AutoSave getAutoSave()
getAutoSave in interface QueryExecutorpublic void setAutoSave(AutoSave autoSave)
setAutoSave in interface QueryExecutorprotected boolean willHealViaReparse(SQLException e)
public boolean willHealOnRetry(SQLException e)
willHealOnRetry in interface QueryExecutorpublic boolean isFlushCacheOnDeallocate()
public void setFlushCacheOnDeallocate(boolean flushCacheOnDeallocate)
QueryExecutorsetFlushCacheOnDeallocate in interface QueryExecutorflushCacheOnDeallocate - true if statement cache should be reset when "deallocate/discard" message observedprotected boolean hasNotifications()
Copyright © 2017 PostgreSQL Global Development Group. All rights reserved.