[jboss-jira] [JBoss JIRA] (AS7-3692) Management: jgroups add stack operation does not work
Richard Achmatowicz (JIRA)
jira-events at lists.jboss.org
Tue Feb 28 18:13:36 EST 2012
[ https://issues.jboss.org/browse/AS7-3692?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12671874#comment-12671874 ]
Richard Achmatowicz edited comment on AS7-3692 at 2/28/12 6:12 PM:
-------------------------------------------------------------------
I have implemented a first version of this, in which the stack add operation now takes two optional parameters:
{noformat}
/subsystem=jgroups/stack=myStack:add(transport=<DMR representation of transport>, protocols=<DMR representation of LIST of protocols>)
{noformat}
So, for example:
{noformat}
/subsystem=jgroups/stack=myStack:add(transport={"type" => "UDP", "socket-binding" => "some-binding"}, protocols=[{"type" => "MPING", "socket-binding" => "some-binding"}, {"type" => "FRAG", "socket-binding" => "some-binding"}])
{noformat}
The full resource description is here:
{noformat}
[standalone at localhost:9999 /] /subsystem=jgroups/stack=udp:read-operation-description(name=add)
{
"outcome" => "success",
"result" => {
"operation-name" => "add",
"description" => "Add a protocol stack to the jgroups subsystem.",
"request-properties" => {
"transport" => {
"type" => OBJECT,
"description" => "The configuration of a transport for a protocol stack.",
"expressions-allowed" => false,
"required" => false,
"nillable" => true,
"allowed" => [
"type",
"shared",
"socket-binding",
"diagnostics-socket-binding",
"default-executor",
"oob-executor",
"timer-executor",
"thread-factory",
"site",
"rack",
"machine",
"properties"
],
"value-type" => {
"type" => {
"type" => STRING,
"description" => "The implementation class for a protocol, which determines protocol functionality.",
"expressions-allowed" => false,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"shared" => {
"type" => BOOLEAN,
"description" => "If true, the underlying transport is shared by all channels using this stack.",
"expressions-allowed" => false,
"nillable" => true,
"default" => true
},
"socket-binding" => {
"type" => STRING,
"description" => "The socket binding specification for this protocol layer, used to specify IP interfaces and ports for communication.",
"expressions-allowed" => false,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"diagnostics-socket-binding" => {
"type" => STRING,
"description" => "The diagnostics socket binding specification for this protocol layer, used to specify IP interfaces and ports for communication.",
"expressions-allowed" => false,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"default-executor" => {
"type" => STRING,
"description" => "The thread pool executor to handle incoming messages.",
"expressions-allowed" => false,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"oob-executor" => {
"type" => STRING,
"description" => "The thread pool executor to handle incoming out-of-band messages.",
"expressions-allowed" => false,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"timer-executor" => {
"type" => STRING,
"description" => "The thread pool executor to handle protocol-related timing tasks.",
"expressions-allowed" => false,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"thread-factory" => {
"type" => STRING,
"description" => "The thread factory to use for handling asynchronous transport-specific tasks.",
"expressions-allowed" => false,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"site" => {
"type" => STRING,
"description" => "The site (i.e. data centre) identifier for this node. Used by Infinispan topology-aware consistent hash.",
"expressions-allowed" => true,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"rack" => {
"type" => STRING,
"description" => "The rack (i.e. server rack) identifier for this node. Used by Infinispan topology-aware consistent hash.",
"expressions-allowed" => true,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"machine" => {
"type" => STRING,
"description" => "The machine (i.e. host) identifier for this node. Used by Infinispan topology-aware consistent hash.",
"expressions-allowed" => true,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"properties" => {
"type" => LIST,
"description" => "A list of properties for a protocol layer. Used to customize protocol behaviour.",
"expressions-allowed" => false,
"nillable" => true,
"value-type" => {"property" => {
"type" => PROPERTY,
"description" => "A protocol property with name and value.",
"expressions-allowed" => false,
"nillable" => true
}}
}
}
},
"protocols" => {
"type" => LIST,
"description" => "The list of configured protocols for a protocol stack.",
"expressions-allowed" => false,
"required" => false,
"nillable" => true,
"value-type" => {"protocol" => {
"type" => OBJECT,
"description" => "The configuration of a protocol within a protocol stack.",
"expressions-allowed" => false,
"nillable" => true,
"allowed" => [
"type",
"socket-binding",
"properties"
],
"value-type" => {
"type" => {
"type" => STRING,
"description" => "The implementation class for a protocol, which determines protocol functionality.",
"expressions-allowed" => false,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"socket-binding" => {
"type" => STRING,
"description" => "The socket binding specification for this protocol layer, used to specify IP interfaces and ports for communication.",
"expressions-allowed" => false,
"nillable" => true,
"min-length" => 1L,
"max-length" => 2147483647L
},
"properties" => {
"type" => LIST,
"description" => "A list of properties for a protocol layer. Used to customize protocol behaviour.",
"expressions-allowed" => false,
"nillable" => true,
"value-type" => {"property" => {
"type" => PROPERTY,
"description" => "A protocol property with name and value.",
"expressions-allowed" => false,
"nillable" => true
}}
}
}
}}
}
},
"read-only" => false
}
}
{noformat}
This version simply checks for the optional parameters, and as required executes the existing handlers for adding a transport and adding a protocol.
was (Author: rachmato):
I have implemented a first version of this, in which the stack add operation now takes two optional parameters:
{noformat}
/subsystem=jgroups/stack=myStack:add(transport=<DMR representation of transport>, protocols=<DMR representation of LIST of protocols>)
{noformat}
So, for example:
{noformat}
/subsystem=jgroups/stack=myStack:add(transport={"type" => "UDP", "socket-binding" => "some-binding"}, protocols=[{"type" => "MPING", "socket-binding" => "some-binding"}, {"type" => "FRAG", "socket-binding" => "some-binding"}])
{noformat}
The full resource description is attached, as it is quite large.
This version simply checks for the optional parameters, and as required executes the existing handlers for adding a transport and adding a protocol.
> Management: jgroups add stack operation does not work
> -----------------------------------------------------
>
> Key: AS7-3692
> URL: https://issues.jboss.org/browse/AS7-3692
> Project: Application Server 7
> Issue Type: Feature Request
> Components: Clustering, Domain Management
> Affects Versions: 7.1.0.Final
> Reporter: Dominik Pospisil
> Assignee: Richard Achmatowicz
> Labels: eap6_prd_req
> Fix For: 7.1.1.Final
>
>
> Management: jgroups add stack operation does not work. Add stack operation fails with:
> JBAS014746: type may not be null
> however, add operation does not accept such parameter.
> Steps to reproduce:
> 1) start domain
> 2) connect CLI
> 3) [standalone at localhost:9999 /] /subsystem=jgroups/stack=test:add()
> {
> "outcome" => "failed",
> "failure-description" => "JBAS014746: type may not be null",
> "rolled-back" => true,
> "response-headers" => {"process-state" => "reload-required"}
> }
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list