<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 13/11/17 22:51, Nikhil Komawar
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CANrDOaZqQOMF=oBbW7e25YRLQ0QqscMcmemgX1Q9iT6bi4B+cw@mail.gmail.com">
      <div dir="ltr">
        <div>I think it will a rather hard problem to solve. As swift
          store can be configured to store objects in different
          configurations. I guess the next question would be, what is
          your underlying problem -- multiple build requests or is this
          for retry for a single download?<br>
          <br>
        </div>
        If the image is in image cache and you are hitting the glance
        node with cached image (which is quite possible for tiny
        deployments), this feature will be relatively easier.<br>
      </div>
      <div class="gmail_extra"><br>
      </div>
    </blockquote>
    <br>
    So the specific image stored in glance is a Unified Archive
    (<a class="moz-txt-link-freetext" href="https://docs.oracle.com/cd/E36784_01/html/E38524/gmrlo.html">https://docs.oracle.com/cd/E36784_01/html/E38524/gmrlo.html</a>).<br>
    <br>
    During a UAR deployment the archive UUID is required and it is
    contained in the first 33 characters of the UAR image, thus a range
    request for this portion is required when initiating the deployment.
    Then the rest of the archive is extracted and deployed.<br>
    <br>
    I just want to know whether this capability is possible with swift ?<br>
    <br>
    If I change the default_store in glance_api.conf  to say "file" e.g.
    default_store = file. restart devstack@g-api and then upload an
    archive. The curl request succeeds, so file based range requests are
    working, just the default swift setup is failing and I though it
    might be some conf file setting was required to enable the
    capability. Pretty sure cinder works (well it used to work last time
    I tried this which was with way back with Mitaka :) ).<br>
    <br>
    Anyhow if it's not supported then I can work around at least
    initially using file store.<br>
    <br>
    thanks<br>
    <br>
    Matt<br>
    <br>
    <br>
    <br>
    <br>
    <blockquote type="cite"
cite="mid:CANrDOaZqQOMF=oBbW7e25YRLQ0QqscMcmemgX1Q9iT6bi4B+cw@mail.gmail.com">
      <div class="gmail_extra">
        <div class="gmail_quote">On Mon, Nov 13, 2017 at 6:47 AM, Matt
          Keenan <span dir="ltr"><<a
              href="mailto:matt.keenan@oracle.com" target="_blank"
              moz-do-not-send="true">matt.keenan@oracle.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
            <br>
             Just configured devstack on Fedora 26, and by default
            glance_store uses swift for image storage. When attempting
            to get a specific range from a glance stored image, it's
            reporting range requests are not supported e.g.:<br>
            <br>
                $ curl -i -X GET -r 0-32 -H "X-Auth-Token: $auth_token"
            <a href="http://10.169.104.255/image/v2/images/29b7aa"
              rel="noreferrer" target="_blank" moz-do-not-send="true">http://10.169.104.255/image/v2<wbr>/images/29b7aa</a><br>
                5e-3ec2-49b5-ab6b-d6cc5099f46c<wbr>/file<br>
                HTTP/1.1 400 Bad Request<br>
                Date: Mon, 13 Nov 2017 10:43:23 GMT<br>
                Server: Apache/2.4.27 (Fedora) OpenSSL/1.1.0f-fips
            mod_wsgi/4.5.15 Python/2.7<br>
                Content-Length: 205<br>
                Content-Type: text/html; charset=UTF-8<br>
                x-openstack-request-id: req-5ed2239f-165b-406f-969b-5c<wbr>c4ab8c632d<br>
                Connection: close<br>
            <br>
                <html><br>
                 <head><br>
                  <title>400 Bad Request</title><br>
                 </head><br>
                 <body><br>
                  <h1>400 Bad Request</h1><br>
                  Getting images randomly from this store is not
            supported. Offset: 0, length: 33<br /><br /><br>
                 </body><br>
            <br>
            Upon investigation, glance-api log is emitting:<br>
            <br>
                Nov 13 10:45:31 <a class="moz-txt-link-abbreviated" href="mailto:devstack@g-api.service">devstack@g-api.service</a>[22783]:
            #033[01;31mERROR glance.location [#033[01;36mNone
            req-ad6da3f0-ead1-486a-a873-d3<wbr>01f02b0888
            #033[00;36mdemo demo#033[01;31m]
            #033[01;35m#033[0│············<wbr>·········1;31mGlance
            tried all active locations to get data for image
            29b7aa5e-3ec2-49b5-ab6b-d6cc50<wbr>99f46c but all have
            failed.#033[00m: StoreRandomGetNotSupported: Getting images
            randomly from this store is notMDg4OCAjMDMzWzAwOzM2bW
            supported. Offset: 0, length: 33<br>
            <br>
            The exception StoreRandomGetNotSupported is emitted by
            glance_store from glance_store/capabilities.py:<br>
            <br>
                op_exec_map = {<br>
                    'get': (exceptions.StoreRandomGetNotS<wbr>upported<br>
                            if kwargs.get('offset') or
            kwargs.get('chunk_size') else<br>
                            exceptions.StoreGetNotSupporte<wbr>d),<br>
                    'add': exceptions.StoreAddDisabled,<br>
                    'delete': exceptions.StoreDeleteNotSuppo<wbr>rted}<br>
            <br>
            Looking at _driver/swift/store.py I think range requests are
            supported, it I've be unsuccessful in configuring it.<br>
            <br>
            Does the glance_store swift driver support range requests ?<br>
            <br>
            Can it be configured within a conf file, by somehow adding a
            capability ?<br>
            <br>
            thanks<span class="HOEnZb"><font color="#888888"><br>
                <br>
                Matt<br>
                <br>
                -- <br>
                <br>
                <br>
                ______________________________<wbr>______________________________<wbr>______________<br>
                OpenStack Development Mailing List (not for usage
                questions)<br>
                Unsubscribe: <a
href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe"
                  rel="noreferrer" target="_blank"
                  moz-do-not-send="true">OpenStack-dev-request@lists.op<wbr>enstack.org?subject:unsubscrib<wbr>e</a><br>
                <a
                  href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev"
                  rel="noreferrer" target="_blank"
                  moz-do-not-send="true">http://lists.openstack.org/cgi<wbr>-bin/mailman/listinfo/openstac<wbr>k-dev</a><br>
              </font></span></blockquote>
        </div>
        <br>
        <br clear="all">
        <br>
        -- <br>
        <div class="gmail_signature" data-smartmail="gmail_signature">
          <div dir="ltr">
            <div>
              <div>--<br>
              </div>
              Thanks,<br>
            </div>
            Nikhil<br>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: <a class="moz-txt-link-abbreviated" href="mailto:OpenStack-dev-request@lists.openstack.org?subject:unsubscribe">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a>
<a class="moz-txt-link-freetext" href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a>
</pre>
    </blockquote>
    <p><br>
    </p>
    <pre class="moz-signature" cols="72">-- 
HHGS : <a class="moz-txt-link-freetext" href="http://www.hh-gs.com">http://www.hh-gs.com</a></pre>
  </body>
</html>