How does it work? In the composite file I would use *requires="recoveryRules
*, but how about the definitions.xml file? Is there a way to set the
configurations like the recovery rules XML file is defined? (take a look at
[1])

[1]
http://svn.apache.org/repos/asf/tuscany/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules.xml

On Mon, Jul 6, 2009 at 1:37 PM, Luciano Resende <[email protected]>wrote:

> On Mon, Jul 6, 2009 at 7:57 AM, Douglas Leite<[email protected]> wrote:
> >
> >
> > On Mon, Jul 6, 2009 at 11:05 AM, Luciano Resende <[email protected]>
> > wrote:
> >>
> >> On Mon, Jul 6, 2009 at 6:48 AM, Douglas Leite<[email protected]>
> wrote:
> >> > Here are some updates from my project, (source code at [1]):
> >> >
> >> > 1) A new test scenario was developed: primary-backup with N backups.
> In
> >> > this
> >> > scenario we have a server-client application, with N nodes on the
> server
> >> > side. The first node to join on the server side becomes the primary
> >> > server,
> >> > and the subsequent ones are the backups. The primary gets a request
> from
> >> > a
> >> > client, and sends a reply to the client and a copy of it state to the
> >> > backups. When the primary fails, the first backup on the queue becomes
> >> > the
> >> > new server. On the other hand, when a backup fails, the primary simply
> >> > stop
> >> > to send updates to it.
> >> >
> >> > This scenario was implemented using the guardian-model approach.
> >>
> >> What is a node here, is this the same concept of a SCA Node ?
> >
> > I guess so. Actually, each node is implemented as a component.
> >
> > Take a look at:
> >
> http://svn.apache.org/repos/asf/tuscany/sandbox/dougsleite/guardian-model/src/main/resources/primaryNbackups.composite
> > The nodes are implemented as components whose name are "Participant#".
>
> In Tuscany, Node can run one or more composites, that can have
> multiple components....
>
> >
> >>
> >> >
> >> > 2) A new tag was added to the recovery rules XML file:
> >> > <affected_participants>. It allows specify in which participants the
> >> > exception will be raised. For example:
> >> >
> >> >         <participant match="*.BACKUP">
> >> >             <throw_exception
> >> >
> >> >
> class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.PrimaryFailedException"
> >> > target_context="MAIN">
> >> >                 <affected_participants>FIRST</affected_participants>
> >> >             </throw_exception>
> >> >         </participant>
> >> >
> >> > With this rule, only the first backup on the backup queue will have a
> >> > PrimaryFailedException raised in it's MAIN context.
> >> >
> >>
> >> How is this configuration integrated with SCA and the composite file ?
> >
> > At this moment the two files are separated, and there is a reference on
> the
> > composite file to the recovery rule XML file. I am using a property tag
> to
> > link the two files:
> >
> >     <component name="GuardianGroup">
> >         <implementation.java
> > class="org.apache.tuscany.sca.guardian.GuardianGroupImpl"/>
> >         <property
> >
> name="recovery_rules">src/main/resources/recoveryrules_nbackpus.xml</property>
> >     </component>
> >
> > I do not know if it is the best design, but as a first design I think it
> is
> > good. :)
> >
>
> It looks like we are creating yet another piece of xml, in yet another
> side file to configure things...
> How about using intents (e.g requeires="recoveryRules"), and then use
> a policySet in the definitions.xml to further configure it ?
>
> >>
> >> >
> >> > Thoughts?
> >> >
> >>
> >> What are your plans to integrate this into the SCA Runtime ? It would
> >> be really good to continue the design discussions we had earlier and
> >> advance on the SCA/Tuscany Runtime integration discussion. I wouldn't
> >> like to see this as a sandbox side project for much more time.
> >>
>
> Any comments here ?
>
>
> --
> Luciano Resende
> Apache Tuscany, Apache PhotArk
> http://people.apache.org/~lresende <http://people.apache.org/%7Elresende>
> http://lresende.blogspot.com/
>



-- 
Douglas Siqueira Leite
Graduate student at University of Campinas (Unicamp), Brazil

Reply via email to