+1 I remember there were two maps or a bidi-map. i.e. It was tracking both tenant ID and tenant domain. Make sure both issues are addressed (if my concern is valid).
On Tue, Sep 9, 2014 at 3:37 AM, Godwin Amila Shrimal <god...@wso2.com> wrote: > Hi. > > We had a discussion about cleaning cache data (delete map entry in > *JDBCTenantManger*), As per the discussion, we have to use cluster > message to notify all the nodes in the clustered environment to delete > the map entry. Then we have to give a public method in *JDBCTenantManger* to > delete the entry which is accessible from the *execute* method of the > cluster message. > > listed below the summary of the implementation. > > 1. Create a new public method in *JDBCTenantManger *to delete the map > entry. > 2. Create a new class which extends ClusteringMessage and implements > Serializable. > 3. Implement the *execute* method on above class to perform the delete > map entry method inside the *JDBCTenantManger.* > 4. When execute the deleteTenant method in *TenantMgtAdminService, *create > a object from new Cluster Message class created in #2 and set the tenantId > as a property and send to all nodes in the cluster. > 5. Nodes will receive the above message, deserialize it and perform the > execute method of the cluster message, which will delete the map entry in > each nodes. > > > Please give a feedback on this. > > > Thanks > Godwin > > > > > > > > > > > > > > > > On Mon, Sep 8, 2014 at 10:07 AM, Godwin Amila Shrimal <god...@wso2.com> > wrote: > >> Hi All, >> >> Thanks for the valuable responses, As I understood we have to use cluster >> messages(Which I need to study more) to delete the map entry in each nodes >> in clustered environment. >> @Danushka: Yes we can use the existing deleteTenant method in >> *JDBCTenantManger*. >> >> Thanks >> Godwin >> >> >> On Sun, Sep 7, 2014 at 9:59 PM, Danushka Fernando <danush...@wso2.com> >> wrote: >> >>> Hi >>> >>> On Sun, Sep 7, 2014 at 6:59 PM, Johann Nallathamby <joh...@wso2.com> >>> wrote: >>> >>>> >>>> >>>> >>>> On Sun, Sep 7, 2014 at 6:29 PM, Danushka Fernando <danush...@wso2.com> >>>> wrote: >>>> >>>>> Hi >>>>> To the first most problem raised by Goodwin, AFAIU when you call >>>>> tenant deletion you call deleteTenant in TenantManager. So why cant you >>>>> clear the tenant from the map in JDBCTenantManger's deleteTenant method? >>>>> >>>> >>>> Yes. Should be able to do that. But as Shankar explained we need to >>>> send cluster messages to do the same in all the nodes. >>>> >>> Yes I also agree to that point. +1. >>> >>>> >>>>> Thanks & Regards >>>>> Danushka Fernando >>>>> Software Engineer >>>>> WSO2 inc. http://wso2.com/ >>>>> Mobile : +94716332729 >>>>> >>>>> >>>>> On Sat, Sep 6, 2014 at 8:20 PM, Nirmal Fernando <nir...@wso2.com> >>>>> wrote: >>>>> >>>>>> Shouldn't this tenant event listener be triggered in all the nodes in >>>>>> the cluster? If not, I think we might need to fix it. >>>>>> >>>>>> >>>>>> On Sat, Sep 6, 2014 at 10:00 AM, Selvaratnam Uthaiyashankar < >>>>>> shan...@wso2.com> wrote: >>>>>> >>>>>>> Even if we have public method, how will it work in a clustered >>>>>>> environment? For example, delete request is sent to Node1, (and lets say >>>>>>> one way or the other we delete the entry from map on Node1), and create >>>>>>> request is sent to Node 2 (which still has the entry in the map). Are we >>>>>>> going to use cluster messages to clear the entry from all nodes? >>>>>>> >>>>>>> >>>>>>> On Friday, September 5, 2014, Nirmal Fernando <nir...@wso2.com> >>>>>>> wrote: >>>>>>> >>>>>>>> I think that should be ok. @Johann wdyt? >>>>>>>> >>>>>>>> >>>>>>>> On Fri, Sep 5, 2014 at 8:23 PM, Godwin Amila Shrimal < >>>>>>>> god...@wso2.com> wrote: >>>>>>>> >>>>>>>>> Hi Nirmal, >>>>>>>>> >>>>>>>>> Yes we can do it, But current map doesn't have public access, then >>>>>>>>> we need to have a public method inside the *JDBCTenantManager *to >>>>>>>>> delete the entry. >>>>>>>>> >>>>>>>>> >>>>>>>>> On Fri, Sep 5, 2014 at 8:00 PM, Nirmal Fernando <nir...@wso2.com> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Can't we use a tenant event listener and remove the entry from >>>>>>>>>> the map on a tenant deletion event? >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Fri, Sep 5, 2014 at 7:50 PM, Godwin Amila Shrimal < >>>>>>>>>> god...@wso2.com> wrote: >>>>>>>>>> >>>>>>>>>>> Hi, >>>>>>>>>>> >>>>>>>>>>> We are working on tenant deletion implementation, once we >>>>>>>>>>> perform the current tenant deletion operation in >>>>>>>>>>> *TenantMgtAdminService* it deletes registry, user store etc. >>>>>>>>>>> data. But it doesn't allow to create a tenant again with the same >>>>>>>>>>> tenant >>>>>>>>>>> domain name until restart the server. >>>>>>>>>>> >>>>>>>>>>> Reason for above situation is tenant domain and id is keeping in >>>>>>>>>>> a map(*tenantDomainIdMap*) inside the *JDBCTenantManager*. When >>>>>>>>>>> perform delete operation it check the availability from this map. >>>>>>>>>>> >>>>>>>>>>> As per the discussion we can see following solutions for this. >>>>>>>>>>> >>>>>>>>>>> *Solution1* >>>>>>>>>>> Check the tenant availability from database not from memory >>>>>>>>>>> data, but this will be costly if it is a frequently perform >>>>>>>>>>> operation. >>>>>>>>>>> >>>>>>>>>>> *Solution2* >>>>>>>>>>> We can give a public access to delete the particular key in the >>>>>>>>>>> map, this will be a security issue which people can pass tenant >>>>>>>>>>> domain and >>>>>>>>>>> perform deletion. >>>>>>>>>>> >>>>>>>>>>> *Solution3* >>>>>>>>>>> Run a periodic operation which check the availability of the >>>>>>>>>>> tenant in the database and delete from map which are not exist. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> We are looking for a feedback on this. >>>>>>>>>>> >>>>>>>>>>> Thanks >>>>>>>>>>> Godwin >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> *Godwin Amila Shrimal* >>>>>>>>>>> Senior Software Engineer >>>>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>>>> lean.enterprise.middleware >>>>>>>>>>> >>>>>>>>>>> mobile: *+94772264165* >>>>>>>>>>> linkedin: *http://lnkd.in/KUum6D <http://lnkd.in/KUum6D>* >>>>>>>>>>> twitter: https://twitter.com/godwinamila >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> Architecture mailing list >>>>>>>>>>> Architecture@wso2.org >>>>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> >>>>>>>>>> Thanks & regards, >>>>>>>>>> Nirmal >>>>>>>>>> >>>>>>>>>> Senior Software Engineer- Platform Technologies Team, WSO2 Inc. >>>>>>>>>> Mobile: +94715779733 >>>>>>>>>> Blog: http://nirmalfdo.blogspot.com/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Architecture mailing list >>>>>>>>>> Architecture@wso2.org >>>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Godwin Amila Shrimal* >>>>>>>>> Senior Software Engineer >>>>>>>>> WSO2 Inc.; http://wso2.com >>>>>>>>> lean.enterprise.middleware >>>>>>>>> >>>>>>>>> mobile: *+94772264165* >>>>>>>>> linkedin: *http://lnkd.in/KUum6D <http://lnkd.in/KUum6D>* >>>>>>>>> twitter: https://twitter.com/godwinamila >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Architecture mailing list >>>>>>>>> Architecture@wso2.org >>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> Thanks & regards, >>>>>>>> Nirmal >>>>>>>> >>>>>>>> Senior Software Engineer- Platform Technologies Team, WSO2 Inc. >>>>>>>> Mobile: +94715779733 >>>>>>>> Blog: http://nirmalfdo.blogspot.com/ >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> -- >>>>>>> S.Uthaiyashankar >>>>>>> VP Engineering >>>>>>> WSO2 Inc. >>>>>>> http://wso2.com/ - "lean . enterprise . middleware" >>>>>>> >>>>>>> Phone: +94 714897591 >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Architecture mailing list >>>>>>> Architecture@wso2.org >>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> >>>>>> Thanks & regards, >>>>>> Nirmal >>>>>> >>>>>> Senior Software Engineer- Platform Technologies Team, WSO2 Inc. >>>>>> Mobile: +94715779733 >>>>>> Blog: http://nirmalfdo.blogspot.com/ >>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Architecture mailing list >>>>>> Architecture@wso2.org >>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>> >>>>>> >>>>> >>>>> _______________________________________________ >>>>> Architecture mailing list >>>>> Architecture@wso2.org >>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>> >>>>> >>>> >>>> >>>> -- >>>> Thanks & Regards, >>>> >>>> *Johann Dilantha Nallathamby* >>>> Associate Technical Lead & Product Lead of WSO2 Identity Server >>>> Integration Technologies Team >>>> WSO2, Inc. >>>> lean.enterprise.middleware >>>> >>>> Mobile - *+94777776950* >>>> Blog - *http://nallaa.wordpress.com <http://nallaa.wordpress.com>* >>>> >>>> _______________________________________________ >>>> Architecture mailing list >>>> Architecture@wso2.org >>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>> >>>> Thanks & Regards >>> Danushka Fernando >>> Software Engineer >>> WSO2 inc. http://wso2.com/ >>> Mobile : +94716332729 >>> >>> _______________________________________________ >>> Architecture mailing list >>> Architecture@wso2.org >>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>> >>> >> >> >> -- >> *Godwin Amila Shrimal* >> Senior Software Engineer >> WSO2 Inc.; http://wso2.com >> lean.enterprise.middleware >> >> mobile: *+94772264165* >> linkedin: *http://lnkd.in/KUum6D <http://lnkd.in/KUum6D>* >> twitter: https://twitter.com/godwinamila >> > > > > -- > *Godwin Amila Shrimal* > Senior Software Engineer > WSO2 Inc.; http://wso2.com > lean.enterprise.middleware > > mobile: *+94772264165* > linkedin: *http://lnkd.in/KUum6D <http://lnkd.in/KUum6D>* > twitter: https://twitter.com/godwinamila > -- *Amila Maharachchi* Senior Technical Lead WSO2, Inc.; http://wso2.com Blog: http://maharachchi.blogspot.com Mobile: +94719371446
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture