*Dhanuka Ranasinghe*

Senior Software Engineer
WSO2 Inc. ; http://wso2.com
lean . enterprise . middleware

phone : +94 715381915


On Thu, Jul 10, 2014 at 6:06 PM, Sagara Gunathunga <[email protected]> wrote:

>
>
>
> On Thu, Jul 10, 2014 at 5:41 PM, Dhanuka Ranasinghe <[email protected]>
> wrote:
>
>> looping architecture
>>
>> *Dhanuka Ranasinghe*
>>
>> Senior Software Engineer
>> WSO2 Inc. ; http://wso2.com
>> lean . enterprise . middleware
>>
>> phone : +94 715381915
>>
>>
>> ---------- Forwarded message ----------
>> From: Dhanuka Ranasinghe <[email protected]>
>> Date: Thu, Jul 10, 2014 at 5:39 PM
>> Subject: Replacing OpenJPA with EclipseLink and same time make compatible
>> with Hibernate
>> To: WSO2 Developers' List <[email protected]>, Nandika Jayawardana <
>> [email protected]>
>> Cc: Prabath Abeysekera <[email protected]>, WSO2 Support-dev-group <
>> [email protected]>, Shani Ranasinghe <[email protected]>, Bhathiya
>> Jayasekara <[email protected]>, Harsha Kumara <[email protected]>,
>> Chathura Ekanayake <[email protected]>, Poshitha Dabare <
>> [email protected]>, Hasitha Aravinda <[email protected]>
>>
>>
>> Hi Nandika
>>
>> Since we have observed several issues with OpenJPA, we thought to replace
>> it with EclipseLink.
>> By doing that we can ship eclipselink since it's under eclipse license.
>> Also we are making backend logic JPA compliance then we can use Hibernate
>> as an option.
>>
> Except BPS  OpenJPA is used as platform level JPA provider hence we need
> to perform further studies before move into new F/W, can you please
> elaborate more about issues you found in OpenJPA and did you get any chance
> to discuss those issues with OpenJPA community. If not we need to do that
> first.
>

BPS team encountered with performance issues some time back and figured out
issue with OpenJPA layer. I have used Hibernate and never came across with
performance issues if we use them properly.
When developing RSS there were lot of issues related to ORM , Query
execution, result generation , parameter validation and bytecode
enhancement. We didn't follow any performance test for this yet. With my
experience If someone get into use with OpenJPA in OSGi environment with
JTA support he will feel the pain compared to other two (eclipselink and
Hibernate).

What I thought, If there is better alternative in front of us, why don't we
gonna use it. With our approach we can use both EclipseLink and Hibernate.
But because of license issue we only plan to ship EclipseLink stuff , and
end user have an option to replace EclipseLink with Hibernate. Apart from
that, have we done better evaluation over OpenJPA before using in platform,
if there is such a thing it would be easier to evaluate other providers as
well.

>
>
>>
>> Note: since OpenJPA runtime enhancement doesn't work as expected
>> currently both in SS and BPS, byte code enhancement done at build time,
>> which means openjpa specific stuff added to entity classes at byte code
>> level. Because of that we can't use same code base with eclipselink and
>> Hibernate.
>> But with EclipseLink and Hibernate run time enhancement happen properly,
>> so same code base can be use with relevant libs.
>>
>> Currently we have done the R&D part and it's working fine. But if two
>> projects use multiple libs for same purpose it won't be allowed. For that
>> we (SS and BPS) need to come for an agreement that in future we will get
>> rid of OpenJPA and replace with eclipselink (JPA and Hibernate
>> complicance). So there should be at least red mine task for this in BPS
>> side.
>>
>
> Have you perform any benchmark test for openJPA and EclipseLink ?
> Another factor to consider is how EclipseLink behave in a cluster, this[1]
> is bit of old but still worth to take a look.
>
> [1] -
> http://openjpa.208410.n2.nabble.com/OpenJPA-vs-EclipseLink-td7521217.html
>

These are the way we can cluster according to eclipseLink. Worth to try out
those approaches but at the moment it's not necessary for our case.

http://www.eclipse.org/eclipselink/documentation/2.4/solutions/scaling002.htm
http://wiki.eclipse.org/EclipseLink/Examples/JPA/CacheCoordination

Also with Hazelcast we can use clustering using spring

http://hazelcast.org/docs/2.1/manual/html-single/#SpringJPA


>
> Thanks !
>
>>
>>
>> SS team in a blocking state due to this. If BPS team can come to a
>> conclusion regarding this it will be great help to continue work on SS road
>> map.
>>
>> Cheers,
>> Dhanuka
>> *Dhanuka Ranasinghe*
>>
>> Senior Software Engineer
>> WSO2 Inc. ; http://wso2.com
>> lean . enterprise . middleware
>>
>> phone : +94 715381915
>>
>>
>> _______________________________________________
>> Architecture mailing list
>> [email protected]
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
> Sagara Gunathunga
>
> Senior Technical Lead; WSO2, Inc.;  http://wso2.com
> V.P Apache Web Services;    http://ws.apache.org/
> Linkedin; http://www.linkedin.com/in/ssagara
> Blog ;  http://ssagara.blogspot.com
>
>
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to