<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    <br>
    <div class="moz-cite-prefix">On 06/14/2015 11:43 AM, Raghavendra
      Talur wrote:<br>
    </div>
    <blockquote
cite="mid:CALzJ8sOT9j7g5_ux4iu7hBcFM7jN1b5O-3TgCp7r1HeVERq1sA@mail.gmail.com"
      type="cite">
      <div dir="ltr"><br>
        <div class="gmail_extra"><br>
          <div class="gmail_quote">On Sun, Jun 14, 2015 at 11:02 PM,
            chris holcombe <span dir="ltr">&lt;<a
                moz-do-not-send="true"
                href="mailto:chris.holcombe@canonical.com"
                target="_blank">chris.holcombe@canonical.com</a>&gt;</span>
            wrote:<br>
            <blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Welcome
              to the party Matthew!  Nice to see you're still keeping an
              eye on on the list.  I'm excited to see this
              collaboration.  This is going to turn out great :)<span
                class=""><br>
                <br>
                On 06/14/2015 01:58 AM, Matthew McKeen wrote:<br>
              </span>
              <blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span
                  class="">
                  Hey Craig and Chris:<br>
                  <br>
                  I might be interested in collaborating on this as
                  well.<br>
                  <br>
                  Will be useful when I come back to FB in September.<br>
                  <br>
                  Let me know where the public repository ends up being.<br>
                  <br>
                  Thanks,<br>
                  Matthew McKeen<br>
                  <br>
                  P.S. Tell Richard I said hello<br>
                  <br>
                </span><span class="">
                  On Fri, Jun 12, 2015 at 11:29 AM chris holcombe &lt;<a
                    moz-do-not-send="true"
                    href="mailto:chris.holcombe@canonical.com"
                    target="_blank">chris.holcombe@canonical.com</a>
                  &lt;mailto:<a moz-do-not-send="true"
                    href="mailto:chris.holcombe@canonical.com"
                    target="_blank">chris.holcombe@canonical.com</a>&gt;&gt;
                  wrote:<br>
                  <br>
                      Yeah I have this repo but it's basically empty:<br>
                      <a moz-do-not-send="true"
                    href="https://github.com/cholcombe973/GlusterUtils"
                    rel="noreferrer" target="_blank">https://github.com/cholcombe973/GlusterUtils</a><br>
                  <br>
                      On 06/12/2015 11:27 AM, Craig Cabrey wrote:<br>
                      &gt; Chris,<br>
                      &gt;<br>
                      &gt; That sounds good to me.<br>
                      &gt;<br>
                      &gt; I already have started on implementation,
                  just to get familiar<br>
                      with the codebase and GFAPI.<br>
                      &gt;<br>
                      &gt; Is there a public repo that we can use for
                  collaboration?<br>
                      &gt;<br>
                      &gt; Craig<br>
                      &gt;<br>
                      &gt;&gt; On Jun 12, 2015, at 10:46 AM, chris
                  holcombe<br>
                      &lt;<a moz-do-not-send="true"
                    href="mailto:chris.holcombe@canonical.com"
                    target="_blank">chris.holcombe@canonical.com</a><br>
                </span>
                <div>
                  <div class="h5">
                        &lt;mailto:<a moz-do-not-send="true"
                      href="mailto:chris.holcombe@canonical.com"
                      target="_blank">chris.holcombe@canonical.com</a>&gt;&gt;
                    wrote:<br>
                        &gt;&gt;<br>
                        &gt;&gt; Craig,<br>
                        &gt;&gt;<br>
                        &gt;&gt; I was actually planning on building the
                    same tool set.  I would<br>
                        like to work with you also on this if that's ok.<br>
                        &gt;&gt;<br>
                        &gt;&gt; -Chris<br>
                        &gt;&gt;<br>
                        &gt;&gt; On 06/12/2015 10:43 AM, Jeff Darcy
                    wrote:<br>
                        &gt;&gt;&gt;&gt; Hi everyone,<br>
                        &gt;&gt;&gt;&gt;<br>
                        &gt;&gt;&gt;&gt; This summer I am an intern at
                    Facebook working on the Gluster<br>
                        team. Part of<br>
                        &gt;&gt;&gt;&gt; my project for the summer
                    includes developing a set of<br>
                        coreutils that<br>
                        &gt;&gt;&gt;&gt; utilizes the Gluster C API
                    natively.<br>
                        &gt;&gt;&gt;&gt;<br>
                        &gt;&gt;&gt;&gt; This project is similar in
                    nature to the NFS coreutils that<br>
                        some of you may<br>
                        &gt;&gt;&gt;&gt; have heard about from the other
                    Facebook engineers at the<br>
                        Gluster summit<br>
                        &gt;&gt;&gt;&gt; recently. I just wanted to
                    reach out to the Gluster community<br>
                        to gather<br>
                        &gt;&gt;&gt;&gt; ideas, potential features,
                    feedback, and direction.<br>
                        &gt;&gt;&gt;&gt;<br>
                        &gt;&gt;&gt;&gt; The initial set of utilities
                    that I am developing includes<br>
                        the following:<br>
                        &gt;&gt;&gt;&gt;<br>
                        &gt;&gt;&gt;&gt; * cat<br>
                        &gt;&gt;&gt;&gt; * mkdir<br>
                        &gt;&gt;&gt;&gt; * put (read from stdin and
                    write to a file)<br>
                        &gt;&gt;&gt;&gt; * mv<br>
                        &gt;&gt;&gt;&gt; * ls<br>
                        &gt;&gt;&gt;&gt; * rm<br>
                        &gt;&gt;&gt;&gt; * tail<br>
                        &gt;&gt;&gt;&gt;<br>
                        &gt;&gt;&gt;&gt; Again, any feedback will be
                    welcome.<br>
                        &gt;&gt;&gt; Hi, Craig, and welcome to the
                    project.  :)<br>
                        &gt;&gt;&gt;<br>
                        &gt;&gt;&gt; There seems to be some overlap with
                    a proposal Ragahavendra<br>
                        Talur sent out<br>
                        &gt;&gt;&gt; a couple of days ago.<br>
                        &gt;&gt;&gt;<br>
                        &gt;&gt;&gt;<br>
                        <a moz-do-not-send="true"
