[jboss-jira] [JBoss JIRA] (WFCORE-1485) ":read-resource(recursive=true)" generates output with random order, could be ordered alphabetically by keys
Brian Stansberry (JIRA)
issues at jboss.org
Wed Apr 20 09:53:00 EDT 2016
[ https://issues.jboss.org/browse/WFCORE-1485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13194558#comment-13194558 ]
Brian Stansberry commented on WFCORE-1485:
------------------------------------------
I don't want to use TreeSet etc to impose a canonical ordering, but the PR is very much welcome, as the design intent was to preserve the original order.
> ":read-resource(recursive=true)" generates output with random order, could be ordered alphabetically by keys
> ------------------------------------------------------------------------------------------------------------
>
> Key: WFCORE-1485
> URL: https://issues.jboss.org/browse/WFCORE-1485
> Project: WildFly Core
> Issue Type: Bug
> Components: Domain Management
> Reporter: Ladislav Thon
> Assignee: Ladislav Thon
>
> ":read-resource(recursive=true)" generates output with random order, could it be ordered alphabetically by keys
> Now I can't do simple diff of changes, it's necessary to parse output to get valid list of changes.
> I expect output is stored in some structure data format before processed/printed out, could you use some sorted structure (Tree* stuff) ?
> Command to generate output and diff
> {code}
> jboss-eap-7.0/bin/jboss-cli.sh -c ":read-resource(recursive=true)" > 01 && jboss-eap-7.0/bin/jboss-cli.sh -c ":read-resource(recursive=true)" > 02
> diff 01 02 ## meld kdiff3 or your diff favorite tool
> {code}
> Diff in my case:
> {code:diff}
> > 02 && diff 01 02
> 50c50,67
> < "security" => {"classification" => {"security-domain" => {
> ---
> > "logging" => {"classification" => {
> > "logger" => {
> > "configured-application" => undefined,
> > "default-application" => false,
> > "applies-to" => undefined
> > },
> > "logging-profile" => {
> > "configured-application" => undefined,
> > "default-application" => false,
> > "applies-to" => undefined
> > }
> > }},
> > "naming" => {"classification" => {"binding" => {
> > "configured-application" => undefined,
> > "default-application" => false,
> > "applies-to" => undefined
> > }}},
> > "mail" => {"classification" => {"mail-session" => {
> 64a82,86
> > "security" => {"classification" => {"security-domain" => {
> > "configured-application" => undefined,
> > "default-application" => false,
> > "applies-to" => undefined
> > }}},
> 66,70d87
> < "data-source" => {
> < "configured-application" => undefined,
> < "default-application" => false,
> < "applies-to" => undefined
> < },
> 80,86d96
> < }
> < }},
> < "logging" => {"classification" => {
> < "logging-profile" => {
> < "configured-application" => undefined,
> < "default-application" => false,
> < "applies-to" => undefined
> 88c98
> < "logger" => {
> ---
> > "data-source" => {
> 93,103c103
> < }},
> < "mail" => {"classification" => {"mail-session" => {
> < "configured-application" => undefined,
> < "default-application" => false,
> < "applies-to" => undefined
> < }}},
> < "naming" => {"classification" => {"binding" => {
> < "configured-application" => undefined,
> < "default-application" => false,
> < "applies-to" => undefined
> < }}}
> ---
> > }}
> 106,114d105
> < "mail" => {"classification" => {"mail-server-security" => {
> < "configured-requires-addressable" => undefined,
> < "configured-requires-read" => undefined,
> < "configured-requires-write" => undefined,
> < "default-requires-addressable" => false,
> < "default-requires-read" => false,
> < "default-requires-write" => true,
> < "applies-to" => undefined
> < }}},
> 116c107
> < "naming-binding" => {
> ---
> > "jndi-view" => {
> 121,122c112,113
> < "default-requires-read" => false,
> < "default-requires-write" => false,
> ---
> > "default-requires-read" => true,
> > "default-requires-write" => true,
> 125c116
> < "jndi-view" => {
> ---
> > "naming-binding" => {
> 130,131c121,122
> < "default-requires-read" => true,
> < "default-requires-write" => true,
> ---
> > "default-requires-read" => false,
> > "default-requires-write" => false,
> 153,162c144
> < "remoting" => {"classification" => {"remoting-security" => {
> < "configured-requires-addressable" => undefined,
> < "configured-requires-read" => undefined,
> < "configured-requires-write" => undefined,
> < "default-requires-addressable" => false,
> < "default-requires-read" => true,
> < "default-requires-write" => true,
> < "applies-to" => undefined
> < }}},
> < "security" => {"classification" => {"misc-security" => {
> ---
> > "logging" => {"classification" => {"view-server-logs" => {
> 167,168c149,150
> < "default-requires-read" => true,
> < "default-requires-write" => true,
> ---
> > "default-requires-read" => false,
> > "default-requires-write" => false,
> 171,172c153,154
> < "undertow" => {"classification" => {
> < "undertow-handler" => {
> ---
> > "core" => {"classification" => {
> > "security-realm-ref" => {
> 176,178c158,160
> < "default-requires-addressable" => false,
> < "default-requires-read" => false,
> < "default-requires-write" => false,
> ---
> > "default-requires-addressable" => true,
> > "default-requires-read" => true,
> > "default-requires-write" => true,
> 181c163
> < "undertow-filter" => {
> ---
> > "server-ssl" => {
> 185,187c167,169
> < "default-requires-addressable" => false,
> < "default-requires-read" => false,
> < "default-requires-write" => false,
> ---
> > "default-requires-addressable" => true,
> > "default-requires-read" => true,
> > "default-requires-write" => true,
> 190c172
> < "web-connector" => {
> ---
> > "service-container" => {
> 196c178
> < "default-requires-write" => false,
> ---
> > "default-requires-write" => true,
> 199c181
> < "web-access-log" => {
> ---
> > "extensions" => {
> 205c187
> < "default-requires-write" => false,
> ---
> > "default-requires-write" => true,
> 207,237c189,190
> < }
> < }},
> < "logging" => {"classification" => {"view-server-logs" => {
> < "configured-requires-addressable" => undefined,
> < "configured-requires-read" => undefined,
> < "configured-requires-write" => undefined,
> < "default-requires-addressable" => false,
> < "default-requires-read" => false,
> < "default-requires-write" => false,
> < "applies-to" => undefined
> < }}},
> < "datasources" => {"classification" => {"data-source-security" => {
> < "configured-requires-addressable" => undefined,
> < "configured-requires-read" => undefined,
> < "configured-requires-write" => undefined,
> < "default-requires-addressable" => false,
> < "default-requires-read" => true,
> < "default-requires-write" => true,
> < "applies-to" => undefined
> < }}},
> < "resource-adapters" => {"classification" => {"resource-adapter-security" => {
> < "configured-requires-addressable" => undefined,
> < "configured-requires-read" => undefined,
> < "configured-requires-write" => undefined,
> < "default-requires-addressable" => false,
> < "default-requires-read" => true,
> < "default-requires-write" => true,
> < "applies-to" => undefined
> < }}},
> < "core" => {"classification" => {
> < "extensions" => {
> ---
> > },
> > "system-property" => {
> 246c199
> < "service-container" => {
> ---
> > "module-loading" => {
> 255c208
> < "domain-controller" => {
> ---
> > "jvm" => {
> 264c217
> < "domain-names" => {
> ---
> > "snapshots" => {
> 270c223
> < "default-requires-write" => true,
> ---
> > "default-requires-write" => false,
> 273c226
> < "security-domain-ref" => {
> ---
> > "access-control" => {
> 291c244
> < "management-interfaces" => {
> ---
> > "credential" => {
> 296c249
> < "default-requires-read" => false,
> ---
> > "default-requires-read" => true,
> 300c253
> < "socket-binding-ref" => {
> ---
> > "management-interfaces" => {
> 306c259
> < "default-requires-write" => false,
> ---
> > "default-requires-write" => true,
> 309c262
> < "socket-config" => {
> ---
> > "security-domain" => {
> 313,314c266,267
> < "default-requires-addressable" => false,
> < "default-requires-read" => false,
> ---
> > "default-requires-addressable" => true,
> > "default-requires-read" => true,
> 318c271
> < "security-vault" => {
> ---
> > "patching" => {
> 323c276
> < "default-requires-read" => true,
> ---
> > "default-requires-read" => false,
> 327c280
> < "server-ssl" => {
> ---
> > "read-whole-config" => {
> 331c284
> < "default-requires-addressable" => true,
> ---
> > "default-requires-addressable" => false,
> 336c289
> < "jvm" => {
> ---
> > "domain-controller" => {
> 345c298
> < "module-loading" => {
> ---
> > "security-vault" => {
> 350c303
> < "default-requires-read" => false,
> ---
> > "default-requires-read" => true,
> 354c307
> < "security-domain" => {
> ---
> > "security-domain-ref" => {
> 363c316
> < "snapshots" => {
> ---
> > "socket-binding-ref" => {
> 372c325
> < "credential" => {
> ---
> > "domain-names" => {
> 377c330
> < "default-requires-read" => true,
> ---
> > "default-requires-read" => false,
> 381c334
> < "read-whole-config" => {
> ---
> > "socket-config" => {
> 386c339
> < "default-requires-read" => true,
> ---
> > "default-requires-read" => false,
> 389,390c342,363
> < },
> < "patching" => {
> ---
> > }
> > }},
> > "mail" => {"classification" => {"mail-server-security" => {
> > "configured-requires-addressable" => undefined,
> > "configured-requires-read" => undefined,
> > "configured-requires-write" => undefined,
> > "default-requires-addressable" => false,
> > "default-requires-read" => false,
> > "default-requires-write" => true,
> > "applies-to" => undefined
> > }}},
> > "resource-adapters" => {"classification" => {"resource-adapter-security" => {
> > "configured-requires-addressable" => undefined,
> > "configured-requires-read" => undefined,
> > "configured-requires-write" => undefined,
> > "default-requires-addressable" => false,
> > "default-requires-read" => true,
> > "default-requires-write" => true,
> > "applies-to" => undefined
> > }}},
> > "undertow" => {"classification" => {
> > "undertow-filter" => {
> 396c369
> < "default-requires-write" => true,
> ---
> > "default-requires-write" => false,
> 399c372
> < "access-control" => {
> ---
> > "web-connector" => {
> 403,405c376,378
> < "default-requires-addressable" => true,
> < "default-requires-read" => true,
> < "default-requires-write" => true,
> ---
> > "default-requires-addressable" => false,
> > "default-requires-read" => false,
> > "default-requires-write" => false,
> 408c381
> < "system-property" => {
> ---
> > "undertow-handler" => {
> 414c387
> < "default-requires-write" => true,
> ---
> > "default-requires-write" => false,
> 417c390
> < "security-realm-ref" => {
> ---
> > "web-access-log" => {
> 421,423c394,396
> < "default-requires-addressable" => true,
> < "default-requires-read" => true,
> < "default-requires-write" => true,
> ---
> > "default-requires-addressable" => false,
> > "default-requires-read" => false,
> > "default-requires-write" => false,
> 426c399,426
> < }}
> ---
> > }},
> > "datasources" => {"classification" => {"data-source-security" => {
> > "configured-requires-addressable" => undefined,
> > "configured-requires-read" => undefined,
> > "configured-requires-write" => undefined,
> > "default-requires-addressable" => false,
> > "default-requires-read" => true,
> > "default-requires-write" => true,
> > "applies-to" => undefined
> > }}},
> > "remoting" => {"classification" => {"remoting-security" => {
> > "configured-requires-addressable" => undefined,
> > "configured-requires-read" => undefined,
> > "configured-requires-write" => undefined,
> > "default-requires-addressable" => false,
> > "default-requires-read" => true,
> > "default-requires-write" => true,
> > "applies-to" => undefined
> > }}},
> > "security" => {"classification" => {"misc-security" => {
> > "configured-requires-addressable" => undefined,
> > "configured-requires-read" => undefined,
> > "configured-requires-write" => undefined,
> > "default-requires-addressable" => false,
> > "default-requires-read" => true,
> > "default-requires-write" => true,
> > "applies-to" => undefined
> > }}}
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
More information about the jboss-jira
mailing list