<div dir="ltr"><div><div><div><div>The caveats are:<br><br></div>1. A non-existent/missing shard anywhere between offset $SHARD_BLOCK_SIZE through ceiling ($FILE_SIZE/$SHARD_BLOCK_SIZE)<br></div>indicates a hole. When you reconstruct data from a sharded file of this nature, you need to take care to retain this property.<br><br></div>2. The above is also true for partially filled shards between offset $SHARD_BLOCK_SIZE through ceiling ($FILE_SIZE/$SHARD_BLOCK_SIZE).<br></div><div>What do I mean by partially filled shards? Shards whose sizes are not equal to $SHARD_BLOCK_SIZE.<br><br></div><div>In the above, $FILE_SIZE can be gotten from the 'trusted.glusterfs.shard.file-size' extended attribute on the base file (the 0th block).<br><br></div><div>-Krutika<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 27, 2017 at 1:45 PM, Gandalf Corvotempesta <span dir="ltr"><<a href="mailto:gandalf.corvotempesta@gmail.com" target="_blank">gandalf.corvotempesta@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">Which caveats?<div dir="auto">Anyway, having this recovery tool integrated in gluster could be an appreciable plus to guarantee data recovery natively</div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">Il 27 feb 2017 6:02 AM, "Krutika Dhananjay" <<a href="mailto:kdhananj@redhat.com" target="_blank">kdhananj@redhat.com</a>> ha scritto:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>It should be possible to write a script that stitches the different pieces of a single file together <br></div>(although with a few caveats).<br><br></div>-Krutika<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Feb 26, 2017 at 8:52 PM, Gandalf Corvotempesta <span dir="ltr"><<a href="mailto:gandalf.corvotempesta@gmail.com" target="_blank">gandalf.corvotempesta@gmail.c<wbr>om</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Would be possible to add a command to use in case of disaster recovery<br>
(where everything is broken) to recreate files from sharding ?<br>
<br>
In example, let's assume a totally down cluster. no trusted pools and<br>
so on but sysadmin knows which hdd is part of any distributed replica:<br>
<br>
hdd1 + hdd2 + hdd3 are distributed and replicated to hdd4 + hdd5 + hdd6<br>
<br>
a CLI could traverse hdd1,hdd2,hdd3 and reconstruct all shards<br>
creating the original, unsharded file.<br>
______________________________<wbr>_________________<br>
Gluster-devel mailing list<br>
<a href="mailto:Gluster-devel@gluster.org" target="_blank">Gluster-devel@gluster.org</a><br>
<a href="http://lists.gluster.org/mailman/listinfo/gluster-devel" rel="noreferrer" target="_blank">http://lists.gluster.org/mailm<wbr>an/listinfo/gluster-devel</a><br>
</blockquote></div><br></div>
</blockquote></div></div>
</div></div></blockquote></div><br></div>