1 |
Enable FEATURES=parallel-install in order to increase IO throughput by |
2 |
allowing files to be merged or unmerged for one package while merge or |
3 |
unmerge ebuild phases execute for a different package. |
4 |
|
5 |
This feature introduces a small risk of file collisions going |
6 |
undetected for packages that are merged at about the same time, but |
7 |
the risk is considered to be practically negligible since those file |
8 |
collisions would typically be detected and prevented long before such |
9 |
an event would have an opportunity to occur. |
10 |
|
11 |
Bug: https://bugs.gentoo.org/715110 |
12 |
Signed-off-by: Zac Medico <zmedico@g.o> |
13 |
--- |
14 |
[PATCH v2] documents the mechanism of increased IO throughput, and |
15 |
adds a warning about the risk of undetected file collisions. |
16 |
|
17 |
cnf/make.globals | 2 +- |
18 |
man/make.conf.5 | 20 ++++++++++++++++---- |
19 |
2 files changed, 17 insertions(+), 5 deletions(-) |
20 |
|
21 |
diff --git a/cnf/make.globals b/cnf/make.globals |
22 |
index 4a59dbe3c..5ba1ac6fa 100644 |
23 |
--- a/cnf/make.globals |
24 |
+++ b/cnf/make.globals |
25 |
@@ -55,7 +55,7 @@ FETCHCOMMAND_SFTP="bash -c \"x=\\\${2#sftp://} ; host=\\\${x%%/*} ; port=\\\${ho |
26 |
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs |
27 |
config-protect-if-modified distlocks ebuild-locks |
28 |
fixlafiles ipc-sandbox merge-sync multilib-strict |
29 |
- network-sandbox news parallel-fetch pid-sandbox |
30 |
+ network-sandbox news parallel-fetch parallel-install pid-sandbox |
31 |
preserve-libs protect-owned qa-unresolved-soname-deps |
32 |
sandbox sfperms strict |
33 |
unknown-features-warn unmerge-logs unmerge-orphans userfetch |
34 |
diff --git a/man/make.conf.5 b/man/make.conf.5 |
35 |
index f82fed65a..2380fe3ce 100644 |
36 |
--- a/man/make.conf.5 |
37 |
+++ b/man/make.conf.5 |
38 |
@@ -1,4 +1,4 @@ |
39 |
-.TH "MAKE.CONF" "5" "Nov 2019" "Portage VERSION" "Portage" |
40 |
+.TH "MAKE.CONF" "5" "May 2020" "Portage VERSION" "Portage" |
41 |
.SH "NAME" |
42 |
make.conf \- custom settings for Portage |
43 |
.SH "SYNOPSIS" |
44 |
@@ -550,9 +550,21 @@ Fetch in the background while compiling. Run |
45 |
terminal to view parallel-fetch progress. |
46 |
.TP |
47 |
.B parallel\-install |
48 |
-Use finer\-grained locks when installing packages, allowing for greater |
49 |
-parallelization. For additional parallelization, disable |
50 |
-\fIebuild\-locks\fR. |
51 |
+Use finer\-grained locks when installing packages, in order to increase |
52 |
+IO throughput by allowing files to be merged or unmerged for one package |
53 |
+while merge or unmerge ebuild phases execute for a different package. For |
54 |
+additional parallelization, disable \fIebuild\-locks\fR. |
55 |
+ |
56 |
+\fB***warning***\fR |
57 |
+.br |
58 |
+This feature introduces a small risk of file collisions going |
59 |
+undetected (by collision\-protect or protect\-owned features) for |
60 |
+packages that are merged at about the same time, but the risk is |
61 |
+considered to be practically negligible since those file |
62 |
+collisions would typically be detected and prevented long before such |
63 |
+an event would have an opportunity to occur. The risk may increase when |
64 |
+ACCEPT_KEYWORDS is used to accept packages which have not yet been |
65 |
+deemed 'stable', or when using uncommon USE flag configurations. |
66 |
.TP |
67 |
.B pid\-sandbox |
68 |
Isolate the process space for the ebuild processes. This makes it |
69 |
-- |
70 |
2.25.3 |