[postgresql/f16] Update to PostgreSQL 9.1.0

Tom Lane tgl at fedoraproject.org
Mon Sep 12 06:28:57 UTC 2011


commit 91e424f2893ccacf370fdb56c538b1cf3d075f31
Author: Tom Lane <tgl at redhat.com>
Date:   Mon Sep 12 02:05:56 2011 -0400

    Update to PostgreSQL 9.1.0

 .gitignore                      |    4 +-
 Makefile.regress                |   19 +++----
 README.rpm-dist                 |   19 ++++---
 postgresql-gcc-workaround.patch |  111 ---------------------------------------
 postgresql-logging.patch        |   25 +++++----
 postgresql-perl-5.14.patch      |   41 --------------
 postgresql-perl-rpath.patch     |   14 +++---
 postgresql-pgctl-timeout.patch  |   33 ------------
 postgresql.spec                 |   84 ++++++++++++++++++++++++-----
 sources                         |    4 +-
 10 files changed, 112 insertions(+), 242 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 6e08abe..c957579 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,3 @@
+/postgresql-9.1.0.tar.bz2
+/postgresql-9.1.0-US.pdf
 /postgresql-9.0.4.tar.bz2
-/postgresql-9.0.4-US.pdf
-/postgresql-8.4.6.tar.bz2
diff --git a/Makefile.regress b/Makefile.regress
index 1de43c4..43c7ba4 100644
--- a/Makefile.regress
+++ b/Makefile.regress
@@ -3,9 +3,6 @@
 # in an RPM installation
 #
 
-# default encoding
-MULTIBYTE = SQL_ASCII
-
 # maximum simultaneous connections for parallel tests
 MAXCONNOPT =
 ifdef MAX_CONNECTIONS
@@ -20,6 +17,12 @@ endif
 
 srcdir := .
 
