public inbox for [email protected]
help / color / mirror / Atom feedFrom: jesperpedersen <[email protected]>
Subject: [PATCH] Highlight that the --jobs option isn't passed down to vacuumdb by default.
Date: Fri, 21 Dec 2018 05:05:31 -0500
Author: Jesper Pedersen <[email protected]>
---
doc/src/sgml/ref/pgupgrade.sgml | 6 +++++-
src/bin/pg_upgrade/check.c | 28 ++++++++++++++++++++++------
2 files changed, 27 insertions(+), 7 deletions(-)
diff --git a/doc/src/sgml/ref/pgupgrade.sgml b/doc/src/sgml/ref/pgupgrade.sgml
index 7e1afaf0a5..84a7ccb6f1 100644
--- a/doc/src/sgml/ref/pgupgrade.sgml
+++ b/doc/src/sgml/ref/pgupgrade.sgml
@@ -395,7 +395,11 @@ NET STOP postgresql-&majorversion;
in parallel; a good place to start is the maximum of the number of
CPU cores and tablespaces. This option can dramatically reduce the
time to upgrade a multi-database server running on a multiprocessor
- machine.
+ machine. Note that this option isn't passed to the
+ <application>vacuumdb</application> application by default.
+ The system environment variable <literal>VACUUMDB_OPTS</literal> can be
+ used to pass extra options to the <application>vacuumdb</application>
+ application during the script execution.
</para>
<para>
diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c
index fc5aa7010f..570b7c9ae7 100644
--- a/src/bin/pg_upgrade/check.c
+++ b/src/bin/pg_upgrade/check.c
@@ -495,15 +495,31 @@ create_script_for_cluster_analyze(char **analyze_script_file_name)
ECHO_QUOTE, ECHO_QUOTE);
fprintf(script, "echo %sthis script and run:%s\n",
ECHO_QUOTE, ECHO_QUOTE);
- fprintf(script, "echo %s \"%s/vacuumdb\" %s--all %s%s\n", ECHO_QUOTE,
- new_cluster.bindir, user_specification.data,
- /* Did we copy the free space files? */
- (GET_MAJOR_VERSION(old_cluster.major_version) >= 804) ?
- "--analyze-only" : "--analyze", ECHO_QUOTE);
+ if (user_opts.jobs <= 1)
+ {
+ fprintf(script, "echo %s \"%s/vacuumdb\" %s--all %s%s\n", ECHO_QUOTE,
+ new_cluster.bindir, user_specification.data,
+ /* Did we copy the free space files? */
+ (GET_MAJOR_VERSION(old_cluster.major_version) >= 804) ?
+ "--analyze-only" : "--analyze", ECHO_QUOTE);
+ }
+ else
+ {
+ fprintf(script, "echo %s \"%s/vacuumdb\" %s--jobs %d --all %s%s\n", ECHO_QUOTE,
+ new_cluster.bindir, user_specification.data, user_opts.jobs,
+ /* Did we copy the free space files? */
+ (GET_MAJOR_VERSION(old_cluster.major_version) >= 804) ?
+ "--analyze-only" : "--analyze", ECHO_QUOTE);
+ }
fprintf(script, "echo%s\n\n", ECHO_BLANK);
- fprintf(script, "\"%s/vacuumdb\" %s--all --analyze-in-stages\n",
+#ifndef WIN32
+ fprintf(script, "\"%s/vacuumdb\" %s $VACUUMDB_OPTS --all --analyze-in-stages\n",
new_cluster.bindir, user_specification.data);
+#else
+ fprintf(script, "\"%s\\vacuumdb.exe\" %s %%VACUUMDB_OPTS%% --all --analyze-in-stages\n",
+ new_cluster.bindir, user_specification.data);
+#endif
/* Did we copy the free space files? */
if (GET_MAJOR_VERSION(old_cluster.major_version) < 804)
fprintf(script, "\"%s/vacuumdb\" %s--all\n", new_cluster.bindir,
--
2.17.2
--------------1625A89444BEE0D4B5C9189B
Content-Type: application/x-shellscript;
name="analyze_new_cluster.sh"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="analyze_new_cluster.sh"
IyEvYmluL3NoCgplY2hvICdUaGlzIHNjcmlwdCB3aWxsIGdlbmVyYXRlIG1pbmltYWwgb3B0
aW1pemVyIHN0YXRpc3RpY3MgcmFwaWRseScKZWNobyAnc28geW91ciBzeXN0ZW0gaXMgdXNh
YmxlLCBhbmQgdGhlbiBnYXRoZXIgc3RhdGlzdGljcyB0d2ljZSBtb3JlJwplY2hvICd3aXRo
IGluY3JlYXNpbmcgYWNjdXJhY3kuICBXaGVuIGl0IGlzIGRvbmUsIHlvdXIgc3lzdGVtIHdp
bGwnCmVjaG8gJ2hhdmUgdGhlIGRlZmF1bHQgbGV2ZWwgb2Ygb3B0aW1pemVyIHN0YXRpc3Rp
Y3MuJwplY2hvCgplY2hvICdJZiB5b3UgaGF2ZSB1c2VkIEFMVEVSIFRBQkxFIHRvIG1vZGlm
eSB0aGUgc3RhdGlzdGljcyB0YXJnZXQgZm9yJwplY2hvICdhbnkgdGFibGVzLCB5b3UgbWln
aHQgd2FudCB0byByZW1vdmUgdGhlbSBhbmQgcmVzdG9yZSB0aGVtIGFmdGVyJwplY2hvICdy
dW5uaW5nIHRoaXMgc2NyaXB0IGJlY2F1c2UgdGhleSB3aWxsIGRlbGF5IGZhc3Qgc3RhdGlz
dGljcyBnZW5lcmF0aW9uLicKZWNobwoKZWNobyAnSWYgeW91IHdvdWxkIGxpa2UgZGVmYXVs
dCBzdGF0aXN0aWNzIGFzIHF1aWNrbHkgYXMgcG9zc2libGUsIGNhbmNlbCcKZWNobyAndGhp
cyBzY3JpcHQgYW5kIHJ1bjonCmVjaG8gJyAgICAiL2hvbWUvanBlZGVyc2VuL3Bnc3FsL3Bv
c3RncmVzcWwtMTIueC9iaW4vdmFjdXVtZGIiIC0tam9icyA4IC0tYWxsIC0tYW5hbHl6ZS1v
bmx5JwplY2hvCgoiL2hvbWUvanBlZGVyc2VuL3Bnc3FsL3Bvc3RncmVzcWwtMTIueC9iaW4v
dmFjdXVtZGIiICRWQUNVVU1EQl9PUFRTIC0tYWxsIC0tYW5hbHl6ZS1pbi1zdGFnZXMKZWNo
bwoKZWNobyAnRG9uZScK
--------------1625A89444BEE0D4B5C9189B--
view thread (218+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected]
Subject: Re: [PATCH] Highlight that the --jobs option isn't passed down to vacuumdb by default.
In-Reply-To: <no-message-id-1883424@localhost>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox