mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-30 19:00:29 +08:00
ba8e20a6dd
> > I'm looking at pg_dump/common.c:flagInhAttrs() and suspect that it can > > be more or less rewritten completely, and probably should to get rigth > > all the cases mentioned in the past attisinherited discussion. Is this > > desirable for 7.3? It can probably be hacked around and the rewrite > > kept for 7.4, but I think it will be much simpler after the rewrite. > > If it's a bug then it's fair game to fix in 7.3. But keep in mind that > pg_dump has to behave at least somewhat sanely when called against older > servers ... will your rewrite behave reasonably if the server does not > offer attinhcount values? Nah. I don't think it's worth it: I had forgotten that older versions should be supported. I just left the code as is and added a version-specific test. This patch allows pg_dump to dump correctly local definition of columns. In particular, CREATE TABLE p1 (f1 int, f2 int); CREATE TABLE p2 (f1 int); CREATE TABLE c () INHERITS (p1, p2); ALTER TABLE ONLY p1 DROP COLUMN f1; CREATE TABLE p3 (f1 int); CREATE TABLE c2 (f1 int) INHERITS (p3); Will be dumped as CREATE TABLE p1 (f2 int); CREATE TABLE p2 (f1 int); CREATE TABLE c (f1 int) INHERITS (p1, p2); CREATE TABLE c2 (f1 int) INHERITS (p3); (Previous version will dump CREATE TABLE c () INHERITS (p1, p2) CREATE TABLE c2 () INHERITS (p3) ) Alvaro Herrera |
||
---|---|---|
config | ||
contrib | ||
doc | ||
src | ||
aclocal.m4 | ||
configure | ||
configure.in | ||
COPYRIGHT | ||
GNUmakefile.in | ||
HISTORY | ||
INSTALL | ||
Makefile | ||
README | ||
register.txt |
PostgreSQL Database Management System ===================================== This directory contains the source code distribution of the PostgreSQL database management system. PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions. This distribution also contains several language bindings, including C, Perl, Python, and Tcl, as well as drivers for JDBC. As of v7.3, the ODBC and C++ interfaces have been moved over to the PostgreSQL Projects WebSite @ http://gborg.postgresql.org. See the file INSTALL for instructions on how to build and install PostgreSQL. That file also lists supported operating systems and hardware platforms and contains information regarding any other software packages that are required to build or run the PostgreSQL system. Changes between all PostgreSQL releases are recorded in the file HISTORY. Copyright and license information can be found in the file COPYRIGHT. A comprehensive documentation set is included in this distribution; it can be read as described in the installation instructions. The latest version of this software may be obtained at ftp://ftp.postgresql.org/pub/. For more information look at our web site located at http://www.postgresql.org/.