<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi,<br>
    <br>
    About why the memory setting can be changed, could it the same
    underlying issue than this one?<br>
    <a class="moz-txt-link-freetext" href="https://www.virtualbox.org/ticket/12164">https://www.virtualbox.org/ticket/12164</a><br>
    <br>
    Max<br>
    <div class="moz-cite-prefix">On 27/11/2014 11:32, Klaus Espenlaub
      wrote:<br>
    </div>
    <blockquote cite="mid:5476FDB0.2080606@oracle.com" type="cite">
      <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
      Yuryi,<br>
      <div class="moz-cite-prefix">On 27.11.2014 10:26, Yuriy Tretyakov
        wrote:<br>
      </div>
      <blockquote
        cite="mid:1417078087.775972467.smyokwo5@frv45.fwdcdn.com"
        type="cite"><span class="xfm_76659702">We need to run our code
          under python 3.1 that's why we need to use suds here.
          <div>Anyway we may face this situation without python at all.
            I ran SOAP UI. I ran a list of command-one by one.</div>
        </span></blockquote>
      Ah, python 3.x support for the ZSI bindings is on the todo list,
      unfortunately as always with far more work than developers...<br>
      <blockquote
        cite="mid:1417078087.775972467.smyokwo5@frv45.fwdcdn.com"
        type="cite"><span class="xfm_76659702">
          <div>I lock the machine and run ISession_getMachine. webserver
            returned new mutable machine ID. <br>
            Runing ISession_getType for my session id - I got </div>
          <div><br>
          </div>
          <div><vbox:ISession_getTypeResponse>
            <div>         <returnval>WriteLock</returnval></div>
            <div>      </vbox:ISession_getTypeResponse></div>
            <div><br>
            </div>
            <div>So machine is in mutable state now, right?</div>
          </div>
        </span></blockquote>
      Yes and no. When there is a properly established session there are
      two IMachine objects for every "VM", one readonly (the one you'd
      get when digging out the IMachine object when there is no session)
      and one mutable. You're definitely using the right one, otherwise
      you wouldn't get the error message below. So that's good news,
      your code for establishing the session etc. is correct.<br>
      <blockquote
        cite="mid:1417078087.775972467.smyokwo5@frv45.fwdcdn.com"
        type="cite"><span class="xfm_76659702">
          <div>
            <div>Runing IMachine_setHPETEnabled  for mutable ID</div>
            <div>        
              <_this>5f0fac6e7e0179b0-0000000000000011</_this></div>
            <div>         <HPETEnabled>true</HPETEnabled></div>
            <div><br>
              ! </div>
            got error VirtualBox error: rc=0x80bb0002 The machine is not
            mutable (state is Saved) (0x80bb0002)</faultstring></div>
        </span></blockquote>
      Ah, there you go. I asked you already what kind of snapshot you're
      restoring - and it's clearly an online snapshot. In such a case
      you can't change the settings, as the VM isn't powered off. So as
      I suspected a few mails ago, your assumptions are wrong.<br>
      <br>
      To repeat: a VM in state "Saved" can't be significantly
      reconfigured, because it is logically still running, with the
      entire hardware state saved (a bit like a hibernated PC, where one
      also has to keep fingers off the hardware config). It's simply not
      possible to enable HPET in this situation. It would be if you
      throw away the saved state, but I'm not sure if that's making the
      overall situation worse.<br>
      <br>
      So what you're seeing is 100% expected and correct behavior. The
      only mystery is why the memory size can be changed, because that
      shouldn't be possible either.<br>
      <blockquote
        cite="mid:1417078087.775972467.smyokwo5@frv45.fwdcdn.com"
        type="cite"><span class="xfm_76659702">
          <div>Just for your information. It seems to me a little
            strange that when vbox server returning an error it used not
            the same value in returnval as my mutable machine id. It
            increased each time request being sent to server. Here is
            what SOAP ui shows:</div>
          <div><br>
          </div>
          <div>
            <div>       
               <faultcode>SOAP-ENV:Client</faultcode><br>
            </div>
            <div>         <faultstring>VirtualBox error:
              rc=0x80bb0002 The machine is not mutable (state is Saved)
              (0x80bb0002)</faultstring></div>
            <div>         <detail></div>
            <div>            <vbox:RuntimeFault></div>
            <div>             
               <resultCode>-2135228414</resultCode></div>
            <div>          &! nbsp;  
               <returnval>5f0fac6e7e0179b0-0000000000000033</returnval></div>
            <div>            </vbox:RuntimeFault></div>
            <div>         </detail></div>
            <div>      </SOAP-ENV:Fault></div>
          </div>
        </span></blockquote>
      I don't follow - the returned reference is not for IMachine, it is
      an error object (IVirtualBoxError) which describes the error in
      more detail than what the SOAP fault code can do. Each fault
      creates a new error object, which explains why a new reference is
      created.<br>
      <br>
      Phew, at least the biggest mystery is resolved.<br>
      <br>
      Klaus<br>
      <blockquote
        cite="mid:1417078087.775972467.smyokwo5@frv45.fwdcdn.com"
        type="cite"><span class="xfm_76659702">
          <div>
            <div><br>
            </div>
          </div>
          <div><br>
            <br>
            <div style="font-size:0.9em;font-style:italic;"> ---
              Исходное сообщение ---<br>
              От кого: "Klaus Espenlaub" <a moz-do-not-send="true"
                class="moz-txt-link-rfc2396E"
                href="mailto:klaus.espenlaub@oracle.com"><klaus.espenlaub@oracle.com></a><br>
              Дата: 26 ноября 2014, 17:53:21<br>
            </div>
            <br>
            <blockquote class="xfmc1" style="border-left:1px solid
              rgb(204, 204, 204);margin:0px 0px 0px
              0.8ex;padding-left:1ex;"><span> <span></span> <span
                  bgcolor="#FFFFFF"> On 26.11.2014 16:09, Yuriy
                  Tretyakov wrote:<br>
                  <blockquote type="cite"><span>Hi Klaus.
                      <div>Thank you for your quick answer!</div>
                      <div>Sure, vm machine is turned off. I trying to
                        turn HPET on after snapshot is restored (machine
                        is down) but got this error.</div>
                      <div>And yes , as I understand from SDK, such
                        settings shall work with mutable machine.
                        Setting RAM size works fine, but HPET failed.</div>
                      <div>I specify that  IMachine_setCPUHotPlugEnabled
                        doesn't work this way. Few month ago we were try
                        to set videocapturing on and also no positive
                        results. Could it be a defect with processing
                        boolean values when we work with vboxwebsrv?</div>
                    </span></blockquote>
                  Can't tell from here what's "going over the wire" with
                  your code, but as long as the error message has the
                  word "mutable" in it I wouldn't expect trouble with
                  the parameters as such, more with the references.<br>
                  <br>
                  Is there a particular reason why you can't/don't want
                  to use ZSI? It's what e.g. vboxshell.py uses if one
                  selects the webservice. It gives a nice, direct python
                  object interface to the API, and can also talk to the
                  local API when it runs on the same system...<br>
                  <br>
                  Klaus<br>
                  <blockquote type="cite"><span>
                      <div><br>
                      </div>
                      <div>Regards,</div>
                      <div>Yuriy</div>
                      <div><br>
                        <br>
                        <div style="font-size:0.9em;font-style:italic;">
                          --- Исходное сообщение ---<br>
                          От кого: "Klaus Espenlaub" <a
                            moz-do-not-send="true" class="xfmc2"
                            href="mailto:klaus.espenlaub@oracle.com"
                            target="_blank"><klaus.espenlaub@oracle.com></a><br>
                          Дата: 26 ноября 2014, 17:02:12<br>
                        </div>
                        <br>
                        <blockquote class="xfmc3" style="border-left:1px
                          solid rgb(204, 204, 204);margin:0px ! 0px 0px
                          0.8ex;padding-left:1ex;"><span> <span></span>
                            <span bgcolor="#FFFFFF"> Hi Yuriy,<br>
                              <div class="xfmc4">On 26.11.2014 15:42,
                                Yuriy Tretyakov wrote:<br>
                              </div>
                              <blockquote type="cite"><span>
                                  <div
                                    style="font-size:0.9em;font-style:italic;"><br>
                                  </div>
                                  <blockquote class="xfmc5"
                                    style="border-left:1px solid
                                    rgb(204, 204, 204);margin:0px 0px
                                    0px 0.8ex;padding-left:1ex;"><span>
                                      <p class="xfmc6">Hi Guys!</p>
                                      <p class="xfmc6">Forum  moderator
                                        suggests me to contact somebody
                                        from developers to solve my
                                        problem faster than waiting
                                        answer on forum.</p>
                                      <p class="xfmc6"><br>
                                        I have a trouble setting boolean
                                        values via SOAP for VBOX.<br>
                                        Actually, I need to set
                                        IMachine_setHPETEnabled to True
                                        programmatically, but
                                        IMachine_setCPUHotPlugEnabled
                                        also doesn't work.<br>
                                        Trying to set these parameters
                                        always follows with Machine is
                                        not mutable error. But setting
                                        of memory like in SDK example
                                        works fine.<br>
                                        What I'm actually do. I using
                                        suds SOAP client library for
                                        Python.<br>
                                      </p>
                                    </span></blockquote>
                                </span></blockquote>
                              This doesn't sound like a problem with
                              specific bindings to me (never used suds
                              though, only used ZSI as you can see in
                              the samples in the SDK). From the symptoms
                              you're using the wrong IMachine reference.
                              On the other hand, I can't explain why
                              setting the memory size with the same
                              reference works, it's doing the exact same
                              checks on the API implementation side.<br>
                              <br>
                              Are you sure that the snapshot you are
                              restoring is an "offline" one, i.e. for a
                              powered off VM? Otherwise the VM is in
                              saved state, which means no significant
                              reconfiguration is possible (but again,
                              same rules for HPET and memory size...).<br>
                              <br>
                              Klaus </span></span> </blockquote>
                      </div>
                    </span></blockquote>
                </span></span></blockquote>
          </div>
        </span></blockquote>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
vbox-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:vbox-dev@virtualbox.org">vbox-dev@virtualbox.org</a>
<a class="moz-txt-link-freetext" href="https://www.virtualbox.org/mailman/listinfo/vbox-dev">https://www.virtualbox.org/mailman/listinfo/vbox-dev</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>