<div dir="ltr">Right, this is how the old booster worked. Booster was an LD_PRELOAD&#39;able module which used libglusterfsclient (previous incarnation of libgfapi) to provide the exact functionality Joe is talking about. The libglusterfsclient had both a gfapi-like filesystem API and a thin VFS-like API on top. We would need such a thin VFS-like API on top of gfapi to make such an LD_PRELOAD&#39;able library possible.<div>
<br></div><div>I see RJ&#39;s reference to Parrot. Such a ptrace-like API has crossed my mind in the past, and that would probably provide a more POSIX compliant implementation than even LD_PRELOAD, but arguably not as high performant - you still have context switches and memory copies like FUSE.</div>
<div><br></div><div>I would like to understand the motivation here, is it to benefit the gfapi performance without incurring the app re-write?<br>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Apr 28, 2014 at 5:42 PM, Louis Zuckerman <span dir="ltr">&lt;<a href="mailto:me@louiszuckerman.com" target="_blank">me@louiszuckerman.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I think that&#39;s how the old gluster booster lib worked.</div><div class="gmail_extra"><br><br><div class="gmail_quote">

<div>On Mon, Apr 28, 2014 at 8:21 PM, Joe Julian <span dir="ltr">&lt;<a href="mailto:joe@julianfamily.org" target="_blank">joe@julianfamily.org</a>&gt;</span> wrote:<br>

</div><div><div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Specifically I&#39;ve been looking at the innodb engine for MariaDB. While talking with Monty this weekend, he posited that I could write a wrapper library to go around the innodb library that would handle the connection, but would just override the glibc functions for posix filesystem commands. Does this sound feasible?<br>




<br>
If it is, couldn&#39;t you essentially do an LD_PRELOAD wrapper around any application to do that? Sure, you would have to probably resort to environment variables to set the server and volume data, but in theory would it work?<br>




______________________________<u></u>_________________<br>
Gluster-devel mailing list<br>
<a href="mailto:Gluster-devel@gluster.org" target="_blank">Gluster-devel@gluster.org</a><br>
<a href="http://supercolony.gluster.org/mailman/listinfo/gluster-devel" target="_blank">http://supercolony.gluster.<u></u>org/mailman/listinfo/gluster-<u></u>devel</a><br>
</blockquote></div></div></div><br></div>
<br>_______________________________________________<br>
Gluster-devel mailing list<br>
<a href="mailto:Gluster-devel@gluster.org" target="_blank">Gluster-devel@gluster.org</a><br>
<a href="http://supercolony.gluster.org/mailman/listinfo/gluster-devel" target="_blank">http://supercolony.gluster.org/mailman/listinfo/gluster-devel</a><br>
<br></blockquote></div><br></div></div></div>