Hi On Fri, Feb 20, 2015 at 10:58 PM, Rajkumar Rajaratnam <rajkum...@wso2.com> wrote:
> Thanks Reka for the detail explanation. I got the point now. I am in the > process of changing these logic to incorporate deployment policy changes > (earlier, deployment policy refers an application. but now, cartridge or > cartridge group refers a deployment policy). That's why I wanted to > understand this logic. > > So this is simple. An application instance bounds to a network partition. > A group instance bounds to a partition within its parent's network > partition. A cluster instance bounds to the same partition as its parent. > > Am I correct? > > Yah..Exactly.. Thanks, Reka > Thanks. > > On Sat, Feb 21, 2015 at 10:28 AM, Reka Thirunavukkarasu <r...@wso2.com> > wrote: > >> Hi >> >> >> >> On Fri, Feb 20, 2015 at 7:44 PM, Rajkumar Rajaratnam <rajkum...@wso2.com> >> wrote: >> >>> >>> >>> On Sat, Feb 21, 2015 at 7:36 AM, Imesh Gunaratne <im...@apache.org> >>> wrote: >>> >>>> This method creates a copy of the network partition that it belongs to >>>> and call it "Group Level Network Partition Context". >>>> >>> >>> Thanks Imesh for the clarification. So purpose of this method is to >>> create a "Group Level Network Partition Context" obj for a group instance >>> or return if it already exists in the group monitor. But why it is checking >>> whether the parent of this group is having a "Group Level Network Partition >>> Context" obj already in the group monitor? If the parent is having "Group >>> Level Network Partition Context" obj, it is returning the same obj. Does >>> this mean the parent and the child groups are having the same "Group Level >>> Network Partition Context"? >>> >> >> What do you mean by getting the Group Level Network Partition Context >> from parent? Can you point me the line no of the code? If you meant the >> parentInstanceContext, >> then that is not a type NetworkPartitionContext. ParentInstanceContext is a >> dataholder of ParentInstance. Let me explain a bit about how we handle this. >> >> As you may know, we are parsing policies in application level or group >> level or cluster level according to the policy plugged to the application. >> Also, we are not just creating one instance of application. Rather we >> support multiple application instances or group instances or cluster >> instances. With the instances concept only, we have achieved group scaling >> and high availability for a group/application by creating multiple >> instances of it. Also, we spin application instance per network partition. >> When we create the application instance, we have to choose the correct >> network partition. After that the children of that application will enforce >> to use the same network partition even if they have a deployment policy >> associated with them. With the deployment policy associated with those >> children, they can only choose which partition they need to create their >> group instance or cluster instance. That's why in the GroupMonitor, we are >> getting the networkPartitionId from the parentInstanceContext, since the >> parent has already chosen the networkPartitionId. >> >> This is the same approach when a group chosen a partitionId with the >> group policy, underlying group monitor or cluster monitor will refer to the >> parent and get the correct partitionId. >> >> I will work on sequence diagrams and class diagrams to explain the logic >> implemented. >> >> Thanks, >> Reka >> >>> >>> Thanks. >>> >>>> >>>> On Fri, Feb 20, 2015 at 7:04 PM, Rajkumar Rajaratnam < >>>> rajkum...@wso2.com> wrote: >>>> >>>>> Hi Devs, >>>>> >>>>> Please explain me the logic of this method >>>>> GroupMonitor#getGroupLevelNetworkPartitionContext(); >>>>> >>>>> >>>>> https://github.com/apache/stratos/blob/master/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/component/GroupMonitor.java#L528-558 >>>>> >>>>> Thanks. >>>>> >>>>> -- >>>>> Rajkumar Rajaratnam >>>>> Committer & PMC Member, Apache Stratos >>>>> Software Engineer, WSO2 >>>>> >>>>> Mobile : +94777568639 >>>>> Blog : rajkumarr.com >>>>> >>>> >>>> >>>> >>>> -- >>>> Imesh Gunaratne >>>> >>>> Technical Lead, WSO2 >>>> Committer & PMC Member, Apache Stratos >>>> >>> >>> >>> >>> -- >>> Rajkumar Rajaratnam >>> Committer & PMC Member, Apache Stratos >>> Software Engineer, WSO2 >>> >>> Mobile : +94777568639 >>> Blog : rajkumarr.com >>> >> >> >> >> -- >> Reka Thirunavukkarasu >> Senior Software Engineer, >> WSO2, Inc.:http://wso2.com, >> Mobile: +94776442007 >> >> >> > > > -- > Rajkumar Rajaratnam > Committer & PMC Member, Apache Stratos > Software Engineer, WSO2 > > Mobile : +94777568639 > Blog : rajkumarr.com > -- Reka Thirunavukkarasu Senior Software Engineer, WSO2, Inc.:http://wso2.com, Mobile: +94776442007