Hi Miyru, I think we can intercept the Carbon context by writing a dispatch in DispatchPhase this can be a component whose suppose to resides outside synapse.
Cheers Dushan On Fri, Jul 12, 2013 at 9:58 AM, Afkham Azeez <[email protected]> wrote: > > > > On Fri, Jul 12, 2013 at 9:54 AM, Miyuru Wanninayaka <[email protected]>wrote: > >> >> >> On Fri, Jul 12, 2013 at 9:36 AM, Afkham Azeez <[email protected]> wrote: >> >>> >>> >>> >>> On Fri, Jul 12, 2013 at 7:28 AM, Miyuru Wanninayaka <[email protected]>wrote: >>> >>>> Hi Azeez, >>>> >>>> Sorry, we were not properly following dev@ discussions recently as >>>> team was very busy with ESB 4.7 release. >>>> >>>> Yes we can set proper CC as thread local in request path via handler >>>> for NIO transports by looking at To address. But how this can implement in >>>> generic manner for other transport ( JMS, VFS....). May be since other >>>> transports does not support MT anyway, we can always set ST CC for non http >>>> transports? >>>> >>>> Also how we can handle thread switching in response path of NIO? >>>> Handler will not help in response path. >>>> >>>> Also there are some mediation threads spawns within synapse without >>>> going through axis2 flow such as >>>> * Synapse tasks >>>> * Message processors >>>> * Priority executors >>>> * Clone and iterate mediators >>>> >>>> How can we set CC in these cases? >>> >>> >>> Any bit of execution has to to be associated with some tenant. It is >>> true for everything listed above. We need to track things like how much CPU >>> time each tenant consumed and so on. So you need to identify the relevant >>> plug points, and inject the proper CC. >>> >> >> Only problem is above mentioned flows cannot intercept from outside of >> synapse. In such case do we have alternative than writing carbon specific >> code inside synapse? >> > > > No. This is why interfaces are needed. We have done this enough & more > time for Axis2, without writing WSO2 specific code in Axis2. > > >> >>> >>>> >>>> >>>> On Thu, Jul 11, 2013 at 9:50 PM, Afkham Azeez <[email protected]> wrote: >>>> >>>>> >>>>> >>>>> >>>>> On Thu, Jul 11, 2013 at 7:59 PM, Miyuru Wanninayaka >>>>> <[email protected]>wrote: >>>>> >>>>>> ESB does not sets Carbon Context as thread local because PTT/NHTTP >>>>>> threads are totally under synapse. AFIK only servlet transport sets CC >>>>>> as a >>>>>> thread local. >>>>>> >>>>>> In 4.1.0 branch this is working fine without setting CC as thread >>>>>> local. Did something changed in trunk? >>>>> >>>>> >>>>> Please keep yourself up to date on what is going on at the platform >>>>> level. Platform level enhancements have an effect on all products. There >>>>> have been several mail threads on this. you should be able to define a >>>>> handler which sets the proper CC into the Thread. >>>>> >>>>>> >>>>>> >>>>>> On Thu, Jul 11, 2013 at 7:49 PM, Amila Suriarachchi >>>>>> <[email protected]>wrote: >>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Thu, Jul 11, 2013 at 7:31 PM, Miyuru Wanninayaka <[email protected] >>>>>>> > wrote: >>>>>>> >>>>>>>> Hi Amila, >>>>>>>> >>>>>>>> Are you referring to CarbonContext thread local variable? >>>>>>> >>>>>>> >>>>>>> yes it gets the tenant domain like this >>>>>>> >>>>>>> public static String getTenantDomain() { >>>>>>> return getCarbonContext().getTenantDomain(); >>>>>>> } >>>>>>> >>>>>>> thanks, >>>>>>> Amila. >>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Thu, Jul 11, 2013 at 6:27 PM, Amila Suriarachchi <[email protected] >>>>>>>> > wrote: >>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On Thu, Jul 11, 2013 at 4:40 PM, Dushan Abeyruwan <[email protected] >>>>>>>>> > wrote: >>>>>>>>> >>>>>>>>>> Hi >>>>>>>>>> Getting following error when executing proxy service ESB 4.8.0 >>>>>>>>>> built 2013-07-11 >>>>>>>>>> >>>>>>>>>> [2013-07-11 16:37:22,177] INFO - ProxyService Building Axis >>>>>>>>>> service for Proxy service : SearchTwitter >>>>>>>>>> [2013-07-11 16:37:22,177] INFO - ProxyService Adding service >>>>>>>>>> SearchTwitter to the Axis2 configuration >>>>>>>>>> [2013-07-11 16:37:22,182] INFO - DeploymentInterceptor Deploying >>>>>>>>>> Axis2 service: SearchTwitter {super-tenant} >>>>>>>>>> [2013-07-11 16:37:22,208] INFO - ProxyService Successfully >>>>>>>>>> created the Axis2 service for Proxy service : SearchTwitter >>>>>>>>>> [2013-07-11 16:37:29,694] INFO - LogMediator To: >>>>>>>>>> /services/SearchTwitter, WSAction: urn:getQuote, SOAPAction: >>>>>>>>>> urn:getQuote, >>>>>>>>>> MessageID: urn:uuid:6421430e-e95c-4aa2-a9ba-f*cd37f7753e3, >>>>>>>>>> Direction: request* >>>>>>>>>> *[2013-07-11 16:37:29,695] ERROR - NativeWorkerPool Uncaught >>>>>>>>>> exception* >>>>>>>>>> *java.lang.NullPointerException* >>>>>>>>>> * at >>>>>>>>>> java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:768) >>>>>>>>>> * >>>>>>>>>> * at >>>>>>>>>> org.wso2.carbon.caching.impl.CacheManagerFactoryImpl.getCacheManager(CacheManagerFactoryImpl.java:78) >>>>>>>>>> * >>>>>>>>>> at >>>>>>>>>> org.wso2.carbon.registry.core.utils.RegistryUtils.getCacheManager(RegistryUtils.java:289) >>>>>>>>>> at >>>>>>>>>> org.wso2.carbon.registry.core.utils.RegistryUtils.getResourceCache(RegistryUtils.java:272) >>>>>>>>>> at >>>>>>>>>> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getCache(CacheBackedRegistry.java:62) >>>>>>>>>> at >>>>>>>>>> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.resourceExists(CacheBackedRegistry.java:246) >>>>>>>>>> at >>>>>>>>>> org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:629) >>>>>>>>>> at >>>>>>>>>> org.wso2.carbon.mediation.registry.WSO2Registry.getResource(WSO2Registry.java:527) >>>>>>>>>> at >>>>>>>>>> org.wso2.carbon.mediation.registry.WSO2Registry.lookup(WSO2Registry.java:131) >>>>>>>>>> at >>>>>>>>>> org.apache.synapse.registry.AbstractRegistry.getResource(AbstractRegistry.java:63) >>>>>>>>>> at >>>>>>>>>> org.apache.synapse.config.SynapseConfiguration.getSequenceTemplate(SynapseConfiguration.java:395) >>>>>>>>>> at >>>>>>>>>> org.apache.synapse.core.axis2.Axis2MessageContext.getSequenceTemplate(Axis2MessageContext.java:191) >>>>>>>>>> at >>>>>>>>>> org.apache.synapse.mediators.template.InvokeMediator.mediate(InvokeMediator.java:71) >>>>>>>>>> at >>>>>>>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:71) >>>>>>>>>> at >>>>>>>>>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:114) >>>>>>>>>> at >>>>>>>>>> org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:162) >>>>>>>>>> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) >>>>>>>>>> at >>>>>>>>>> org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:404) >>>>>>>>>> at >>>>>>>>>> org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:184) >>>>>>>>>> at >>>>>>>>>> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(Nat >>>>>>>>>> >>>>>>>>> >>>>>>>>> seems like tenant domain is null for the threads originating from >>>>>>>>> passthrough transport threads. Can you please check the tenant domain >>>>>>>>> of >>>>>>>>> the pass through transport threads? >>>>>>>>> >>>>>>>>> thanks, >>>>>>>>> Amila. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Dushan Abeyruwan >>>>>>>>>> Associate Tech Lead >>>>>>>>>> *Integration Technologies Team* >>>>>>>>>> *WSO2 Inc. http://wso2.com/* >>>>>>>>>> *Mobile:(+94)714408632* >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Dev mailing list >>>>>>>>>> [email protected] >>>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Amila Suriarachchi* >>>>>>>>> >>>>>>>>> Software Architect >>>>>>>>> WSO2 Inc. ; http://wso2.com >>>>>>>>> lean . enterprise . middleware >>>>>>>>> >>>>>>>>> phone : +94 71 3082805 >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> Dev mailing list >>>>>>>>> [email protected] >>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Miyuru Wanninayaka >>>>>>>> Technical Lead >>>>>>>> WSO2 Inc. : http://wso2.com >>>>>>>> >>>>>>>> Mobile : +94 77 209 9788 >>>>>>>> Blog : http://miyurudw.blogspot.com >>>>>>>> Flickr : http://www.flickr.com/photos/miyuru_daminda >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Amila Suriarachchi* >>>>>>> >>>>>>> Software Architect >>>>>>> WSO2 Inc. ; http://wso2.com >>>>>>> lean . enterprise . middleware >>>>>>> >>>>>>> phone : +94 71 3082805 >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Miyuru Wanninayaka >>>>>> Technical Lead >>>>>> WSO2 Inc. : http://wso2.com >>>>>> >>>>>> Mobile : +94 77 209 9788 >>>>>> Blog : http://miyurudw.blogspot.com >>>>>> Flickr : http://www.flickr.com/photos/miyuru_daminda >>>>>> >>>>>> _______________________________________________ >>>>>> Dev mailing list >>>>>> [email protected] >>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Afkham Azeez* >>>>> Director of Architecture; WSO2, Inc.; http://wso2.com >>>>> Member; Apache Software Foundation; http://www.apache.org/ >>>>> * <http://www.apache.org/>** >>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >>>>> twitter: >>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >>>>> * >>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >>>>> * >>>>> * >>>>> *Lean . Enterprise . Middleware* >>>>> >>>> >>>> >>>> >>>> -- >>>> Miyuru Wanninayaka >>>> Technical Lead >>>> WSO2 Inc. : http://wso2.com >>>> >>>> Mobile : +94 77 209 9788 >>>> Blog : http://miyurudw.blogspot.com >>>> Flickr : http://www.flickr.com/photos/miyuru_daminda >>>> >>> >>> >>> >>> -- >>> *Afkham Azeez* >>> Director of Architecture; WSO2, Inc.; http://wso2.com >>> Member; Apache Software Foundation; http://www.apache.org/ >>> * <http://www.apache.org/>** >>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919 >>> blog: **http://blog.afkham.org* <http://blog.afkham.org>* >>> twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> >>> * >>> linked-in: **http://lk.linkedin.com/in/afkhamazeez* >>> * >>> * >>> *Lean . Enterprise . Middleware* >>> >> >> >> >> -- >> Miyuru Wanninayaka >> Technical Lead >> WSO2 Inc. : http://wso2.com >> >> Mobile : +94 77 209 9788 >> Blog : http://miyurudw.blogspot.com >> Flickr : http://www.flickr.com/photos/miyuru_daminda >> > > > > -- > *Afkham Azeez* > Director of Architecture; WSO2, Inc.; http://wso2.com > Member; Apache Software Foundation; http://www.apache.org/ > * <http://www.apache.org/>** > email: **[email protected]* <[email protected]>* cell: +94 77 3320919 > blog: **http://blog.afkham.org* <http://blog.afkham.org>* > twitter: **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez> > * > linked-in: **http://lk.linkedin.com/in/afkhamazeez* > * > * > *Lean . Enterprise . Middleware* > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- Dushan Abeyruwan Associate Tech Lead *Integration Technologies Team* *WSO2 Inc. http://wso2.com/* *Mobile:(+94)714408632*
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
