From: Shigeru Hanada Date: Thu, 24 Feb 2011 12:21:27 +0000 (+0900) Subject: Remove duplicated part of postgresql_fdw document. X-Git-Url: http://git.postgresql.org/gitweb/static/gitweb.js?a=commitdiff_plain;h=d598a919d38f53e501dd31a0afdd3513de7f4e96;p=users%2Fhanada%2Fpostgres.git Remove duplicated part of postgresql_fdw document. --- diff --git a/doc/src/sgml/postgresql-fdw.sgml b/doc/src/sgml/postgresql-fdw.sgml index 139ea9baa2..fc25e77a1c 100644 --- a/doc/src/sgml/postgresql-fdw.sgml +++ b/doc/src/sgml/postgresql-fdw.sgml @@ -33,9 +33,7 @@ Internally, it returns a pointer to a FdwRoutine object which has set of foreign-data wrapper API functions for handling - foreign scan on the external PostgreSQL server. Functions other than - Iterate can be NULL if the foreign-data wrapper has nothing to do in the - function. + foreign scan on the external PostgreSQL server. @@ -63,10 +61,10 @@ Connection management - The postgresql_fdw connects to a remote PostgreSQL server when - pgConnectServer() is called for the foreign server - first time in the local query. The connection is used by all of remote - queries which are executed on same remote PostgreSQL server. + The postgresql_fdw connects to a remote PostgreSQL server when a scan on + the server is requested first time in the local query. + The connection is used by all of remote queries which are executed on same + remote PostgreSQL server. If the local query uses multiple foreign PostgreSQL servers, connections are established for each server (not for each foreign table) and all of them will be closed at the end of the query. This also means that @@ -131,7 +129,7 @@ - Immutable operator + Non-volatile operator @@ -145,643 +143,7 @@ - Immutable function call - - - - - - - - - - - - - - - postgresql_fdw - - - postgresql_fdw - - - - The postgresql_fdw module provides foreign-data wrapper - handler function postgresql_fdw_handler which can be - used to access external PostgreSQL server via plain SQL. - - - - Functions - - - - - postgresql_fdw_handler() returns fdw_handler - - - - - postgresql_fdw_handler is a foreign-data wrapper - handler function which returns foreign-data wrapper handler for - PostgreSQL in type of fdw_handler. - Since fdw_hanlder is a pseudo type, postgresql_fdw_handler can't be - called from a SQL statement. - - - Internally, it returns a pointer to a FdwRoutine - object which has set of foreign-data wrapper API functions for handling - foreign scan on the external PostgreSQL server. Functions other than - Iterate can be NULL if the foreign-data wrapper has nothing to do in the - function. - - - - - - - - - - Details of postgresql_fdw - - - Connection options - - The postgresql_fdw retrieves connection information from generic options of - user mapping and foriegn server. All of generic options of these objects - are passed to PQconnectdbParams(). - - - Currently, all of the generic options which are allowed in the context of - user mapping and foreign server are libpq connection options. - - - - - Connection management - - The postgresql_fdw connects to a remote PostgreSQL server when - pgConnectServer() is called for the foreign server - first time in the local query. The connection is used by all of remote - queries which are executed on same remote PostgreSQL server. - If the local query uses multiple foreign PostgreSQL servers, connections - are established for each server (not for each foreign table) and all of - them will be closed at the end of the query. This also means that - connection pooling is not implemented in postgresql_fdw. - - - - - - - Transaction management - - The postgresql_fdw never emit transaction command such as BEGIN, - ROLLBACK and COMMIT. Thus, all SQL statements are - executed in each transaction when 'autocommit' was set to 'on'. - - - - - Retrieving all tuples at once - - The postgresql_fdw retrieves all of the result tuples at once via libpq - when the query was executed. Note that huge result set causes huge memory - consumption. The memory for the result set will be freed at the end of the - each query. - - - - - WHERE clause push-down - - The postgresql_fdw pushes some part of WHERE clause down to the remote - server, only if the evaluating the part of clause doesn't break the - consistency of the query. If a clause consist of elements below, the - clause will be pushed down. - - - push-down-able elements - - - - Element - Note - - - - - Constant value and column reference - - - - Array of push-down-able type - - - - Parameter of EXECUTE - - - - Bool expression such as A AND B or - A OR B - - - - Immutable operator - - - - DISTINCT operator, such as - A IS DISTINCT FROM B - - - - Scalar array operator, such as ALL(...) and - ANY(...) - - - - Immutable function call - - - - -
- -
- -
- -
- - - - postgresql_fdw - - - postgresql_fdw - - - - The postgresql_fdw module provides foreign-data wrapper - handler function postgresql_fdw_handler which can be - used to access external PostgreSQL server via plain SQL. - - - - Functions - - - - - postgresql_fdw_handler() returns fdw_handler - - - - - postgresql_fdw_handler is a foreign-data wrapper - handler function which returns foreign-data wrapper handler for - PostgreSQL in type of fdw_handler. - Since fdw_hanlder is a pseudo type, postgresql_fdw_handler can't be - called from a SQL statement. - - - Internally, it returns a pointer to a FdwRoutine - object which has set of foreign-data wrapper API functions for handling - foreign scan on the external PostgreSQL server. Functions other than - Iterate can be NULL if the foreign-data wrapper has nothing to do in the - function. - - - - - - - - - - Details of postgresql_fdw - - - Connection options - - The postgresql_fdw retrieves connection information from generic options of - user mapping and foriegn server. All of generic options of these objects - are passed to PQconnectdbParams(). - - - Currently, all of the generic options which are allowed in the context of - user mapping and foreign server are libpq connection options. - - - - - Connection management - - The postgresql_fdw connects to a remote PostgreSQL server when - pgConnectServer() is called for the foreign server - first time in the local query. The connection is used by all of remote - queries which are executed on same remote PostgreSQL server. - If the local query uses multiple foreign PostgreSQL servers, connections - are established for each server (not for each foreign table) and all of - them will be closed at the end of the query. This also means that - connection pooling is not implemented in postgresql_fdw. - - - - - - - Transaction management - - The postgresql_fdw never emit transaction command such as BEGIN, - ROLLBACK and COMMIT. Thus, all SQL statements are - executed in each transaction when 'autocommit' was set to 'on'. - - - - - Retrieving all tuples at once - - The postgresql_fdw retrieves all of the result tuples at once via libpq - when the query was executed. Note that huge result set causes huge memory - consumption. The memory for the result set will be freed at the end of the - each query. - - - - - WHERE clause push-down - - The postgresql_fdw pushes some part of WHERE clause down to the remote - server, only if the evaluating the part of clause doesn't break the - consistency of the query. If a clause consist of elements below, the - clause will be pushed down. - - - push-down-able elements - - - - Element - Note - - - - - Constant value and column reference - - - - Array of push-down-able type - - - - Parameter of EXECUTE - - - - Bool expression such as A AND B or - A OR B - - - - Immutable operator - - - - DISTINCT operator, such as - A IS DISTINCT FROM B - - - - Scalar array operator, such as ALL(...) and - ANY(...) - - - - Immutable function call - - - - -
- -
- -
- -
- - - - postgresql_fdw - - - postgresql_fdw - - - - The postgresql_fdw module provides foreign-data wrapper - handler function postgresql_fdw_handler which can be - used to access external PostgreSQL server via plain SQL. - - - - Functions - - - - - postgresql_fdw_handler() returns fdw_handler - - - - - postgresql_fdw_handler is a foreign-data wrapper - handler function which returns foreign-data wrapper handler for - PostgreSQL in type of fdw_handler. - Since fdw_hanlder is a pseudo type, postgresql_fdw_handler can't be - called from a SQL statement. - - - Internally, it returns a pointer to a FdwRoutine - object which has set of foreign-data wrapper API functions for handling - foreign scan on the external PostgreSQL server. Functions other than - Iterate can be NULL if the foreign-data wrapper has nothing to do in the - function. - - - - - - - - - - Details of postgresql_fdw - - - Connection options - - The postgresql_fdw retrieves connection information from generic options of - user mapping and foriegn server. All of generic options of these objects - are passed to PQconnectdbParams(). - - - Currently, all of the generic options which are allowed in the context of - user mapping and foreign server are libpq connection options. - - - - - Connection management - - The postgresql_fdw connects to a remote PostgreSQL server when - pgConnectServer() is called for the foreign server - first time in the local query. The connection is used by all of remote - queries which are executed on same remote PostgreSQL server. - If the local query uses multiple foreign PostgreSQL servers, connections - are established for each server (not for each foreign table) and all of - them will be closed at the end of the query. This also means that - connection pooling is not implemented in postgresql_fdw. - - - - - - - Transaction management - - The postgresql_fdw never emit transaction command such as BEGIN, - ROLLBACK and COMMIT. Thus, all SQL statements are - executed in each transaction when 'autocommit' was set to 'on'. - - - - - Retrieving all tuples at once - - The postgresql_fdw retrieves all of the result tuples at once via libpq - when the query was executed. Note that huge result set causes huge memory - consumption. The memory for the result set will be freed at the end of the - each query. - - - - - WHERE clause push-down - - The postgresql_fdw pushes some part of WHERE clause down to the remote - server, only if the evaluating the part of clause doesn't break the - consistency of the query. If a clause consist of elements below, the - clause will be pushed down. - - - push-down-able elements - - - - Element - Note - - - - - Constant value and column reference - - - - Array of push-down-able type - - - - Parameter of EXECUTE - - - - Bool expression such as A AND B or - A OR B - - - - Immutable operator - - - - DISTINCT operator, such as - A IS DISTINCT FROM B - - - - Scalar array operator, such as ALL(...) and - ANY(...) - - - - Immutable function call - - - - -
- -
- -
- -
- - - - postgresql_fdw - - - postgresql_fdw - - - - The postgresql_fdw module provides foreign-data wrapper - handler function postgresql_fdw_handler which can be - used to access external PostgreSQL server via plain SQL. - - - - Functions - - - - - postgresql_fdw_handler() returns fdw_handler - - - - - postgresql_fdw_handler is a foreign-data wrapper - handler function which returns foreign-data wrapper handler for - PostgreSQL in type of fdw_handler. - Since fdw_hanlder is a pseudo type, postgresql_fdw_handler can't be - called from a SQL statement. - - - Internally, it returns a pointer to a FdwRoutine - object which has set of foreign-data wrapper API functions for handling - foreign scan on the external PostgreSQL server. Functions other than - Iterate can be NULL if the foreign-data wrapper has nothing to do in the - function. - - - - - - - - - - Details of postgresql_fdw - - - Connection options - - The postgresql_fdw retrieves connection information from generic options of - user mapping and foriegn server. All of generic options of these objects - are passed to PQconnectdbParams(). - - - Currently, all of the generic options which are allowed in the context of - user mapping and foreign server are libpq connection options. - - - - - Connection management - - The postgresql_fdw connects to a remote PostgreSQL server when - pgConnectServer() is called for the foreign server - first time in the local query. The connection is used by all of remote - queries which are executed on same remote PostgreSQL server. - If the local query uses multiple foreign PostgreSQL servers, connections - are established for each server (not for each foreign table) and all of - them will be closed at the end of the query. This also means that - connection pooling is not implemented in postgresql_fdw. - - - - - - - Transaction management - - The postgresql_fdw never emit transaction command such as BEGIN, - ROLLBACK and COMMIT. Thus, all SQL statements are - executed in each transaction when 'autocommit' was set to 'on'. - - - - - Retrieving all tuples at once - - The postgresql_fdw retrieves all of the result tuples at once via libpq - when the query was executed. Note that huge result set causes huge memory - consumption. The memory for the result set will be freed at the end of the - each query. - - - - - WHERE clause push-down - - The postgresql_fdw pushes some part of WHERE clause down to the remote - server, only if the evaluating the part of clause doesn't break the - consistency of the query. If a clause consist of elements below, the - clause will be pushed down. - - - push-down-able elements - - - - Element - Note - - - - - Constant value and column reference - - - - Array of push-down-able type - - - - Parameter of EXECUTE - - - - Bool expression such as A AND B or - A OR B - - - - Immutable operator - - - - DISTINCT operator, such as - A IS DISTINCT FROM B - - - - Scalar array operator, such as ALL(...) and - ANY(...) - - - - Immutable function call + Non-volatile function call