Package io.trino.plugin.postgresql
Class PostgreSqlClient
- java.lang.Object
-
- io.trino.plugin.jdbc.BaseJdbcClient
-
- io.trino.plugin.postgresql.PostgreSqlClient
-
- All Implemented Interfaces:
JdbcClient
public class PostgreSqlClient extends BaseJdbcClient
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.trino.plugin.jdbc.BaseJdbcClient
BaseJdbcClient.TopNFunction
-
-
Field Summary
-
Fields inherited from class io.trino.plugin.jdbc.BaseJdbcClient
connectionFactory, identifierQuote, jdbcTypesMappedToVarchar
-
-
Constructor Summary
Constructors Constructor Description PostgreSqlClient(BaseJdbcConfig config, PostgreSqlConfig postgreSqlConfig, ConnectionFactory connectionFactory, TypeManager typeManager, IdentifierMapping identifierMapping)
-
Method Summary
-
Methods inherited from class io.trino.plugin.jdbc.BaseJdbcClient
addColumn, applyQueryTransformations, beginCreateTable, beginInsertTable, buildInsertSql, buildInsertSql, buildSql, commitCreateTable, copyTableSchema, createSchema, createSchemaSql, createTable, createTableSql, dropColumn, dropSchema, dropSchemaSql, dropTable, escapeNamePattern, execute, execute, filterSchema, finishInsertTable, generateTemporaryTableName, getColumnDefinitionSql, getColumns, getConnection, getConnection, getForcedMappingToVarchar, getIdentifierMapping, getInteger, getSchemaNames, getSplits, getTableHandle, getTableNames, getTableProperties, getTables, getTableSchemaName, getTableStatistics, implementJoin, listSchemas, mapToUnboundedVarchar, prepareQuery, prepareQuery, preventTextualTypeAggregationPushdown, quoted, quoted, quoted, renameColumn, renameSchema, renameSchemaSql, renameTable, rollbackCreateTable, supportsLimit, toColumnMappings, truncateTable
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.trino.plugin.jdbc.JdbcClient
abortReadConnection, getSystemTable, getTableScanRedirection, schemaExists, setTableProperties
-
-
-
-
Constructor Detail
-
PostgreSqlClient
@Inject public PostgreSqlClient(BaseJdbcConfig config, PostgreSqlConfig postgreSqlConfig, ConnectionFactory connectionFactory, TypeManager typeManager, IdentifierMapping identifierMapping)
-
-
Method Detail
-
createTable
public void createTable(ConnectorSession session, ConnectorTableMetadata tableMetadata)
- Specified by:
createTablein interfaceJdbcClient- Overrides:
createTablein classBaseJdbcClient
-
renameTable
protected void renameTable(ConnectorSession session, String catalogName, String schemaName, String tableName, SchemaTableName newTable)
- Overrides:
renameTablein classBaseJdbcClient
-
getPreparedStatement
public PreparedStatement getPreparedStatement(Connection connection, String sql) throws SQLException
- Specified by:
getPreparedStatementin interfaceJdbcClient- Overrides:
getPreparedStatementin classBaseJdbcClient- Throws:
SQLException
-
getTableTypes
protected Optional<List<String>> getTableTypes()
- Overrides:
getTableTypesin classBaseJdbcClient
-
getColumns
public List<JdbcColumnHandle> getColumns(ConnectorSession session, JdbcTableHandle tableHandle)
- Specified by:
getColumnsin interfaceJdbcClient- Overrides:
getColumnsin classBaseJdbcClient
-
toColumnMapping
public Optional<ColumnMapping> toColumnMapping(ConnectorSession session, Connection connection, JdbcTypeHandle typeHandle)
-
toWriteMapping
public WriteMapping toWriteMapping(ConnectorSession session, Type type)
-
implementAggregation
public Optional<JdbcExpression> implementAggregation(ConnectorSession session, AggregateFunction aggregate, Map<String,ColumnHandle> assignments)
-
supportsAggregationPushdown
public boolean supportsAggregationPushdown(ConnectorSession session, JdbcTableHandle table, List<AggregateFunction> aggregates, Map<String,ColumnHandle> assignments, List<List<ColumnHandle>> groupingSets)
-
supportsTopN
public boolean supportsTopN(ConnectorSession session, JdbcTableHandle handle, List<JdbcSortItem> sortOrder)
- Specified by:
supportsTopNin interfaceJdbcClient- Overrides:
supportsTopNin classBaseJdbcClient
-
topNFunction
protected Optional<BaseJdbcClient.TopNFunction> topNFunction()
- Overrides:
topNFunctionin classBaseJdbcClient
-
isTopNGuaranteed
public boolean isTopNGuaranteed(ConnectorSession session)
- Specified by:
isTopNGuaranteedin interfaceJdbcClient- Overrides:
isTopNGuaranteedin classBaseJdbcClient
-
limitFunction
protected Optional<BiFunction<String,Long,String>> limitFunction()
- Overrides:
limitFunctionin classBaseJdbcClient
-
isLimitGuaranteed
public boolean isLimitGuaranteed(ConnectorSession session)
- Specified by:
isLimitGuaranteedin interfaceJdbcClient- Overrides:
isLimitGuaranteedin classBaseJdbcClient
-
delete
public OptionalLong delete(ConnectorSession session, JdbcTableHandle handle)
- Specified by:
deletein interfaceJdbcClient- Overrides:
deletein classBaseJdbcClient
-
isSupportedJoinCondition
protected boolean isSupportedJoinCondition(JdbcJoinCondition joinCondition)
- Overrides:
isSupportedJoinConditionin classBaseJdbcClient
-
setColumnComment
public void setColumnComment(ConnectorSession session, JdbcTableHandle handle, JdbcColumnHandle column, Optional<String> comment)
-
-