<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>
<div>
<div>argh, I note for sake of correction that I renamed my volume from REGEXED to YAY after the first set of tests. &nbsp;Because I wanted to test rebuilding from completely nothing…but changing the name may add a touch of confusion for someone who was trying to
 comprehend…</div>
<div><br>
</div>
<div>anyway, a fabulous little feature, I hope it’s stable :)</div>
<div>
<div id="MAC_OUTLOOK_SIGNATURE"></div>
</div>
</div>
</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="font-family:Calibri; font-size:12pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span>&lt;<a href="mailto:gluster-users-bounces@gluster.org">gluster-users-bounces@gluster.org</a>&gt; on behalf of Christian Rice &lt;<a href="mailto:crice@pandora.com">crice@pandora.com</a>&gt;<br>
<span style="font-weight:bold">Date: </span>Thursday, October 27, 2016 at 10:02 PM<br>
<span style="font-weight:bold">To: </span>Joe Julian &lt;<a href="mailto:joe@julianfamily.org">joe@julianfamily.org</a>&gt;<br>
<span style="font-weight:bold">Cc: </span>&quot;<a href="mailto:gluster-users@gluster.org">gluster-users@gluster.org</a>&quot; &lt;<a href="mailto:gluster-users@gluster.org">gluster-users@gluster.org</a>&gt;<br>
<span style="font-weight:bold">Subject: </span>Re: [Gluster-users] trying to avoid a penalty for renaming every file<br>
</div>
<div><br>
</div>
<div>
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
That is great. &nbsp;I appreciate the encouragement to continue in the right direction. &nbsp;What a relief!</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
<br>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
I’m including my test procedure, in case it helps someone to visualize in ways a slide cannot. &nbsp;Using Debian 7/Wheezy, gluster bits 3.7.15-1, two hosts: burr and van</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
<br>
</div>
<div>
<div><font face="Calibri,sans-serif">from burr:</font></div>
<div><font face="Calibri,sans-serif">gluster peer probe van</font></div>
<div><font face="Calibri,sans-serif">vol create YAY transport tcp burr:/archive/gluster van:/archive/gluster</font></div>
<div><font face="Calibri,sans-serif">vol set YAY cluster.extra-hash-regex &quot;(.*)\.COPYING&quot;</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">check to make sure it looks right in /var/lib/glusterd/vols/YAY/trusted-REGEXED.tcp-fuse.vol</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">vol start YAY</font></div>
<div><font face="Calibri,sans-serif">mount -t glusterfs 127.0.0.1:REGEXED ~crice/tiempo</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">vol info on both hosts, it should look like so:</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">crice@burr:~$ sudo gluster vol info</font></div>
<div><font face="Calibri,sans-serif">&nbsp;</font></div>
<div><font face="Calibri,sans-serif">Volume Name: REGEXED</font></div>
<div><font face="Calibri,sans-serif">Type: Distribute</font></div>
<div><font face="Calibri,sans-serif">Volume ID: e751a668-97dc-4638-81cd-40b68c2438f2</font></div>
<div><font face="Calibri,sans-serif">Status: Started</font></div>
<div><font face="Calibri,sans-serif">Number of Bricks: 2</font></div>
<div><font face="Calibri,sans-serif">Transport-type: tcp</font></div>
<div><font face="Calibri,sans-serif">Bricks:</font></div>
<div><font face="Calibri,sans-serif">Brick1: burr:/archive/gluster</font></div>
<div><font face="Calibri,sans-serif">Brick2: van:/archive/gluster</font></div>
<div><font face="Calibri,sans-serif">Options Reconfigured:</font></div>
<div><font face="Calibri,sans-serif">performance.readdir-ahead: on</font></div>
<div><font face="Calibri,sans-serif">cluster.extra-hash-regex: &quot;(.*)\.COPYING&quot;</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">create two dirs, testA and testB</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">testA will have a ten files named foo1-10, but they were created as foo1-10.COPYING then moved</font></div>
<div><font face="Calibri,sans-serif">testB wil have ten fies named bar1.10, but they were created as bar1-10.BAD</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">cd testA</font></div>
<div><font face="Calibri,sans-serif">for i in `seq 1 10`; do dd if=/dev/zero of=foo.${i}.COPYING bs=1M count=10; mv foo.${i}.COPYING foo.$i; done</font></div>
<div><font face="Calibri,sans-serif">cd testB</font></div>
<div><font face="Calibri,sans-serif">for i in `seq 1 10`; do dd if=/dev/zero of=foo.${i}.BAD bs=1M count=10; mv foo.${i}.BAD foo.$i; done</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">then check /archive/gluster/test{A,B} for link files on both burr and van. &nbsp;The testA dir should have no&nbsp;link files.</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">results:</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">crice@burr:/archive/gluster$ ls -lR testA testB</font></div>
<div><font face="Calibri,sans-serif">testA:</font></div>
<div><font face="Calibri,sans-serif">total 61440</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.10</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.3</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.4</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.5</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.6</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.7</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">testB:</font></div>
<div><font face="Calibri,sans-serif">total 61440</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.1</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:17 foo.10</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.2</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:17 foo.3</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:17 foo.4</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.5</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.6</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:17 foo.7</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.8</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.9</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">crice@van:/archive/gluster$ ls -lR testA testB</font></div>
<div><font face="Calibri,sans-serif">testA:</font></div>
<div><font face="Calibri,sans-serif">total 40960</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.1</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.2</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.8</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:16 foo.9</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">testB:</font></div>
<div><font face="Calibri,sans-serif">total 40960</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:17 foo.1</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.10</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:17 foo.2</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.3</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.4</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:17 foo.7</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:17 foo.8</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:17 foo.9</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">that totally effin worked! &nbsp;and validated by repeating procedure based on my notes</font></div>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
<br>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
<br>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
But having been tested using fuse, to be absolutely sure (because I don’t wanna read code) &nbsp;off I ran:</div>
</div>
<div>
<div><font face="Calibri,sans-serif">gluster vol set YAY nfs.disable false (glusterd immediately died, so I restarted glusterfs-server, created a testC and testD dir and ran one more set over NFS:</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">cd /mnt/net/burr/YAY/</font></div>
<div><span style="font-family: Calibri, sans-serif;">mkdir testC testD</span></div>
<div><font face="Calibri,sans-serif">cd testC</font></div>
<div><font face="Calibri,sans-serif">for i in `seq 1 10`; do dd if=/dev/zero of=foo.${i}.COPYING bs=1M count=10; mv foo.${i}.COPYING foo.$i; done</font></div>
<div><font face="Calibri,sans-serif">cd testD</font></div>
<div><font face="Calibri,sans-serif">for i in `seq 1 10`; do dd if=/dev/zero of=foo.${i}.BAD bs=1M count=10; mv foo.${i}.BAD foo.$i; done</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">and it was also good:</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">crice@burr:/archive/gluster$ ls -lR testC testD</font></div>
<div><font face="Calibri,sans-serif">testC:</font></div>
<div><font face="Calibri,sans-serif">total 98304</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.10</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.3</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.4</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.5</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.6</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.7</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">testD:</font></div>
<div><font face="Calibri,sans-serif">total 65536</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:42 foo.1</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.10</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:42 foo.2</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.3</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.4</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.7</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:42 foo.8</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:42 foo.9</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">crice@van:/archive/gluster$ ls -lR testC testD</font></div>
<div><font face="Calibri,sans-serif">testC:</font></div>
<div><font face="Calibri,sans-serif">total 65536</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.1</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.2</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.8</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:41 foo.9</font></div>
<div><font face="Calibri,sans-serif"><br>
</font></div>
<div><font face="Calibri,sans-serif">testD:</font></div>
<div><font face="Calibri,sans-serif">total 98304</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.1</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:42 foo.10</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.2</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:42 foo.3</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:42 foo.4</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.5</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.6</font></div>
<div><font face="Calibri,sans-serif">---------T 2 crice crice &nbsp; &nbsp; &nbsp; &nbsp;0 Oct 27 21:42 foo.7</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.8</font></div>
<div><font face="Calibri,sans-serif">-rw-r--r-- 2 crice crice 10485760 Oct 27 21:42 foo.9</font></div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
<br>
</div>
</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
happy happy! &nbsp;Thanks for sharing!</div>
<div style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
<br>
</div>
<span id="OLK_SRC_BODY_SECTION" style="color: rgb(0, 0, 0); font-family: Calibri, sans-serif; font-size: 14px;">
<div style="font-family:Calibri; font-size:12pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span>&lt;<a href="mailto:gluster-users-bounces@gluster.org">gluster-users-bounces@gluster.org</a>&gt; on behalf of Joe Julian &lt;<a href="mailto:joe@julianfamily.org">joe@julianfamily.org</a>&gt;<br>
<span style="font-weight:bold">Date: </span>Thursday, October 27, 2016 at 1:23 PM<br>
<span style="font-weight:bold">To: </span>&quot;<a href="mailto:gluster-users@gluster.org">gluster-users@gluster.org</a>&quot; &lt;<a href="mailto:gluster-users@gluster.org">gluster-users@gluster.org</a>&gt;<br>
<span style="font-weight:bold">Subject: </span>Re: [Gluster-users] trying to avoid a penalty for renaming every file<br>
</div>
<div><br>
</div>
<div>
<div bgcolor="#FFFFFF" text="#000000">
<p>The best slide of all from the Gluster Developer Summit<br>
</p>
<p><a class="moz-txt-link-freetext" href="https://urldefense.proofpoint.com/v2/url?u=https-3A__twitter.com_JoeCyberGuru_status_784310321980674048&amp;d=CwMF-g&amp;c=gFTBenQ7Vj71sUi1A4CkFnmPzqwDo07QsHw-JRepxyw&amp;r=NE1NbWtVhgG-K7YvLdoLZigfFx8zGPwOGk6HWpYK04I&amp;m=oAvh1QvYKW9NOvU2J6Nv99NxcxuPLY8hEUgiKGVWIBE&amp;s=HdVvih36RDFLYWffBJRi706ww0YDGiQQugFxvHQGtDI&amp;e=">https://twitter.com/JoeCyberGuru/status/784310321980674048</a></p>
<p><img alt="" src="cid:part1.471D37CF.4FE9DD6D@julianfamily.org" height="264" width="575"></p>
<br>
<div class="moz-cite-prefix">On 10/27/2016 11:52 AM, Christian Rice wrote:<br>
</div>
<blockquote cite="mid:5143B23F-65B1-4455-BCBC-0D7992140D62@pandora.com" type="cite">
<div>
<div>
<div>
<div>We have a gluster pool where our developers are writing large files with the suffix .COPYING, then removing that suffix when the copy is done (renaming the file), so consumers of the data know the file is safe to read.</div>
<div><br>
</div>
<div>Back in 2014, Jeff Darcy wrote the below in a thread. &nbsp;I guess I am basically asking if this is still the supported/encouraged approach, and how do I implement this when I’m using gluster’s NFS?</div>
<div><br>
</div>
<div>&quot;<span style="font-family: -webkit-standard;">That said, there's also a trick you can use to avoid creation of a</span></div>
<div style="font-family: -webkit-standard;">linkfile.&nbsp;&nbsp;Other tools, such as rsync and our own object interface,</div>
<div style="font-family: -webkit-standard;">use the same write-then-rename idiom.&nbsp;&nbsp;To serve them, there's an</div>
<div style="font-family: -webkit-standard;">option called extra-hash-regex that can be used to place files on the</div>
<div style="font-family: -webkit-standard;">&quot;right&quot; brick according to their final name even though they're created</div>
<div style="font-family: -webkit-standard;">with another.&nbsp;&nbsp;Unfortunately, specifying that option via the command line</div>
<div style="font-family: -webkit-standard;">doesn't seem to work (it creates a malformed volfile) so you have to</div>
<div style="font-family: -webkit-standard;">mount a bit differently.&nbsp;&nbsp;For example:</div>
<div style="font-family: -webkit-standard;"><br>
</div>
<div style="font-family: -webkit-standard;">&nbsp;&nbsp; glusterfs --volfile-server=a_server --volfile-id=a_volume \</div>
<div style="font-family: -webkit-standard;">&nbsp;&nbsp; --xlator-option a_volume-dht.extra_hash_regex='(.*&#43;)tmp' \</div>
<div style="font-family: -webkit-standard;">&nbsp;&nbsp; /a/mountpoint</div>
<div style="font-family: -webkit-standard;"><br>
</div>
<div style="font-family: -webkit-standard;">The important part is that second line.&nbsp;&nbsp;That causes any file with a</div>
<div style="font-family: -webkit-standard;">&quot;tmp&quot; suffix to be hashed and placed as though only the part in the</div>
<div style="font-family: -webkit-standard;">first parenthesized part of the regex (i.e. without the &quot;tmp&quot;) was</div>
<div style="font-family: -webkit-standard;">there.&nbsp;&nbsp;Therefore, creating &quot;xxxtmp&quot; and then renaming it to &quot;xxx&quot; is</div>
<div style="font-family: -webkit-standard;">the same as just creating &quot;xxx&quot; in the first place as far as linkfiles</div>
<div style="font-family: -webkit-standard;">etc. are concerned.&nbsp;&nbsp;Note that the excluded part can be anything that</div>
<div style="font-family: -webkit-standard;">a regex can match, including a unique random number.&nbsp;&nbsp;If I recall,</div>
<div style="font-family: -webkit-standard;">rsync uses temp files something like this:</div>
<div style="font-family: -webkit-standard;"><br>
</div>
<div style="font-family: -webkit-standard;">&nbsp;&nbsp; fubar = .fubar.NNNNNN (where NNNNNNN is a random number)</div>
<div style="font-family: -webkit-standard;"><br>
</div>
<div style="font-family: -webkit-standard;">I know this probably seems a little voodoo-ish, but with a little bit</div>
<div style="font-family: -webkit-standard;">of experimentation to find the right regex you should be able to avoid</div>
<div style="font-family: -webkit-standard;">those dreaded linkfiles altogether.&quot;</div>
</div>
<div></div>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset> <br>
<pre wrap="">_______________________________________________
Gluster-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Gluster-users@gluster.org">Gluster-users@gluster.org</a><a class="moz-txt-link-freetext" href="https://urldefense.proofpoint.com/v2/url?u=http-3A__www.gluster.org_mailman_listinfo_gluster-2Dusers&amp;d=CwMF-g&amp;c=gFTBenQ7Vj71sUi1A4CkFnmPzqwDo07QsHw-JRepxyw&amp;r=NE1NbWtVhgG-K7YvLdoLZigfFx8zGPwOGk6HWpYK04I&amp;m=oAvh1QvYKW9NOvU2J6Nv99NxcxuPLY8hEUgiKGVWIBE&amp;s=5cEB0fLFIY_qGLOfLvvEEFa1Fks3TxzdcDBSgzA3fDA&amp;e=">http://www.gluster.org/mailman/listinfo/gluster-users</a></pre>
</blockquote>
<br>
</div>
</div>
</span></div>
</div>
</span>
</body>
</html>