Hi,

Created the PR[1], by merging latest throttling fixes with synapse-commons.
After doing the changes, was able to successfully build wso2-synapse and
carbon-mediation with unit tests. Ran all the integration tests in
product-esb, after building the product on top of latest synapse and
carbon-mediation changes.

Please review and merge the PR.

[1] https://github.com/wso2/wso2-synapse/pull/360

On Mon, Sep 14, 2015 at 5:07 PM, Amila De Silva <ami...@wso2.com> wrote:

> Hi Isuru,
>
> There aren't any changes to be merged on MEPClient and
> SynapseCallbackReceiver. Changes that need merging are done on classes
> residing under [1].
>
> Let me clarify a bit what these changes are;
>
> While fixing some throttling issues in AM 1.6.0, certain changes were done
> on the part that replicates throttling counters. Earlier these counters
> were replicated using a ClusterMessage, but after the fixes counters are
> replicated using  Hazelcast AtomicLongs. The fixes were done on 
> org.wso2.carbon.throttle.core_4.2.0,
> which is maintained in svn and after fixes were done, throttle.core needs
> depending on com.hazelcast.wso2 component.
>
> When moving synapse code on to Git, throttle.core has been absorbed into
> synapse, and now it is kept under [1]. Parallel to the changes mentioned
> above, some other fixes have been done on the throttling & synapse (which
> now is on Git) and it's those changes that make synapse depend on throttle
> core. The change is MEPClient and SynapseCallbackReceiver using a reference
> of ConcurrentAccessController (you can find the specific code changes at
> [2])
>
>
> [1]
> https://github.com/wso2/wso2-synapse/tree/master/modules/commons/src/main/java/org/apache/synapse/commons/throttle
> [2]
> https://github.com/wso2/wso2-synapse/blob/master/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java#L497-L515
>
>
>
> On Mon, Sep 14, 2015 at 3:54 PM, Isuru Udana <isu...@wso2.com> wrote:
>
>> Hi AmilaD,
>>
>> Can you please point us the changes need to be merged in synapse (in
>> MEPClient and SynapseCallbackReceiver) ?
>>
>> On Mon, Sep 14, 2015 at 2:58 PM, Amila De Silva <ami...@wso2.com> wrote:
>>
>>> Hi All,
>>>
>>> While carrying out this task, came to a point where certain classes
>>> cannot be moved out of synapse.
>>>
>>> For some of the improvements done recently, ConcurrentAccessController
>>> (which is one of the classes that originally resided in throttle core) has
>>> been used from SynapseCallbackReceiver and Axis2FlexibleMEPClient. So now
>>> either ConcurrentAccessController has to reside inside synapse, or else it
>>> has to go into another different component on which synapse would have to
>>> depend on. The whole point of moving throttling related code out of synapse
>>> is to prevent synapse depending on any carbon components.
>>>
>>> Since synapse depending on Hazelcast is not something that can be
>>> eliminated completely, is it fine to keep throttle.core inside synapse and
>>> merge new changes? When merging throttling fixes, either we have to
>>> introduce a service component to synapse, which would
>>> consume hazelcast.instance.service or we have to provide a method to set
>>> the HazelcastInstance that will be used for replicating throttling counts.
>>>
>>> On Fri, Sep 11, 2015 at 9:01 PM, Amila De Silva <ami...@wso2.com> wrote:
>>>
>>>> Hi Chanaka,
>>>>
>>>> Since throttle core can be used on its own, thought of creating a
>>>> separate feature out of that - so a new place to put throttle component. If
>>>> we put it under mediation-throttle, that would imply two components have to
>>>> be used together, isn't it?
>>>>
>>>> On Fri, Sep 11, 2015 at 6:45 PM, Chanaka Fernando <chana...@wso2.com>
>>>> wrote:
>>>>
>>>>> Hi Amila,
>>>>>
>>>>> You can find [1] which already has the throttle policy editor related
>>>>> packages and named as mediation-throttle. You can move the throttle-core
>>>>> packages to this component.
>>>>>
>>>>> [1]
>>>>> https://github.com/wso2/carbon-mediation/tree/master/components/mediation-throttle
>>>>>
>>>>> On Fri, Sep 11, 2015 at 6:23 PM, Sanjeewa Malalgoda <sanje...@wso2.com
>>>>> > wrote:
>>>>>
>>>>>> +1.
>>>>>>
>>>>>>
>>>>>> On Fri, Sep 11, 2015 at 5:20 PM, Amila De Silva <ami...@wso2.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Will be moving throttle.core to a new component under
>>>>>>> carbon-mediation. The new component name will be throttle-core and a new
>>>>>>> feature with the same name will be created. Planning to do these 
>>>>>>> changes on
>>>>>>> carbon-mediation 4.4.11-SNAPSHOT and synapse 2.1.3-wso2v12-SNAPSHOT.
>>>>>>>
>>>>>>> On Mon, Sep 7, 2015 at 6:25 PM, Amila De Silva <ami...@wso2.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hi All,
>>>>>>>>
>>>>>>>> One of the changes done while moving to Git was, moving source code
>>>>>>>> which was under org.wso2.carbon.throttle.core to wso2-synapse. Throttle
>>>>>>>> core is used by both ESB (in Throttle mediator) and by API Manager (in
>>>>>>>> APIThrottleHandler - to keep track of the number of API calls made 
>>>>>>>> over the
>>>>>>>> cluster). At the time throttle core was moved, it was depending on 
>>>>>>>> Axis2
>>>>>>>> only, making it possible to move the source code to wso2-synapse - 
>>>>>>>> which is
>>>>>>>> not depending on any carbon components.
>>>>>>>>
>>>>>>>> While doing several improvements on throttling, Hazelcast
>>>>>>>> AtomicLongs were used for keeping cluster-wide counts, which now 
>>>>>>>> creates a
>>>>>>>> coupling between Hazelcast and Throttle Core. If these changes are to 
>>>>>>>> be
>>>>>>>> merged with synapse, we would have to add a dependency to Hazelcast.
>>>>>>>>
>>>>>>>> The other option is to move Throttle Core into carbon-mediation.
>>>>>>>> Since this already depends on several carbon components adding 
>>>>>>>> Hazelcast as
>>>>>>>> a dependancy won't be an issue.
>>>>>>>>
>>>>>>>> --
>>>>>>>> *Amila De Silva*
>>>>>>>>
>>>>>>>> WSO2 Inc.
>>>>>>>> mobile :(+94) 775119302
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> *Amila De Silva*
>>>>>>>
>>>>>>> WSO2 Inc.
>>>>>>> mobile :(+94) 775119302
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>>
>>>>>> *Sanjeewa Malalgoda*
>>>>>> WSO2 Inc.
>>>>>> Mobile : +94713068779
>>>>>>
>>>>>> <http://sanjeewamalalgoda.blogspot.com/>blog
>>>>>> :http://sanjeewamalalgoda.blogspot.com/
>>>>>> <http://sanjeewamalalgoda.blogspot.com/>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> --
>>>>> Chanaka Fernando
>>>>> Senior Technical Lead
>>>>> WSO2, Inc.; http://wso2.com
>>>>> lean.enterprise.middleware
>>>>>
>>>>> mobile: +94 773337238
>>>>> Blog : http://soatutorials.blogspot.com
>>>>> LinkedIn:http://www.linkedin.com/pub/chanaka-fernando/19/a20/5b0
>>>>> Twitter:https://twitter.com/chanakaudaya
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> *Amila De Silva*
>>>>
>>>> WSO2 Inc.
>>>> mobile :(+94) 775119302
>>>>
>>>>
>>>
>>>
>>> --
>>> *Amila De Silva*
>>>
>>> WSO2 Inc.
>>> mobile :(+94) 775119302
>>>
>>>
>>> _______________________________________________
>>> Dev mailing list
>>> Dev@wso2.org
>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>
>>>
>>
>>
>> --
>> *Isuru Udana*
>> Associate Technical Lead
>> WSO2 Inc.; http://wso2.com
>> email: isu...@wso2.com cell: +94 77 3791887
>> blog: http://mytecheye.blogspot.com/
>>
>
>
>
> --
> *Amila De Silva*
>
> WSO2 Inc.
> mobile :(+94) 775119302
>
>


-- 
*Amila De Silva*

WSO2 Inc.
mobile :(+94) 775119302
_______________________________________________
Dev mailing list
Dev@wso2.org
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to