Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [eclipselink-users] What kind of Oracle Real Application Clusters(RAC) support EclipseLink provides?

You made a good point I didn’t think about: in some phase of the commit the exception throw by RAC may impact other resources enlisted in the same transaction, then it’s out of scope for EclipseLink to handle those cases. However, I can imagine a strong integration between Oracle RAC and EclipseLink that could handle this special case -> RAC could not send any error to the resource manager but instead ask EclipseLink to retry directly with the new DB.

 

I cannot find any entry point about EclipseLink default recovery timing settings, is it a concept that already exist? With current EclipseLink code, if I use RAC, should I preferably set anything different with EclipseLink settings?

 


From: eclipselink-users-bounces@xxxxxxxxxxx [mailto:eclipselink-users-bounces@xxxxxxxxxxx] On Behalf Of Gordon Yorke
Sent: Thursday, November 13, 2008 8:08 AM
To: EclipseLink User Discussions
Subject: Re: [eclipselink-users] What kind of Oracle Real Application Clusters(RAC) support EclipseLink provides?

 

Hello Sebastien,
    EclipseLink does support retrying queries executed outside of a transaction but inside a transaction EclipseLink will return the SQL Exception to the application so that the transaction can be replayed as EclipseLink EM may not be th only participant in a transaction.
    For a Java SE deployment I can see how it would be useful to recommit an EntityManager transaction but depending on how many flushes occurred and what other application threads were active on the recovery database the transaction may no longer be valid (ie if your changes were in reaction to certain existing state). 
    We could add a feature to support the simple case.

    Also please note that you may need to configure the query retry specifically for RAC as RAC recovery times can be longer than the default recovery timing settings in EclipseLink.  To update these settings currently you will need a Session Customizer to set the values on the Session's DatabaseLogin.
--Gordon

Sebastien Tardif wrote:

What kind of Oracle Real Application Clusters (RAC) support EclipseLink provides?

 

We use RAC so we get failover at DB/connection level, but it will be nice since we exclusively access the DB via EclipseLink, that EclipseLink provide the failover at application level by:

retry query (read) if one RAC DB fail during execution

restart commit phase (write), including previous flush if one RAC DB fail during the commit phase

 



 
_______________________________________________
eclipselink-users mailing list
eclipselink-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipselink-users
  

Back to the top