+REGRESS_OPTS += --dlpath=.
+
+pg_regress_locale_flags = $(if $(ENCODING),--encoding=$(ENCODING)) $(NOLOCALE)
+
+pg_regress_installcheck = ./pg_regress --inputdir=$(srcdir) --psqldir='/usr/bin' $(pg_regress_locale_flags)
+
 # Test input and expected files.  These are created by pg_regress itself, so we
 # don't have a rule to create them.  We do need rules to clean them however.
 ifile_list := $(subst .source,, $(notdir $(wildcard $(srcdir)/input/*.source)))
@@ -33,10 +36,10 @@ abs_builddir := $(shell pwd)
 check: installcheck-parallel
 
 installcheck: cleandirs
-	./pg_regress --schedule=$(srcdir)/serial_schedule --dlpath=. --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE)
+	$(pg_regress_installcheck) $(REGRESS_OPTS) --schedule=$(srcdir)/serial_schedule $(EXTRA_TESTS)
 
 installcheck-parallel: cleandirs
-	./pg_regress --schedule=$(srcdir)/parallel_schedule --dlpath=. --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE)
+	$(pg_regress_installcheck) $(REGRESS_OPTS) --schedule=$(srcdir)/parallel_schedule $(MAXCONNOPT) $(EXTRA_TESTS)
 
 # The tests command the server to write into testtablespace and results.
 # On a SELinux-enabled system this will fail unless we mark those directories
@@ -52,12 +55,6 @@ runcheck: check
 runtest: installcheck
 runtest-parallel: installcheck-parallel
 
-bigtest: cleandirs
-	./pg_regress --schedule=$(srcdir)/serial_schedule --dlpath=. --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE) numeric_big
-
-bigcheck: cleandirs
-	./pg_regress --schedule=$(srcdir)/parallel_schedule --dlpath=. --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE) numeric_big
-
 
 ##
 ## Clean up
diff --git a/README.rpm-dist b/README.rpm-dist
index 2795c31..c7cb21f 100644
--- a/README.rpm-dist
+++ b/README.rpm-dist
@@ -1,6 +1,6 @@
 README.rpm-dist
 -----------------------------------------------------------------------------
-Version 9.0, for the PostgreSQL 9.0 RPM set.
+Version 9.1, for the PostgreSQL 9.1 RPM set.
 Devrim Gündüz <devrim at gunduz.org>
 -----------------------------------------------------------------------------
 
@@ -23,9 +23,9 @@ This document exists to explain the layout of the RPMs for PostgreSQL, to
 describe various RPM specifics, and to document special features found
 in the RPMset.
 
-This document is written to be applicable to version 9.0 of PostgreSQL,
+This document is written to be applicable to version 9.1 of PostgreSQL,
 which is the current version of the RPMs as of this writing. More to the 
-point, versions prior to 9.0 are not documented here.
+point, versions prior to 9.1 are not documented here.
 
 This document is intended for use only with the RPMs supplied in Red Hat
 Enterprise Linux, CentOS and Fedora.  Note that there are also "PGDG"
@@ -68,9 +68,9 @@ or login as 'postgres' you will need to set a password using passwd.
 
 UPGRADING AN INSTALLATION
 -----------------------------------------------------------------------------
-For a minor-version upgrade (such as 9.0.1 to 9.0.2), just install the
+For a minor-version upgrade (such as 9.1.1 to 9.1.2), just install the
 new RPMs; there's usually nothing more to it than that.  Upgrading
-across a major release of PostgreSQL (for example, from 8.3.x to 8.4.x)
+across a major release of PostgreSQL (for example, from 9.0.x to 9.1.x)
 requires more effort.
 
 If you are upgrading across more than one major release of PostgreSQL
@@ -82,10 +82,10 @@ and run the dump file through psql to restore your data.
 
 In some major releases, the RPMs also support in-place upgrade from the
 immediately previous major release.  Currently, you can upgrade in-place
-from 8.4.x to 9.0.x.  This is much faster than a dump and reload.
+from 9.0.x to 9.1.x.  This is much faster than a dump and reload.
 To do an in-place upgrade:
 * shut down the old postmaster ("systemctl stop postgresql.service")
-* optionally make a backup of /var/lib/pgsql/data/
+* optionally make a backup of /var/lib/pgsql/data/ (recommended!)
 * install the new version's RPMs (install all the ones you had before,
   plus postgresql-upgrade)
 * as root, run "postgresql-setup upgrade"
@@ -93,7 +93,8 @@ To do an in-place upgrade:
   customizations you had before (your old configuration files are in
   /var/lib/pgsql/data-old/)
 * as root, run "systemctl start postgresql.service"
-* postgresql-upgrade can be removed after the update is complete
+* the postgresql-upgrade RPM can be removed after the update is complete,
+  as can /var/lib/pgsql/data-old/
 
 NOTE: The in-place upgrade process is new and relatively poorly tested,
 so if your data is critical it's a really good idea to make a tarball
@@ -290,7 +291,7 @@ uuid		1	#build contrib/uuid-ossp
 To use these defines, invoke a rebuild like this:
 rpmbuild --rebuild --define 'python 0' --define 'tcl 0' \
 	--define 'test 0' --define 'runselftest 0' --define 'kerberos 0' \
-	postgresql-9.0.2-1.src.rpm
+	postgresql-9.1.2-1.src.rpm
 This line would disable the python, tcl, and test subpackages, disable the
 regression test run during build, and disable kerberos support.
 
diff --git a/postgresql-logging.patch b/postgresql-logging.patch
index c6a2b2c..a051014 100644
--- a/postgresql-logging.patch
+++ b/postgresql-logging.patch
@@ -1,10 +1,10 @@
 Default to stderr-based logging with a week's worth of daily logfiles.
 
 
-diff -Naur postgresql-9.0.1.orig/src/backend/utils/misc/postgresql.conf.sample postgresql-9.0.1/src/backend/utils/misc/postgresql.conf.sample
---- postgresql-9.0.1.orig/src/backend/utils/misc/postgresql.conf.sample	2010-10-01 10:25:44.000000000 -0400
-+++ postgresql-9.0.1/src/backend/utils/misc/postgresql.conf.sample	2010-10-11 11:53:34.650971490 -0400
-@@ -262,17 +262,17 @@
+diff -Naur postgresql-9.1rc1.orig/src/backend/utils/misc/postgresql.conf.sample postgresql-9.1rc1/src/backend/utils/misc/postgresql.conf.sample
+--- postgresql-9.1rc1.orig/src/backend/utils/misc/postgresql.conf.sample	2011-08-18 17:23:13.000000000 -0400
++++ postgresql-9.1rc1/src/backend/utils/misc/postgresql.conf.sample	2011-08-18 18:39:39.697526799 -0400
+@@ -279,7 +279,7 @@
  					# requires logging_collector to be on.
  
  # This is used when logging to stderr:
@@ -13,28 +13,29 @@ diff -Naur postgresql-9.0.1.orig/src/backend/utils/misc/postgresql.conf.sample p
  					# into log files. Required to be on for
  					# csvlogs.
  					# (change requires restart)
- 
+@@ -287,11 +287,11 @@
  # These are only used if logging_collector is on:
--#log_directory = 'pg_log'		# directory where log files are written,
-+log_directory = 'pg_log'		# directory where log files are written,
+ #log_directory = 'pg_log'		# directory where log files are written,
  					# can be absolute or relative to PGDATA
 -#log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'	# log file name pattern,
 +log_filename = 'postgresql-%a.log'	# log file name pattern,
  					# can include strftime() escapes
--#log_truncate_on_rotation = off		# If on, an existing log file of the
-+log_truncate_on_rotation = on		# If on, an existing log file of the
+ #log_file_mode = 0600			# creation mode for log files,
+ 					# begin with 0 to use octal notation
+-#log_truncate_on_rotation = off		# If on, an existing log file with the
++log_truncate_on_rotation = on		# If on, an existing log file with the
  					# same name as the new log file will be
  					# truncated rather than appended to.
  					# But such truncation only occurs on
-@@ -280,9 +280,9 @@
+@@ -299,9 +299,9 @@
  					# or size-driven rotation.  Default is
  					# off, meaning append to existing files
  					# in all cases.
 -#log_rotation_age = 1d			# Automatic rotation of logfiles will
 +log_rotation_age = 1d			# Automatic rotation of logfiles will
  					# happen after that time.  0 disables.
--#log_rotation_size = 10MB		# Automatic rotation of logfiles will 
-+log_rotation_size = 0			# Automatic rotation of logfiles will 
+-#log_rotation_size = 10MB		# Automatic rotation of logfiles will
++log_rotation_size = 0			# Automatic rotation of logfiles will
  					# happen after that much log output.
  					# 0 disables.
  
diff --git a/postgresql-perl-rpath.patch b/postgresql-perl-rpath.patch
index 374e223..d28a502 100644
--- a/postgresql-perl-rpath.patch
+++ b/postgresql-perl-rpath.patch
@@ -7,16 +7,16 @@ So work around it by adding an rpath spec to plperl.so (only).
 Per bug #162198.
 
 
-diff -Naur postgresql-9.0.1.orig/src/pl/plperl/GNUmakefile postgresql-9.0.1/src/pl/plperl/GNUmakefile
---- postgresql-9.0.1.orig/src/pl/plperl/GNUmakefile	2010-10-01 10:25:44.000000000 -0400
-+++ postgresql-9.0.1/src/pl/plperl/GNUmakefile	2010-10-11 11:50:19.933972244 -0400
-@@ -40,6 +40,9 @@
+diff -Naur postgresql-9.1rc1.orig/src/pl/plperl/GNUmakefile postgresql-9.1rc1/src/pl/plperl/GNUmakefile
+--- postgresql-9.1rc1.orig/src/pl/plperl/GNUmakefile	2011-08-18 17:23:13.000000000 -0400
++++ postgresql-9.1rc1/src/pl/plperl/GNUmakefile	2011-08-18 18:42:43.653729368 -0400
+@@ -43,6 +43,9 @@
  
  SHLIB_LINK = $(perl_embed_ldflags)
  
 +# Force rpath to be used even though we disable it everywhere else
 +SHLIB_LINK += $(rpath)
 +
- REGRESS_OPTS = --dbname=$(PL_TESTDB) --load-language=plperl  --load-language=plperlu
- REGRESS = plperl plperl_trigger plperl_shared plperl_elog plperl_util plperl_init plperlu
- # if Perl can support two interpreters in one backend, 
+ REGRESS_OPTS = --dbname=$(PL_TESTDB) --load-extension=plperl  --load-extension=plperlu
+ REGRESS = plperl plperl_trigger plperl_shared plperl_elog plperl_util plperl_init plperlu plperl_array
+ # if Perl can support two interpreters in one backend,
diff --git a/postgresql.spec b/postgresql.spec
index 1e18d70..08e3211 100644
--- a/postgresql.spec
+++ b/postgresql.spec
@@ -52,9 +52,9 @@
 
 Summary: PostgreSQL client programs
 Name: postgresql
-%global majorversion 9.0
-Version: 9.0.4
-Release: 8%{?dist}
+%global majorversion 9.1
+Version: 9.1.0
+Release: 1%{?dist}
 # Update this whenever F15 gets rebased; it must be NVR-greater than F15 pkg:
 %global first_systemd_version 9.0.4-8
 
@@ -67,8 +67,8 @@ Url: http://www.postgresql.org/
 # This SRPM includes a copy of the previous major release, which is needed for
 # in-place upgrade of an old database.  In most cases it will not be critical
 # that this be kept up with the latest minor release of the previous series.
-%global prevversion 8.4.6
-%global prevmajorversion 8.4
+%global prevversion 9.0.4
+%global prevmajorversion 9.0
 
 Source0: ftp://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2
 # The PDF file is generated by generate-pdf.sh, which see for comments
@@ -89,9 +89,6 @@ Source15: postgresql-bashprofile
 Patch1: rpm-pgsql.patch
 Patch2: postgresql-logging.patch
 Patch3: postgresql-perl-rpath.patch
-Patch4: postgresql-gcc-workaround.patch
-Patch5: postgresql-perl-5.14.patch
-Patch6: postgresql-pgctl-timeout.patch
 
 BuildRequires: perl(ExtUtils::MakeMaker) glibc-devel bison flex gawk
 BuildRequires: perl(ExtUtils::Embed), perl-devel
@@ -315,9 +312,6 @@ system, including regression tests and benchmarks.
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
 
 # We used to run autoconf here, but there's no longer any real need to,
 # since Postgres ships with a reasonably modern configure script.
@@ -415,8 +409,15 @@ rm -f src/tutorial/GNUmakefile
 	make MAX_CONNECTIONS=5 check
 	make clean
 	popd
+	pushd src/pl
+	make MAX_CONNECTIONS=5 check
+	popd
+	pushd contrib
+	make MAX_CONNECTIONS=5 check
+	popd
 %endif
 
+# undo the "make clean" above
 %if %test
 	pushd src/test/regress
 	make all
@@ -541,6 +542,7 @@ install -m 644 %{SOURCE15} $RPM_BUILD_ROOT/var/lib/pgsql/.bash_profile
 	pushd  $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress
 	strip *.so
 	rm -f GNUmakefile Makefile *.o
+	chmod 0755 pg_regress regress.so
 	popd
 	cp %{SOURCE5} $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress/Makefile
 	chmod 0644 $RPM_BUILD_ROOT%{_libdir}/pgsql/test/regress/Makefile
@@ -563,6 +565,8 @@ cat ecpglib6-%{majorversion}.lang >libs.lst
 cat initdb-%{majorversion}.lang >server.lst
 %find_lang libpq5-%{majorversion}
 cat libpq5-%{majorversion}.lang >>libs.lst
+%find_lang pg_basebackup-%{majorversion}
+cat pg_basebackup-%{majorversion}.lang >>server.lst
 %find_lang pg_controldata-%{majorversion}
 cat pg_controldata-%{majorversion}.lang >>server.lst
 %find_lang pg_ctl-%{majorversion}
@@ -657,7 +661,7 @@ rm -rf $RPM_BUILD_ROOT
 
 %files -f main.lst
 %defattr(-,root,root)
-%doc doc/KNOWN_BUGS doc/MISSING_FEATURES doc/README* 
+%doc doc/KNOWN_BUGS doc/MISSING_FEATURES doc/TODO
 %doc COPYRIGHT README HISTORY doc/bug.template
 %doc README.rpm-dist
 %doc doc/html
@@ -699,8 +703,46 @@ rm -rf $RPM_BUILD_ROOT
 
 %files contrib
 %defattr(-,root,root)
+%{_datadir}/pgsql/extension/adminpack*
+%{_datadir}/pgsql/extension/autoinc*
+%{_datadir}/pgsql/extension/btree_gin*
+%{_datadir}/pgsql/extension/btree_gist*
+%{_datadir}/pgsql/extension/chkpass*
+%{_datadir}/pgsql/extension/citext*
+%{_datadir}/pgsql/extension/cube*
+%{_datadir}/pgsql/extension/dblink*
+%{_datadir}/pgsql/extension/dict_int*
+%{_datadir}/pgsql/extension/dict_xsyn*
+%{_datadir}/pgsql/extension/earthdistance*
+%{_datadir}/pgsql/extension/file_fdw*
+%{_datadir}/pgsql/extension/fuzzystrmatch*
+%{_datadir}/pgsql/extension/hstore*
+%{_datadir}/pgsql/extension/insert_username*
+%{_datadir}/pgsql/extension/intagg*
+%{_datadir}/pgsql/extension/intarray*
+%{_datadir}/pgsql/extension/isn*
+%{_datadir}/pgsql/extension/lo*
+%{_datadir}/pgsql/extension/ltree*
+%{_datadir}/pgsql/extension/moddatetime*
+%{_datadir}/pgsql/extension/pageinspect*
+%{_datadir}/pgsql/extension/pg_buffercache*
+%{_datadir}/pgsql/extension/pg_freespacemap*
+%{_datadir}/pgsql/extension/pg_stat_statements*
+%{_datadir}/pgsql/extension/pg_trgm*
+%{_datadir}/pgsql/extension/pgcrypto*
+%{_datadir}/pgsql/extension/pgrowlocks*
+%{_datadir}/pgsql/extension/pgstattuple*
+%{_datadir}/pgsql/extension/refint*
+%{_datadir}/pgsql/extension/seg*
+%{_datadir}/pgsql/extension/sslinfo*
+%{_datadir}/pgsql/extension/tablefunc*
+%{_datadir}/pgsql/extension/test_parser*
+%{_datadir}/pgsql/extension/timetravel*
+%{_datadir}/pgsql/extension/tsearch2*
+%{_datadir}/pgsql/extension/unaccent*
 %{_libdir}/pgsql/_int.so
 %{_libdir}/pgsql/adminpack.so
+%{_libdir}/pgsql/auth_delay.so
 %{_libdir}/pgsql/autoinc.so
 %{_libdir}/pgsql/auto_explain.so
 %{_libdir}/pgsql/btree_gin.so
@@ -711,7 +753,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/pgsql/dblink.so
 %{_libdir}/pgsql/dict_int.so
 %{_libdir}/pgsql/dict_xsyn.so
+%{_libdir}/pgsql/dummy_seclabel.so
 %{_libdir}/pgsql/earthdistance.so
+%{_libdir}/pgsql/file_fdw.so
 %{_libdir}/pgsql/fuzzystrmatch.so
 %{_libdir}/pgsql/hstore.so
 %{_libdir}/pgsql/insert_username.so
@@ -737,15 +781,17 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/pgsql/tsearch2.so
 %{_libdir}/pgsql/unaccent.so
 %if %uuid
+%{_datadir}/pgsql/extension/uuid-ossp*
 %{_libdir}/pgsql/uuid-ossp.so
 %endif
 %if %xml
+%{_datadir}/pgsql/extension/xml2*
 %{_libdir}/pgsql/pgxml.so
 %endif
-%{_datadir}/pgsql/contrib/
 %{_bindir}/oid2name
 %{_bindir}/pg_archivecleanup
 %{_bindir}/pg_standby
+%{_bindir}/pg_test_fsync
 %{_bindir}/pgbench
 %{_bindir}/vacuumlo
 %{_mandir}/man3/dblink*
@@ -766,6 +812,7 @@ rm -rf $RPM_BUILD_ROOT
 %config(noreplace) /etc/pam.d/postgresql
 %endif
 %{_bindir}/initdb
+%{_bindir}/pg_basebackup
 %{_bindir}/pg_controldata
 %{_bindir}/pg_ctl
 %{_bindir}/pg_resetxlog
@@ -773,6 +820,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_bindir}/postmaster
 %{_bindir}/postgresql-setup
 %{_mandir}/man1/initdb.*
+%{_mandir}/man1/pg_basebackup.*
 %{_mandir}/man1/pg_controldata.*
 %{_mandir}/man1/pg_ctl.*
 %{_mandir}/man1/pg_resetxlog.*
@@ -788,6 +836,8 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/pgsql/dict_snowball.so
 %{_libdir}/pgsql/plpgsql.so
 %dir %{_datadir}/pgsql
+%dir %{_datadir}/pgsql/extension
+%{_datadir}/pgsql/extension/plpgsql*
 %attr(700,postgres,postgres) %dir /var/lib/pgsql
 %attr(700,postgres,postgres) %dir /var/lib/pgsql/data
 %attr(700,postgres,postgres) %dir /var/lib/pgsql/backups
@@ -823,12 +873,14 @@ rm -rf $RPM_BUILD_ROOT
 %if %plperl
 %files plperl -f plperl.lst
 %defattr(-,root,root)
+%{_datadir}/pgsql/extension/plperl*
 %{_libdir}/pgsql/plperl.so
 %endif
 
 %if %pltcl
 %files pltcl -f pltcl.lst
 %defattr(-,root,root)
+%{_datadir}/pgsql/extension/pltcl*
 %{_libdir}/pgsql/pltcl.so
 %{_bindir}/pltcl_delmod
 %{_bindir}/pltcl_listmod
@@ -839,7 +891,7 @@ rm -rf $RPM_BUILD_ROOT
 %if %plpython
 %files plpython -f plpython.lst
 %defattr(-,root,root)
-%{_libdir}/pgsql/plpython.so
+%{_datadir}/pgsql/extension/plpython*
 %{_libdir}/pgsql/plpython2.so
 %endif
 
@@ -851,6 +903,10 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 
 %changelog
+* Mon Sep 12 2011 Tom Lane <tgl at redhat.com> 9.1.0-1
+- Update to PostgreSQL 9.1.0 (major version bump);
+  in-place upgrade support now works from 9.0.x as the previous version
+
 * Wed Jul 27 2011 Tom Lane <tgl at redhat.com> 9.0.4-8
 - Convert to systemd startup support
 Resolves: #696427
diff --git a/sources b/sources
index 80e2ea6..c09c302 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
+0497b9da1d7c380c340a9a87ba5500fe  postgresql-9.1.0.tar.bz2
+1fd0bd1bbc1e7679c2385934a73c54ec  postgresql-9.1.0-US.pdf
 80390514d568a7af5ab61db1cda27e29  postgresql-9.0.4.tar.bz2
-7d27ebea9aa8654f73e47caa933e3fca  postgresql-9.0.4-US.pdf
-fcc3daaf2292fa6bf1185ec45e512db6  postgresql-8.4.6.tar.bz2


More information about the scm-commits mailing list