0 Replies Latest reply on Apr 14, 2014 1:21 PM by Oleg Koropita

    Can't add server-group and server-config in one composite operation

    Oleg Koropita Newbie

      Hi all,

       

      I have issue with adding server-group and server-config in one composite operation.

       

      I used such request to add two server-groups and four servers

      {

          "operation" => "composite",

          "address" => [],

          "steps" => [

              {

                  "operation" => "add",

                  "socket-binding-port-offset" => 0,

                  "status" => "STOPPED",

                  "auto-start" => false,

                  "group" => "primary-server-group",

                  "socket-binding-group" => "standard-sockets",

                  "address" => [

                      ("host" => "node02"),

                      ("server-config" => "system2-server1")

                  ]

              },

              {

                  "operation" => "stop",

                  "name" => "server",

                  "value" => "system2-server1",

                  "address" => [

                      ("host" => "node02"),

                      ("server-config" => "system2-server1")

                  ]

              },

              {

                  "operation" => "add",

                  "socket-binding-port-offset" => 150,

                  "status" => "STOPPED",

                  "auto-start" => false,

                  "group" => "secondary-server-group",

                  "socket-binding-group" => "standard-sockets",

                  "address" => [

                      ("host" => "node02"),

                      ("server-config" => "system2-server2")

                  ]

              },

              {

                  "operation" => "stop",

                  "name" => "server",

                  "value" => "system2-server2",

                  "address" => [

                      ("host" => "node02"),

                      ("server-config" => "system2-server2")

                  ]

              },

              {

                  "operation" => "add",

                  "socket-binding-port-offset" => 0,

                  "status" => "STOPPED",

                  "auto-start" => false,

                  "group" => "primary-server-group",

                  "socket-binding-group" => "standard-sockets",

                  "address" => [

                      ("host" => "node01"),

                      ("server-config" => "system1-server1")

                  ]

              },

              {

                  "operation" => "stop",

                  "name" => "server",

                  "value" => "system1-server1",

                  "address" => [

                      ("host" => "node01"),

                      ("server-config" => "system1-server1")

                  ]

              },

              {

                  "operation" => "add",

                  "socket-binding-port-offset" => 150,

                  "status" => "STOPPED",

                  "auto-start" => false,

                  "group" => "secondary-server-group",

                  "socket-binding-group" => "standard-sockets",

                  "address" => [

                      ("host" => "node01"),

                      ("server-config" => "system1-server2")

                  ]

              },

              {

                  "operation" => "stop",

                  "name" => "server",

                  "value" => "system1-server2",

                  "address" => [

                      ("host" => "node01"),

                      ("server-config" => "system1-server2")

                  ]

              },

              {

                  "operation" => "add",

                  "socket-binding-group" => "standard-sockets",

                  "profile" => "default",

                  "address" => [("server-group" => "primary-server-group")]

              },

              {

                  "operation" => "add",

                  "socket-binding-group" => "standard-sockets",

                  "profile" => "default",

                  "address" => [("server-group" => "secondary-server-group")]

              }

          ]

      }

       

       

      And I received such result:

       

       

      {

          "outcome" => "success",

          "result" => {

              "step-1" => {"outcome" => "success"},

              "step-2" => {

                  "outcome" => "success",

                  "result" => "STOPPED"

              },

              "step-3" => {"outcome" => "success"},

              "step-4" => {

                  "outcome" => "success",

                  "result" => "STOPPED"

              },

              "step-5" => {"outcome" => "success"},

              "step-6" => {

                  "outcome" => "success",

                  "result" => "STOPPED"

              },

              "step-7" => {"outcome" => "success"},

              "step-8" => {

                  "outcome" => "success",

                  "result" => "STOPPED"

              },

              "step-9" => undefined,

              "step-10" => undefined

          },

          "server-groups" => undefined

      }

       

       

       

       

      But, when I checked admin console, there were no server-groups.

      The same with domain.xml on DC side.

       

       

      So server-groups wasn't addedd.

      But if I try to add server-groups one more time:

       

       

      {

          "operation" => "composite",

          "address" => [],

          "steps" => [

              {

                  "operation" => "add",

                  "socket-binding-group" => "standard-sockets",

                  "profile" => "default",

                  "address" => [("server-group" => "primary-server-group")]

              },

              {

                  "operation" => "add",

                  "socket-binding-group" => "standard-sockets",

                  "profile" => "default",

                  "address" => [("server-group" => "secondary-server-group")]

              }

          ]

      }

       

       

      I will get such result:

       

       

      {

          "outcome" => "failed",

          "result" => {

              "step-1" => {

                  "outcome" => "failed",

                  "rolled-back" => true

              },

              "step-2" => {

                  "outcome" => "failed",

                  "rolled-back" => true

              }

          },

          "failure-description" => {"host-failure-descriptions" => {

              "node02" => {"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-1" => "JBAS014803: Duplicate resource [(\"server-group\" => \"primary-server-group\")]"}},

              "node01" => {"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-1" => "JBAS014803: Duplicate resource [(\"server-group\" => \"primary-server-group\")]"}}

          }},

          "rolled-back" => true

      }

       

       

      Then I need to restart DC to restore server. And after that, I can successuflly add server-groups.

       

       

      So, after first request, JBoss AS stuck on some uncommited state.

      JBoss EAP 6.1.0 GA