| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
* configure.ac: Bump version to full major version 3.
|
|
|
|
|
|
|
| |
* postgresql-ctl.in: Respect PGSCLS env variable.
* postgresql.init.in: Export PGSCLS variable possibly sourced from
sysconfig configuration file.
* NEWS: Document.
|
|
|
|
|
|
|
|
|
| |
* postgresql.init.in (PGSTARTTIMEOUT): New variable.
(start): Use postgresql-ctl and respect PGSTARTTIMEOUT.
* postgresql.service.in: Better document the timeouts.
(PGSTARTTIMEOUT): New env variable.
(ExecStart): Respect PGSTARTTIMEOUT.
* NEWS: Document.
|
|
|
|
|
|
|
| |
Per hhorak's review.
* postgresql.init.in (SU_POSTGRES): Remove unused variable.
(reload): Use run_cmd_as_dbadmin.
|
|
|
|
|
|
|
|
|
|
| |
* postgresql-setup.in($USAGE_STRING): Don't output sysvinit
not-relevant options. Generalize the help a bit to match
sysvinit. Throw a better warning if user runs 'service initdb
postgresql@blah', and, the --port was not passed. In this case,
postgresql.conf can't be used.
* postgresql.init.in (initdb, upgrade): Add --unit option to
postgresql-setup call.
|
|
|
|
|
|
|
| |
* README.rpm-dist.template: Mainly automatize generation of the
help for 'MULTIPLE POSTMASTERS' scenario. Fix other sysv/systemd
nuances.
* TODO: Mention some TODOs.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* postgresql.init.in (initdb, upgrade): Use full path to
postgresql-setup, this is mostly for proper documentation purposes
in case of failure.
* legacy-sysv-script.in: Pass --unit before actual unit name.
* postgresql-ctl.in: Handle better the $port option passed to
pg_ctl.
* postgresql-setup.in: Use full path to postgresql-setup, mostly
for documentation purposes.
* README: Add elinks to BuildRequires.
|
|
|
|
|
|
|
| |
* postgresql.init.in: Use 'postgres' binary instead of
'postmaster', because it has proper selinux context.
* postgresql.service.in: Use postgresql-ctl everywhere, to make
sure that correct selinux context is used even with SCL.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix the bug in handling with already initialized data directory.
Now, when doing --upgrade, postgresql-setup does not try to
re-initialize already initialized PGDATA directory and, after
"this" unsuccessful initdb, the datadir is not removed.
* postgresql-setup.in (check_not_initialized): New function.
(perform_initdb): Simplify return value handling.
(initdb): Use check_not_initialized function.
(upgrade): Use check_not_initialized to avoid PGDATA removal. When
$cleanup is false, don't remove $PGDATA.
|
|
|
|
| |
* NEWS: See $subject.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is mostly about simplification of intiscript and postgresql-setup
script reuse. Still WIP, however (some options are not applicable for
sysvinit system).
* share/postgresql-setup/library.sh.in (parse_upgrade_setup): Parse new
variable "pghost_override".
(run_cmd_as_dbadmin): New wrapper function to run something under
"postgres" user. Cut from postgresql-setup.
* postgresql-setup.in: Optionally source software collections. Call new
check_daemon_reload instead of in-place checking.
(upgrade): Use new library function run_cmd_as_dbadmin. Add new hack
for $PGHOST overriding via $pghost_override. Add more verbose output to
make clear what tool failed.
(check_daemon_reload): New function to make the systemd daemon reload
conditionally on one dedicated place.
(handle_envfile): New function to abstract environment file parsing,
works both for systemd & sysvinit env-files.
(handle_service_envfiles): Use handle_envfile instead of in-place
parsing.
(service_configuration): For sysvinit supported configuration, we
support only one env file per service - take this into account and don't
try to detect many from systemctl output.
* postgresql.init.in: Switch to bash script. Parametrize metadata by
configure results. Source software collections when needed. Source
project library. Don't set PGDATA if admin uses non-default service
naem. Do not define PGPORT as PGPORT should be defined in
postgresql.conf. Allow passing parameters into initdb/upgrade targets.
($PREVMAJORVERSION, $PREVPGENGINE): Remove unused variables.
($PGENGINE): This is @bindir@ equivalent.
($PGLOG): Spell it so it will not clash with system default PostgreSQL
installation.
($pidfile): Use $NAME instead of $PID to distinguish multiple postmaster
scenarios (mainly because we do not know the PGPORT yet).
(start): Drop the checking logic and use postgresql-check-db-dir
instead. Reuse run_cmd_as_dbadmin instead of $SU_POSTGRES.
(stop): Use run_cmd_as_dbadmin instead of $SU_POSTGRES.
(reload): Just coding style fix.
(perform_initdb): Drop unused function, done in postgresql-setup.
(__single_comand): Mostly postgresql-setup wrapper with success/failure
sugar around the call itself.
(initdb): Substitute the function body with postgresql-setup call.
(upgrade): Likewise.
* postgresql-check-db-dir.in: Fix the hint for admin about where the
service should be initialized. Do not warn about systemd-only
unsupported configuration. Add @bindir@ into "you need --initdb" hint.
Re-style the warning a bit.
* etc/postgresql-setup/upgrade/postgresql.conf: Mention new
configuration option pghost_override.
* configure.ac (initscriptsconfdir): New configuration directory.
(PGMAJORVERSION): Use sed and regexp for MAJOR version mining. It
failed for micro versions of length >= 2.
(SCL_SOURCE): Define to be empty by default.
* README: Document what's needed to bootstrap from git source. WIP.
* Makefile.am (initscripts_DATA): Use noinst_DATA. Firstly, having
initscripts_DATA installs only non-executable files. So we needed
something with _SCRIPTS primary. But initscripts_SCRIPTS would face the
automake's limitation that it must be "static" list of files. So make
the installation of initscript (of dynamically generated name) via
automake's install/uninstall.
($(initscript)): Use $(INSTANTIATE_SCRIPT) instead of $(INSTANTIATE).
(install-data-hook): Call 'systemctl daemon-reload' only for
non-sysvinit systems.
* .gitignore: Ignore 'initscript' filename.
|
|
|
|
| |
* style.dsl: Just track forgotten file in vcs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix the AC_ARG_WITH misuse. If WANT_SYSVINIT is unset, guess
correct value.
Don't treat intermediate files as those to be checked for correct
syntax errors (or unexpanded @variables@).
* Makefile.am: Move readme_* intermediate files into separate
variable.
* configure.ac: If WANT_SYSVINIT is empty (no explicit request),
try to detect systemd's presence by checking for systemctl
command. Print out after AC_OUTPUT information what init system
will be used.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The benefit is that sgml format we write does not need to be kept
formated precisely. The output format still needs some "style"
fixes, but now docbook2txt is able to generates correct text-file
README.rpm-dist without problems on RHEL 5.10+.
* .gitignore: Added all intermediate files of README file.
* Makefile.am: Generated README file is firstly filtered through
$(SED_RULES), then macros are expanded by m4 and then docbook2txt
is called.
* README: Document subset of dependencies.
* README.rpm-dist.in: Move to ...
* README.rpm-dist.template: ... here, with docbook transformation.
* TODO: Document we should should work docbook docs.
* configure.ac: AC_SUBST also WANT_SYSVINIT.
|
|
|
|
|
|
|
|
|
| |
* configure.ac (SCL_SOURCE): New variable sourcing needed scls.
* postgresql-setup.in (initdb): Use @SCL_SOURCE@ instead of
runtime generated $scls_initdb_hacks.
(upgrade): Use @SCL_SOURCE@. For this we don't need to specify
default "current" SCL when upgrading from other SCL in
upgrade-configuration 'scls' option.
|
|
|
|
|
|
|
|
|
|
| |
.. to avoid FTBFS with SCLs. Use pgdocdir rather then docdir
because the 'docdir' is not set by %configure by default.
* Makefile.am (pkgname): Drop, not needed.
(pgdoc_DATA): Use this rather than doc_DATA.
* configure.ac: Fix pgdocdir.
(PGDATADIR): Define as subdirectory of localstatedir.
|
|
|
|
|
|
| |
* postgresql-setup.in (die, error, error_q, warn, warn_q, info)
(info_q, debug, set_var, root_prereq): Move to ..
* share/postgresql-setup/library.sh.in: .. here.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac (PGDATADIR): Use /var/lib/pgsql/data when prefix is
set to /usr.
(rawpkgdatadir): New directory. Its different from pkgdatadir,
because thats often set to /usr/share/postgresql.
* Makefile.am: Include new rawpkgdatadir Makefile.inc. Fix
distcheck by mentioning legacyscripts_SCRIPTS in GENERATED_FILES.
* postgresql-check-db-dir.in: Use library.sh to give user better
advice. Use @NAME_BINARYBASE@ prefix.
(bad_version): New function.
(PREVMAJORVERSION): Removed unused variable.
* postgresql-setup.in: Cut out the config-parsing routines into
library.sh.
* share/postgresql-setup/library.sh.in: New library file. Added
new option 'list' for parse_upgrade_setup.
* share/postgresql-setup/Makefile.inc: New file.
* share/postgresql-setup/.gitignore: Ignore library.sh.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am: Move systemd directory definitions into
configure.ac. This is then easily configurable via config.site.
* configure.ac (PGENGINE, PG_CTL_BIN): Remove, bindir is
sufficient.
(PREVMAJORVERSION, PREVPGENGINE): Removed. It si configurable
now.
(INIDB_SCLS): Generalize into SCLS variable.
(SCLS): Moved from INIDB_SCLS.
(PGDATADIR): Default changed to have ${prefix} inside.
(SED_RULES): Remove unused variables (or to not be
used, TODO for next commit).
(conf_dir): New macro to define config.site
friendly directory variable.
(SCL_SHELL_WRAPPER): Convenient macro to generate appropriate call
to scl binary (only when building for software collections).
* postgresql-check-db-dir.in: Use new variable layout.
* postgresql-ctl.in: Likewise.
* postgresql-setup.in: Likewise.
* postgresql.service.in: Likewise. This fixes regression of not
using ${bindir} properly.
|
|
|
|
|
|
|
|
|
|
| |
This brings space separated list of Software Collections to be
enabled with call to 'initdb' binary.
* configure.ac (INITDB_SCLS): New variable.
* postgresql-setup.in ($initdb_scls): New global.
(perform_initdb): Source appropriate environment based on
$initdb_scls content.
|
|
|
|
|
|
|
|
|
|
| |
We may want to configure postgresql-setup to upgrade from SCL
version of PostgreSQL, which needs to read
'postgresql92-postgresq' service files. Defaults to 'postgresql'.
* configure.ac (NAME_DEFAULT_PREV_SERVICE): New configure var.
* postgresql-setup.in ($option_upgradefrom): Default to
NAME_DEFAULT_PREV_SERVICE contents.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Its now configurable what software collections will be enabled for
pg_upgrade run, in case it is needed (new 'scls' option).
Similarly, pg_upgrade needs to be told to send
unix_socket_directories instead of unix_socket_directory to
PostgreSQL server built for RHEL.
* etc/postgresql-setup/upgrade/postgresql.conf: Add configuration
examples for new options.
* postgresql-setup.in (parse_upgrade_setup): Parse 'scls' and
'redhat_sockets_hack' options.
(upgrade): Adjust the environment of 'su - postgres' call to
pg_upgrade, optionally.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently under /etc/postgresql-setup/upgrade. All '*.conf' files
are going to be loaded run-time by postgresql-setup.
* postgresql-setup.in (read_config_file): New helper to safely
read configuration files.
(set_var): Remove comment.
(parse_upgrade_setup): Use new read_config_file().
(parse_configuration): Rename to service_configuration().
* Makefile.am: Don't include share/Makefile.inc. Indent fixes.
Add install-data-hook helper to install config directory.
* build-helpers/Makefile.inc: Removed.
* build-helpers/build-config: Likewise.
* upgrade_config.template: Removed.
* etc/postgresql-setup/upgrade/postgresql.conf: New template.
* configure.ac: Remove --with-upgrade-config. Package maintainers
are supposed to provide those for now.
* share/postgresql-setup/Makefile.inc: Removed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
And add NAME_SERVICE, NAME_PACKAGE and NAME_BINARYBASE on its
place. This allows packager fine-tune how the files are going to
be generated.
* Makefile.am: Better work with variables.
* .gitignore: Ignore any (generated) service file.
* configure.ac (DISTSUFF): Remove.
(NAME_BIN_PFX, NAME_BIN_SFX, NAME_PKG_PFX, NAME_PKG_SFX)
(NAME_SRV_PFX, NAME_SRV_SFX, NAME_SERVICE, NAME_PACKAGE)
(NAME_BINARYBASE): New variables
* doc/.gitignore: Ignore any man(1) page.
* doc/Makefile.am (HELP2MAN_RUN): Fix the call to work also with
various prefixes/suffixes.
* README.rpm-dist.in: Use new variables.
* legacy-sysv-script.in: Likewise.
* postgresql-setup.in: Likewise.
* m4/packaging.m4 (PGSETUP_SUBST_OPT): New macro, defines,
substitutes and also fixes sed-rules.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Turns out we need to support upgrade from more than one previous
database versions. The plan is to make this as general as easily
possible, "run-time" configurable without need to recompile.
* postgresql-setup.in: Add options --upgrade-from and
--upgrade-ids. Require root access (as late as possible).
($USAGE_STRING): Adjust help output accordingly.
($PGMAJORVERSION, $PREVMAJORVERSION)
($PREVPGENGINE): Remove newly useless globals.
($option_upgradefrom): New option default.
(set_var, root_prereq): New helper functions.
(parse_upgrade_setup): Helper function to parse upgrade
configuration.
(print_version): Don't print PREVMAJORVERSION as it is (with
configuration) useless.
(upgrade): Create new $inplace local to handle in-place and
copy-like migrations differently. Use the variable set generated
by parse_upgrade_setup() function. Small err message fixes.
(handle_service_env, handle_pgconf): Remove the MODE argument.
(parse_configuration): Generalize operations which needed to be
done on two places.
* upgrade_config.template: Example of ./configure time config
file. Based on files like this the run-time is generated.
* share/postgresql-setup/.gitignore: New file.
* share/postgresql-setup/Makefile.inc: New file.
* build-helpers/build-config: New file, generator of configuration
files.
* build-helpers/Makefile.inc: New file.
* Makefile.am: Distribute upgrade_config.template. Start the
conversion to flat Makefile and include two new Makefile.inc
snippets.
* configure.ac: New --with-upgrade-config option. Propagate the
rawpkgdatadir and UPGRADE_CONFIG_LIST variables into Makefile.
(INSTANTIATE): Enhance to create the leading path also.
(INSTANTIATE_CONV): Convenience helper for leading path of target
creation.
* auxdir/install_local: New (just-for-git) installation helper.
* .gitignore: Don't hide share/postgresql-setup.
* TODO: Mention that KDE folks would like to migrate somehow.
|
|
|
|
|
|
|
|
|
|
|
| |
And better spell errors (to let user know that the initdb_log may
not exist).
* postgresql-setup.in (print_version): Use "full" @PGVERSION@ and
@PREVMAJORVERSION@.X to better describe what the package is
configured for.
(initdb): Spell better the failure message.
* postgresql-setup.in: Use $* instead of $@.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As we do not consider the postgresql@ unit variants (that would
require libexec/initscripts/legacy-actions/postgresql@CONCRETE
symlink to the default legacy-scripts directory), there is no need
to do run-time checks.
* Makefile.am (upgrade): Create from legacy-sysv-script.in
template.
(initdb): Likewise.
(systemdlegacyscripts_DATA): Substitute with ..
(systemdlegacyscripts_SCRIPTS): .. this to have execute bit after
installation.
(GENERATED_FILES): Add _SCRIPTS variant for systemdlegacyscripts.
* legacy-sysv-script.in: New unified template for legacy scripts.
* initdb.in: Remove.
* upgrade.in: Likewise.
* NEWS: Document.
|
|
|
|
| |
* Makefile.am: Choose better day for ChangeLog begin.
|
|
|
|
|
|
|
|
| |
Issue detected by './configure --with-sysvinit && make check'.
* postgresql.init.in ($PGDOCDIR): Wipe it out.
($README_DIST): Use on appropriate places.
* Makefile.am: Add TODO relevant to this commit.
|
|
|
|
|
|
|
|
|
|
|
|
| |
We use 'su' only for 'postgres' user purposes. So have one,
configure-time-proven command. Also, in the previous commit I
forgot to fix sysvinit file.
* configure.ac (SU_POSTGRES): New variable.
* postgresql-setup.in ($SU_POSTGRES): Use detected @SU_POSTGRES@.
($SU, $SU_L_POSTGRES): Avoid usage of those.
* postgresql.init.in: Likewise.
* .gitignore: Remove typoed ignore.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The setup script was reported to not work if user 'postgres' has
/sbin/nologin in /etc/passwd (explicitly set by administrator).
This configuration does not seem to be terribly useful but there
is no need to fail at all.
Resolves: rhbz#1122143
* postgresql-setup.in ($SU_L_POSTGRES): New wrapping variable,
using '-s /bin/sh' to bypass /sbin/nologin. This option should be
supported both by 'su' and 'runuser'.
* NEWS: Document.
|
|
|
|
|
|
|
| |
Note: Revealed thanks to automake 1.5 rebase.
* configure.ac ($c_s): Use top_builddir.
* tests/Makefile.am (CHECK_DEPS): Use top_builddir.
|
|
|
|
| |
* Makefile.am (GL_GEN): Test the .git exists and exit if not.
|
|
|
|
|
| |
* NEWS: Mention previous commit.
* configure.ac: s/lt/le/.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The --user option still works but we should be rather careful for
the future. Master only.
References:
http://www.postgresql.org/docs/9.4/static/release-9-4.html
* configure.ac (AC_INIT): Bump to 3.0~dev version.
(PG_UPGRADE_BIN_USER_OPT): New variable carrying the right format
of pg_upgrade's username option.
* postgresql-setup.in (upgrade): Use @PG_UPGRADE_BIN_USER_OPT@.
|
|
|
|
|
| |
* NEWS: Mention legacy scripts.
* configure.ac (AC_INIT): Remove beta stamp.
|
|
|
|
|
|
|
| |
.. from targets which are not distributed anyway. Thanks jmlich
to forcing me to catch that mistake.
* Makefile.am: Remove all nodist_ prefixes.
|
|
|
|
|
|
|
|
|
| |
* Makefile.am: (systemdlegacyscriptsdir)
(nodist_systemdlegacyscrupts_DATA): New variables.
(initdb, upgrade): New targets.
* initdb.in: New legacy script template.
* upgrade.in: Likewise.
* .gitignore: Ignore newly generated scripts.
|
|
|
|
| |
* Makefile.am: s|init.d|rc.d/init.d|.
|
|
|
|
| |
* Makefile.am: Make the target postgresql, not postgresql.init.
|
|
|
|
| |
* Makefile.am: s|$(prefix)/etc/init.d|$(sysconfdir)/init.d|.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
From now, if ./configure --with-sysvinit is done, we install init
script and do not install systemd files. Original patch written
by Jozef Mlích (jmlich@redhat.com).
* Makefile.am (initscriptsdir, nodist_initscripts_DATA): New
variables. New postgresql.init target.
* configure.ac: Add --with-sysvinit option.
* postgresql.init.in: New sysvinit template.
* .gitignore: Mention postgresql.init.
* NEWS: Document.
|
|
|
|
|
|
|
|
|
|
| |
Avoid detecting README.rpm-dist as we generate this file and we
know the best where the file is.
* configure.ac: Avoid detecting README path. Also substitute new
variable README_DIST_BASENAME.
* Makefile.am: Use the new $(README_DIST_BASENAME).
* postgres-check-db-dir.in: Use README_DIST instead of PGDOCDIR.
|
|
|
|
|
|
|
| |
Backpatch to REL_001.
* postgresql-check-db-dir.in: Fix drop-in directory to contain
the 'service' string.
|
|
|
|
|
|
| |
* tests/testsuite.at: New test.
* configure.ac (AC_INIT): Bump version. Use only major-minor
versions.
|
|
|
|
|
| |
* NEWS: Adjust.
* configure.ac: Likewise.
|
|
|
|
|
| |
* postgresql-setup.in (USAGE_STRING): Remove brackets around
mandatory option argument.
|
|
|
|
|
| |
* configure.ac: Postpone PREV_POSTGRES_BIN check after
the PREVPGENGINE check.
|
|
|
|
| |
* configure.ac: Bump version.
|
|
|
|
| |
* README.rpm-dist.in: Adjust according to latest changes.
|