href="https://urldefense.proofpoint.com/v1/url?u=https://docs.google.com/document/d/1yuRLRbdccx_0V0UDAxqWbz4g983q5inuINHgM1YO040/edit?usp%3Dsharing&amp;k=ZVNjlDMF0FElm4dQtryO4A%3D%3D%0A&amp;r=ThH6JMKaB%2Fxgkh9d2jPjehcdps8B69L0q04jdBbZvX4%3D%0A&amp;m=86la5Xg7nlxAzIR6E5c2v2SgQSd6VssYzB%2BklM3wf%2BI%3D%0A&amp;s=8d55bb5770b8ed1d683a6908a05af32b79289735c537c660252fcaa7c690e162"
                      rel="noreferrer" target="_blank">https://urldefense.proofpoint.com/v1/url?u=https://docs.google.com/document/d/1yuRLRbdccx_0V0UDAxqWbz4g983q5inuINHgM1YO040/edit?usp%3Dsharing&amp;k=ZVNjlDMF0FElm4dQtryO4A%3D%3D%0A&amp;r=ThH6JMKaB%2Fxgkh9d2jPjehcdps8B69L0q04jdBbZvX4%3D%0A&amp;m=86la5Xg7nlxAzIR6E5c2v2SgQSd6VssYzB%2BklM3wf%2BI%3D%0A&amp;s=8d55bb5770b8ed1d683a6908a05af32b79289735c537c660252fcaa7c690e162</a><br>
                        &gt;&gt;&gt;<br>
                        &gt;&gt;&gt; This seems like an excellent
                    opportunity to collaborate.     Ideally, I think<br>
                        &gt;&gt;&gt; it would be useful to have both an
                    FTP-client-like "shell" and<br>
                        a set of<br>
                        &gt;&gt;&gt; standalone "one shot" commands,
                    based on as much common code<br>
                        as possible.<br>
                        &gt;&gt;&gt;<br>
                        &gt;&gt;&gt;
                    _______________________________________________<br>
                        &gt;&gt;&gt; Gluster-devel mailing list<br>
                  </div>
                </div>
                    &gt;&gt;&gt; <a moz-do-not-send="true"
                  href="mailto:Gluster-devel@gluster.org"
                  target="_blank">Gluster-devel@gluster.org</a>
                &lt;mailto:<a moz-do-not-send="true"
                  href="mailto:Gluster-devel@gluster.org"
                  target="_blank">Gluster-devel@gluster.org</a>&gt;<span
                  class=""><br>
                      &gt;&gt;&gt;<br>
                      <a moz-do-not-send="true"
