Uploaded image for project: 'Application Server 7'
  1. Application Server 7
  2. AS7-4645

Response headers from slave hosts get pruned from overall result

XMLWordPrintable

      Heiko Braun reported on AS7-4491:

      I re-opened this issue because i can see two different response formats on the same operation:

      [INFO] staging-one > {
      [INFO] "outcome" => "success",
      [INFO] "result" => {"step-1" => {
      [INFO] "outcome" => "success",
      [INFO] "response-headers" =>

      {"operation-requires-restart" => true}
      [INFO] }}
      [INFO] }

      [INFO] server-one > {
      [INFO] "outcome" => "success",
      [INFO] "result" => {"step-1" => {
      [INFO] "outcome" => "success",
      [INFO] "response-headers" => {"operation-requires-restart" => true}

      [INFO] }},
      [INFO] "response-headers" =>

      {"process-state" => "restart-required"}

      [INFO] }

      it happens when setting the transaction manager attribute "enable-statistics".

      Kabir correctly diagnosed the problem:

      The current output for the work I am doing on http://issues.jboss.org/browse/AS7-4468, I end up with the following output. kabirs-macbook-pro.local is the slave, and misses the response headers.

      [domain@localhost:9999 /] /socket-binding-group=full-sockets:remove
      {
      "outcome" => "success",
      "result" => undefined,
      "server-groups" => {"main-server-group" => {"host" => {
      "kabirs-macbook-pro.local" => {
      "server-one" => {"response" => {
      "outcome" => "success",
      "result" => undefined
      }},
      "server-two" => {"response" => {
      "outcome" => "success",
      "result" => undefined
      }}
      },
      "master" => {
      "server-one" => {"response" => {
      "outcome" => "success",
      "response-headers" =>

      { "operation-requires-restart" => true, "process-state" => "restart-required" }
      }},
      "server-two" => {"response" => {
      "outcome" => "success",
      "response-headers" => { "operation-requires-restart" => true, "process-state" => "restart-required" }

      }}
      }
      }}}
      }

      The slave-> server-one/-two communication is handled via ProxyStepHandler, which gets the correct results from the server:

      {
      "outcome" => "success",
      "response-headers" =>

      { "operation-requires-restart" => true, "process-state" => "restart-required" }

      }

      However it has no way of propagating that back in the OperationContext, only the result. So once the the slave ModelController is done with the operation, the results sent back to the master are:

      {
      "outcome" => "success",
      "result" => undefined
      }

            bstansbe@redhat.com Brian Stansberry
            bstansbe@redhat.com Brian Stansberry
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: