1 |
Hi, |
2 |
|
3 |
TL;DR: we've started switching to the new distfile layout. Mirrors will |
4 |
notice the presence of symlinks corresponding to the dual-layout |
5 |
throughout the transitional period. At some point in the future we will |
6 |
have to switch the direction of symlinks, so please enable --hard-links |
7 |
(-H) in your rsync calls if you haven't already. |
8 |
|
9 |
|
10 |
I am pleased to announce that after initial internal testing, we've |
11 |
successfully deployed the new distfile mirror layout. The new layout |
12 |
splits distfiles into 256 directories, solving the problem of having |
13 |
60000+ files in a single directory. However, the mirrors will really |
14 |
start benefiting from this only once the old layout is gone. |
15 |
|
16 |
To reduce the impact on mirrors to the bare minimum, we've chosen to go |
17 |
with a hybrid symlink+hardlink approach. Throughout the majority of |
18 |
transitional period, the compatibility between two layouts will be |
19 |
provided by symlinks. This means the total number of file entries |
20 |
on the mirror will double but the additional bandwidth and disk space |
21 |
use will be limited to the possible minimum. |
22 |
|
23 |
All newly downloaded files already use the new layout for regular files, |
24 |
and create symlinks in the old layout. However, existing files are |
25 |
symlinked the other way. Before the old layout is removed, we will have |
26 |
to reverse the direction of those symlinks. |
27 |
|
28 |
For the time being, we're just going to let normal distfile rotation |
29 |
(i.e. fetching of new files and removal of old files) take care of |
30 |
reducing the number of links needing transition. Nevertheless, at some |
31 |
point in the future we will have to start converting the remaining |
32 |
files. |
33 |
|
34 |
We will be using hardlinks to make it possible for the conversion to |
35 |
occur without refetching everything. Therefore, once again we urge you |
36 |
to enable the --hard-links (-H) option to rsync if you haven't done that |
37 |
already. According to my current plan, we will use a shifting |
38 |
transition window approach to limit the impact both on mirrors |
39 |
and on master mirror. |
40 |
|
41 |
If you have any questions, please do not hesitate to ask. |
42 |
|
43 |
-- |
44 |
Best regards, |
45 |
Michał Górny |