href="https://urldefense.proofpoint.com/v1/url?u=http://www.gluster.org/mailman/listinfo/gluster-devel&amp;k=ZVNjlDMF0FElm4dQtryO4A%3D%3D%0A&amp;r=ThH6JMKaB%2Fxgkh9d2jPjehcdps8B69L0q04jdBbZvX4%3D%0A&amp;m=86la5Xg7nlxAzIR6E5c2v2SgQSd6VssYzB%2BklM3wf%2BI%3D%0A&amp;s=28546cdc6fdf6f75f4cfa4b8260abc595eee96601a5f849ebb230ddbd1faf8b3"
                    rel="noreferrer" target="_blank">https://urldefense.proofpoint.com/v1/url?u=http://www.gluster.org/mailman/listinfo/gluster-devel&amp;k=ZVNjlDMF0FElm4dQtryO4A%3D%3D%0A&amp;r=ThH6JMKaB%2Fxgkh9d2jPjehcdps8B69L0q04jdBbZvX4%3D%0A&amp;m=86la5Xg7nlxAzIR6E5c2v2SgQSd6VssYzB%2BklM3wf%2BI%3D%0A&amp;s=28546cdc6fdf6f75f4cfa4b8260abc595eee96601a5f849ebb230ddbd1faf8b3</a><br>
                  <br>
                      _______________________________________________<br>
                      Gluster-devel mailing list<br>
                </span>
                    <a moz-do-not-send="true"
                  href="mailto:Gluster-devel@gluster.org"
                  target="_blank">Gluster-devel@gluster.org</a>
                &lt;mailto:<a moz-do-not-send="true"
                  href="mailto:Gluster-devel@gluster.org"
                  target="_blank">Gluster-devel@gluster.org</a>&gt;<br>
                    <a moz-do-not-send="true"
                  href="http://www.gluster.org/mailman/listinfo/gluster-devel"
                  rel="noreferrer" target="_blank">http://www.gluster.org/mailman/listinfo/gluster-devel</a><br>
                <br>
              </blockquote>
              <div class="">
                <div class="h5">
                  <br>
                  _______________________________________________<br>
                  Gluster-devel mailing list<br>
                  <a moz-do-not-send="true"
                    href="mailto:Gluster-devel@gluster.org"
                    target="_blank">Gluster-devel@gluster.org</a><br>
                  <a moz-do-not-send="true"
                    href="http://www.gluster.org/mailman/listinfo/gluster-devel"
                    rel="noreferrer" target="_blank">http://www.gluster.org/mailman/listinfo/gluster-devel</a><br>
                </div>
              </div>
            </blockquote>
          </div>
          <br>
          <br>
          <br>
          Hi Craig, Chris and Matthew,</div>
        <div class="gmail_extra"><br>
        </div>
        <div class="gmail_extra">Welcome to the project  :)</div>
        <div class="gmail_extra"><br>
        </div>
        <div class="gmail_extra">We are really excited to see so many
          interested in getting core utils like feature in Gluster.</div>
        <div class="gmail_extra">As Jeff mentioned earlier, we have put
          up a very similar proposal recently. He also shared</div>
        <div class="gmail_extra">the design doc in the same mail.</div>
        <div class="gmail_extra"><br>
        </div>
        <div class="gmail_extra">Here is an illustration of how we
          imagined it:</div>
        <div class="gmail_extra"><br>
          <img src="cid:part16.08000207.04070101@julianfamily.org"
            height="533" width="562"><br>
          ​​<br>
        </div>
        <div class="gmail_extra">In gist, all the core utils commands
          would be functions in what we are calling</div>
        <div class="gmail_extra">glusterclientd. The functions would
          return the output in a format like JSON or XML.</div>
        <div class="gmail_extra">It would be the handlers which will
          send the data to a *real* client.</div>
        <div class="gmail_extra"><br>
        </div>
        <div class="gmail_extra">To support one-off commands, we were
          thinking of having a cli-direct handler,</div>
        <div class="gmail_extra">which when invoked will behave like a
          one-off command and output directly to cli.</div>
        <div class="gmail_extra"><br>
        </div>
        <div class="gmail_extra">Also, we were of the opinion that
          python would be a good language to get this done.</div>
        <div class="gmail_extra"><br>
        </div>
        <div class="gmail_extra">As you can see, core-utils would be
          part of a bigger project and it would be really useful</div>
        <div class="gmail_extra">for all of us to have same code base.</div>
        <div class="gmail_extra"><br>
        </div>
        <div class="gmail_extra">Please read the design doc and give
          your reviews either in doc or here in mail.</div>
        <div class="gmail_extra"><br>
        </div>
        <div class="gmail_extra"><br>
        </div>
        <div class="gmail_extra">
          <div><br>
          </div>
          Thanks!<br>
          <div class="gmail_signature">
            <div dir="ltr"><font color="#666666"><b>Raghavendra Talur </b></font>
              <div><br>
              </div>
            </div>
          </div>
        </div>
      </div>
      <br>
    </blockquote>
    One issue to keep in mind is (potentially) tens of thousands of
    clients connecting simultaneously. This would be a huge load on
    glusterd and potentially use up all the available ports (depending
    on tcp _fin_timeout).<br>
    <br>
    See
    <a class="moz-txt-link-freetext" href="https://docs.google.com/document/d/15IiPVIPMzgGwkt1sKuIusRE2l3pQY6NnA4WmWaMsFJE/edit">https://docs.google.com/document/d/15IiPVIPMzgGwkt1sKuIusRE2l3pQY6NnA4WmWaMsFJE/edit</a>
    for a potential solution.<br>
  </body>
</html>