<html><head></head><body><div>On a disperse setup shouldn't the various nodes have different parts of the files and thus the md5sums would be different?</div><div><br></div><div>On Fri, 2018-01-12 at 18:17 +0900, jungeun kim wrote:</div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><div dir="ltr"><div>Hi All,</div><div><br></div><div>I'm using gluster as dispersed volume and I send to ask for very serious thing.</div><div>I have 3 servers and there are 9 bricks.</div><div><br></div><div>My volume is like below.</div><div>------------------------------------------------------</div><div>Volume Name: TEST_VOL</div><div>Type: Disperse</div><div>Volume ID: be52b68d-ae83-46e3-9527-0e536b867bcc</div><div>Status: Started</div><div>Snapshot Count: 0</div><div>Number of Bricks: 1 x (6 + 3) = 9</div><div>Transport-type: tcp</div><div>Bricks:</div><div>Brick1: server1:/data/brick1</div><div>Brick2: server2:/data/brick1</div><div>Brick3: server3:/data/brick1</div><div>Brick4: server1:/data/brick2</div><div>Brick5: server2:/data/brick2</div><div>Brick6: server3:/data/brick2</div><div>Brick7: server1:/data/brick3</div><div>Brick8: server2:/data/brick3</div><div>Brick9: server3:/data/brick3</div><div>Options Reconfigured:</div><div>network.ping-timeout: 10</div><div>performance.write-behind: on</div><div>features.quota-deem-statfs: on</div><div>features.inode-quota: on</div><div>features.quota: on</div><div>transport.address-family: inet</div><div>nfs.disable: on</div><div>------------------------------------------------------</div><div><br></div><div>I generated the temporary files by various size to test.</div><div>But I have found out some files MD5 mismatch after uploading to glusterfs.</div><div><br></div><div>e.g</div><div>fallocate -l 130352 test1&nbsp;</div><div>fallocate -l 2281569280 test2</div><div>fallocate -l 667417616 test3&nbsp;</div><div><br></div><div>I have to calculate to make MD5 after uploading.&nbsp;</div><div>But the total size is different when reading the files to EOF. and MD5 is different, too.</div><div>( I write 42byte header in each files when create the file )</div><div><br></div><div><br></div><div>&nbsp; &nbsp; char buf[128*1024] = {0,};</div><div>&nbsp; &nbsp; offset += 42;</div><div>&nbsp; &nbsp; while ((retr = glfs_pread(fd, (void*)&amp;buf, sizeof(buf), offset, 0)) &gt; 0) {</div><div>&nbsp; &nbsp; &nbsp; &nbsp; DEBUG("retr : %ld, offset : %ld(%d)", retr,offset,errno)&nbsp; &nbsp; ;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; offset += retr;</div><div>&nbsp; &nbsp; &nbsp; &nbsp; MD5_Update(&amp;context, buf, retr);</div><div>&nbsp; &nbsp; }</div><div><br></div><div>&nbsp; &nbsp; DEBUG("total : %d", offset);</div><div><br></div><div>[DEBUG] retr : 130394, offset : 42(0) (star_glusterfs.c:96)</div><div>[DEBUG] retr : 1024, offset : 130436(0) (star_glusterfs.c:96)</div><div>[DEBUG] retr : 636, offset : 131460(0) (star_glusterfs.c:96)</div><div>[DEBUG] total : 132096 (star_glusterfs.c:109)</div><div><br></div><div><br></div><div>Why the glfs_pread(or glfs_read) function reads until over than the file size ?</div><div><br></div><div>This is fine on dispersed (4+2) and (8+1) volume but it is happend on (6+3) or (6+4) or (7+2) disperse volume.</div><div>I want to know exact cause.</div><div>Thank you.</div><div><br></div><div>Regards,</div><div><br></div><div>Jenny</div><div><br></div></div>
<pre>_______________________________________________
Gluster-users mailing list
<a href="mailto:Gluster-users@gluster.org">Gluster-users@gluster.org</a>
<a href="http://lists.gluster.org/mailman/listinfo/gluster-users">http://lists.gluster.org/mailman/listinfo/gluster-users</a></pre></blockquote><div><span><pre><pre>-- <br></pre>James P. Kinney III

Every time you stop a school, you will have to build a jail. What you
gain at one end you lose at the other. It's like feeding a dog on his
own tail. It won't fatten the dog.
- Speech 11/23/1900 Mark Twain

http://heretothereideas.blogspot.com/
</pre></span></div></body></html>