[infinispan-issues] [JBoss JIRA] (ISPN-7326) Enable domain sites to be created from a single profile

Galder Zamarreño (JIRA) issues at jboss.org
Mon Jan 9 08:18:00 EST 2017


    [ https://issues.jboss.org/browse/ISPN-7326?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13344730#comment-13344730 ] 

Galder Zamarreño commented on ISPN-7326:
----------------------------------------

After careful investigation, it turns out that {{remote-site}}'s name is resolve correctly thanks to the fact that the name is only resolved when the node is started up, e.g. from StackAddHandler.java

{code}
            String siteName = RelayResourceDefinition.SITE.resolveModelAttribute(context, relay).asString();
            RelayConfigurationBuilder relayBuilder = builder.setRelay(siteName);
{code}

On the other hand, {{backup}}'s site attribute and {{remote-site}}'s name attributes are not resolved. 

So, similar pattern should be applied here.

However, a problem present for {{backup}}'s site and {{remote-site}}'s name attributes is that their names seem to form part of addresses, so there's no attributes for them per-se and since they are part of addresses, the resolution might need to happen when XML is read but that would not work since it's the host controller that does that?

> Enable domain sites to be created from a single profile
> -------------------------------------------------------
>
>                 Key: ISPN-7326
>                 URL: https://issues.jboss.org/browse/ISPN-7326
>             Project: Infinispan
>          Issue Type: Enhancement
>          Components: Server
>            Reporter: Galder Zamarreño
>            Assignee: Galder Zamarreño
>
> In domain mode, it should be possible to start two nodes, each belonging to a different site and get them to join the inter-site cluster providing a single profile.
> To be able to do that, the following needs to happen:
> * A cache's backup site name needs to be able to be defined via a system property, e.g.
> {code}
>           <backups>
>             <backup site="${test.site.local.name:NA}" strategy="SYNC"/>
>           </backups>
> {code}
> * A jgroup stack's relay remote site name needs to be able to be defined via a system property, e.g.
> {code}
>           <relay site="${test.site.local.name:NA}">
>             <remote-site name="${test.site.remote.name:NA}" channel="xsite"/>
>           </relay>
> {code}
> With these changes, it should be possible to define a single profile, and then override site local and remote names via system properties, e.g.
> {code}
>         <server-group name="site-earth" profile="clustered">
>             <jvm name="default">
>                 <heap size="64m" max-size="512m"/>
>                 <jvm-options>
>                     <option value="-Djgroups.join_timeout=1000"/>
>                     <option value="-Djboss.default.multicast.address=234.99.74.14"/>
>                     <option value="-Dtest.site.local.name=EARTH"/>
>                     <option value="-Dtest.site.remote.name=MOON"/>
>                 </jvm-options>
>             </jvm>
>             <socket-binding-group ref="xsite-sockets"/>
>         </server-group>
>         <server-group name="site-moon" profile="clustered">
>             <jvm name="default">
>                 <heap size="64m" max-size="512m"/>
>                 <jvm-options>
>                     <option value="-Djgroups.join_timeout=1000"/>
>                     <option value="-Djboss.default.multicast.address=234.99.74.24"/>
>                     <option value="-Dtest.site.local.name=MOON"/>
>                     <option value="-Dtest.site.remote.name=EARTH"/>
>                 </jvm-options>
>             </jvm>
>             <socket-binding-group ref="xsite-sockets"/>
>         </server-group>
> {code}
> Right now no system property substitution happens for the elements above and hence it's not possible to achieve this with a single profile. Instead, profiles need to be duplicated making it hard to maintain.



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)



More information about the infinispan-issues mailing list