Handling Oracle RAC Failover at the application layer

Hi All,
I am currently researching best practices for handling oracle RAC failover at the application layer since transactional statements (INSERT,UPDATE and DELETE) are not handled transparently. So I have few questions for the community:
1. In case of a node failure would I need to roll back all of transactional statements that are part of the transaction or would I have to re-execute the one that failed only?
2. Does things change with XA 2 phase commit transactions?
Any input and/or architecture suggestions would be much appreciated.
Regards,
Dmitriy Frolov

Hi,
the Oracle RAC stack works very vell on its own, without the need of a third party clusterware. It will be aware of failures on the nodes.
Database will be using ASM or RAW or NFS devices for Shared storage.
Oracle Clusterware can also be configured to monitor your applications and to a failover to other nodes.
However if you need a shared filesystem for your own applications, then you will have to use QFS or similar (which again than requires Sun Cluster).
See: http://www.oracle.com/technology/products/database/clusterware/index.html
Regards
Sebastian

Similar Messages

  • Do I need to change OCI layer to utilize Oracle RAC failover Feature?

    Dear Oracle Experts,
    From the Oracle documents, the RAC is a great feature providing the scalability and high availablility. I thought the failover features should be transparent to users.
    However, from this book:
    http://www.oreilly.com/catalog/oressentials2/chapter/ch01.html
    "For instance, in high-availability implementations in which multiple systems share disks and implement Real Application Clusters/Oracle Parallel Server, you may want users to reattach to a second server transparently if the first fails. You can write programs that do this using OCI. "
    "You can write applications with the Oracle Call Interface (OCI) to provide failover to a second instance transparently to the user. "
    I am confused if RAC failover feature have to depend on OCI user application coding?
    I have an application developed over Oracle 8.1.6, if I buy Oracle9i to use RAC failover feature, should I modify my application at OCI layer to make it work? Can I switch the oracle instance when the original one fails only by RAC setup instead of changing OCI code?
    Thanks.
    Wei
    P.S. I am running application over Compaq tru64 5.1A.

    Hi ,
    As answered by Sumit u need not alter ur application for shifting it to RAC.But there are few things which will determine the perfoemance of your application on RAC and depend on the type of application u use .Application partioning,data partitioning,index partitioning ... look for these topics . This may help.
    The other thing u mentioned abt. Oracle Libraries,DB name,SID .. . Now when u'll have RAC there will be more than 1 Node I believe. So each Node will have its SID,Oracle Binaries but DB name will be same.
    Gud Luck!
    Vijay Shanker
    Edited by: Vijay Shanker on Feb 14, 2009 6:12 PM

  • Oracle RAC Failover (CTF) support

    hi! every developers.
    I am running Portal 6.0
    In the WAS6.40 JDBC configuration,
    Is this JDBC driver THIN?
    and Is this connection String effective on failover (CTF) with Oracle RAC?
    below is our current configration for reference.
    Connection conn =
    DriverManager.getConnection("jdbc:oracle:thin:@(DESCRIPTION =
    (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (HOST = *.*.*.11) (PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP) (HOST = *.*.*.12) (PORT = 1521))) (CONNECT_DATA =
    (SERVICE_NAME = HIDB))) ", "scott", "tiger");
    Does anything to need in my configuration WAS6.40?
    thanks in advance.

    Considering Oracle wrote DIF/DIX support for Linux, yes it does. It requires the use of ASMlib as well.
    See Preventing Silent Data Corruption in Oracle Linux for more information.

  • Handling push messages without launching the Application

    Hi
    I have done couple of Applications using Push messages but still I am searching for a solution. Consider I have pressed the Exit button without launching the application when a push messages hits my application, So when I launch my application manually the next time, how to get the previously exited push message. Sorry If my question doesnt make any sense. I appreciate all the replies...
    Pravin

    Hi
    I have done couple of Applications using Push messages but still I am searching for a solution. Consider I have pressed the Exit button without launching the application when a push messages hits my application, So when I launch my application manually the next time, how to get the previously exited push message. Sorry If my question doesnt make any sense. I appreciate all the replies...
    Pravin

  • Oracle RAC Interconnect, PowerVM VLANs, and the Limit of 20

    Hello,
    Our company has a requirement to build a multitude of Oracle RAC clusters on AIX using Power VM on 770s and 795 hardware.
    We presently have 802.1q trunking configured on our Virtual I/O Servers, and have currently consumed 12 of 20 allowed VLANs for a virtual ethernet adapter. We have read the Oracle RAC FAQ on Oracle Metalink and it seems to otherwise discourage the use of sharing these interconnect VLANs between different clusters. This puts us in a scalability bind; IBM limits VLANs to 20 and Oracle says there is a one-to-one relationship between VLANs and subnets and RAC clusters. We must assume we have a fixed number of network interfaces available and that we absolutely have to leverage virtualized network hardware in order to build these environments. "add more network adapters to VIO" isn't an acceptable solution for us.
    Does anyone know if Oracle can afford any flexibility which would allow us to host multiple Oracle RAC interconnects on the same 802.1q trunk VLAN? We will independently guarantee the bandwidth, latency, and redundancy requirements are met for proper Oracle RAC performance, however we don't want a design "flaw" to cause us supportability issues in the future.
    We'd like it very much if we could have a bunch of two-node clusters all sharing the same private interconnect. For example:
    Cluster 1, node 1: 192.168.16.2 / 255.255.255.0 / VLAN 16
    Cluster 1, node 2: 192.168.16.3 / 255.255.255.0 / VLAN 16
    Cluster 2, node 1: 192.168.16.4 / 255.255.255.0 / VLAN 16
    Cluster 2, node 2: 192.168.16.5 / 255.255.255.0 / VLAN 16
    Cluster 3, node 1: 192.168.16.6 / 255.255.255.0 / VLAN 16
    Cluster 3, node 2: 192.168.16.7 / 255.255.255.0 / VLAN 16
    Cluster 4, node 1: 192.168.16.8 / 255.255.255.0 / VLAN 16
    Cluster 4, node 2: 192.168.16.9 / 255.255.255.0 / VLAN 16
    etc.
    Whereas the concern is that Oracle Corp will only support us if we do this:
    Cluster 1, node 1: 192.168.16.2 / 255.255.255.0 / VLAN 16
    Cluster 1, node 2: 192.168.16.3 / 255.255.255.0 / VLAN 16
    Cluster 2, node 1: 192.168.17.2 / 255.255.255.0 / VLAN 17
    Cluster 2, node 2: 192.168.17.3 / 255.255.255.0 / VLAN 17
    Cluster 3, node 1: 192.168.18.2 / 255.255.255.0 / VLAN 18
    Cluster 3, node 2: 192.168.18.3 / 255.255.255.0 / VLAN 18
    Cluster 4, node 1: 192.168.19.2 / 255.255.255.0 / VLAN 19
    Cluster 4, node 2: 192.168.19.3 / 255.255.255.0 / VLAN 19
    Which eats one VLAN per RAC cluster.

    Thank you for your answer!!
    I think I roughly understand the argument behind a 2-node RAC and a 3-node or greater RAC. We, unfortunately, were provided with two physical pieces of hardware to virtualize to support production (and two more to support non-production) and as a result we really have no place to host a third RAC node without placing it within the same "failure domain" (I hate that term) as one of the other nodes.
    My role is primarily as a system engineer, and, generally speaking, our main goals are eliminating single points of failure. We may be misusing 2-node RACs to eliminate single points of failure since it seems to violate the real intentions behind RAC, which is used more appropriately to scale wide to many nodes. Unfortunately, we've scaled out to only two nodes, and opted to scale these two nodes up, making them huge with many CPUs and lots of memory.
    Other options, notably the active-passive failover cluster we have in HACMP or PowerHA on the AIX / IBM Power platform is unattractive as the standby node drives no resources yet must consume CPU and memory resources so that it is prepared for a failover of the primary node. We use HACMP / PowerHA with Oracle and it works nice, however Oracle RAC, even in a two-node configuration, drives load on both nodes unlike with an active-passive clustering technology.
    All that aside, I am posing the question to both IBM, our Oracle DBAs (whom will ask Oracle Support). Typically the answers we get vary widely depending on the experience and skill level of the support personnel we get on both the Oracle and IBM sides... so on a suggestion from a colleague (Hi Kevin!) I posted here. I'm concerned that the answer from Oracle Support will unthinkingly be "you can't do that, my script says to tell you the absolute most rigid interpretation of the support document" while all the time the same document talks of the use of NFS and/or iSCSI storage eye roll
    We have a massive deployment of Oracle EBS and honestly the interconnect doesn't even touch 100mbit speeds even though the configuration has been checked multiple times by Oracle and IBM and with the knowledge that Oracle EBS is supposed to heavily leverage RAC. I haven't met a single person who doesn't look at our environment and suggest jumbo frames. It's a joke at this point... comments like "OMG YOU DON'T HAVE JUMBO FRAMES" and/or "OMG YOU'RE NOT USING INFINIBAND WHATTA NOOB" are commonplace when new DBAs are hired. I maintain that the utilization numbers don't support this.
    I can tell you that we have 8Gb fiber channel storage and 10Gb network connectivity. I would probably assume that there were a bottleneck in the storage infrastructure first. But alas, I digress.
    Mainly I'm looking for a real-world answer to this question. Aside from violating every last recommendation and making oracle support folk gently weep at the suggestion, are there any issues with sharing interconnects between RAC environments that will prevent it's functionality and/or reduce it's stability?
    We have rapid spanning tree configured, as far as I know, and our network folks have tuned the timers razor thin. We have Nexus 5k and Nexus 7k network infrastructure. The typical issues you'd fine with standard spanning tree really don't affect us because our network people are just that damn good.

  • Database Table Resource via Oracle RAC connection Manager

    Hello,
    Our current IDM 8.1 syncs off a HR Database Table using the Database Table connector.
    Our DBA's are moving the view into an Oracle RAC environment.
    Question: Is there a way for us to connect and sync off our DB table through an Oracle RAC connection manager.
    I understand that for the IDM repository, this is possible.
    jdbc:oracle:thin@(DESCRIPTION =
    (ADDRESS_LIST =
    (LOAD_BALANCE = ON)
    (FAILOVER = ON)
    (ADDRESS = (PROTOCOL = TCP)(HOST = server1.ser.com)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = server2.ser.com)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = db.com)
    servers server1 and server2 are oracle connection managers
    Thank you for your input,
    -RC

    We moved the repository to Oracle RAC recently. The syntax to switch to the new databasecluster was something like this:
    lh setRepo -tOracle -ujdbc:oracle:thin:@//dbcluster1.domain:1521/service_idm.oradb.domain -Uwaveset -Pwachtwoord
    For the 'lh setRepo' command the old database had to be up, and we had to use the old ojdb5.jar. After that we switched to ojdb6.jar.
    One of our resources is a database table with HR data in the same database. The following Database Access Parameters work for us:
    Database Type:      Oracle
    JDBC Driver:      oracle.jdbc.driver.OracleDriver
    JDBC URL Template:      jdbc:oracle:thin:@//%h:%p/%d
    Host :     dbcluster1.domain
    Database: service_idm.oradb.domain
    Port: 1521
    Greetings,
    Marijke

  • Using Pipes with Oracle RAC

    Hi all.
    We have a customer that recently acquired our Database technology (including RAC). They have an application from a partner that uses pipes in the database and they are experiencing errors when trying to deploy to RAC.
    Does someone know if there is a way to configure the RAC instances that allow them to use RAC???
    One of the premises under they bought RAC was that the application will not require modifications.
    Thanks in advance for any help you can provide to us.
    Regards,
    Rodolfo Yglesias.

    P. Forstmann wrote:
    Yes Advanced Queuing works with RAC. I have not tested this myself but you can rely on following document:
    Oracle Streams Advanced Queuing and Real Application Clusters: Scalability and Performance Guidelines
    http://www.oracle.com/technology/deploy/availability/pdf/maa_wp_10g_aqrac_bestpractices_jan2008.pdf.
    I'm going to have to take a look at that document to see what they say about making AQ behave nicely with RAC. It's true that it CAN work, but since a queue is a table and enqueues and dequeues require inserts and deletes from the same table, you can get terrible performance if the enqueue and dequeue processes are operating on difference instances. ("gc buffer busy waits" would be the most obvious symptom).
    Regards
    Jonathan Lewis

  • Adding APEX as Application Layer on my Current Application

    Hi All
    I'm starting to explore APEX as a development platform. I have an application using packages and tables for the business logic.
    Currently it was working within EBS using forms.
    I now want to move this to APEX basically changing the application layer from forms to APEX.
    The packages work for all the Creation, Updating and Deleting. There are also views.
    From what I have been playing around with I am looking at this approach and would like input as to if its viable.
    I need a report that behaves like a form. This will be based on a view to bring data.
    From this report form the user will be able to update the data and if he want to insert it should open a new line.
    All the validation I want the package to do as well as the inserting and updating.
    So is there a best way of doing this and also does anyone have any suggestions as to how.
    Would I create a blank page and build it from the ground up for each form or maybe start with either a form or report page and then customize it.
    Thanks
    Hilton
    APEX 4.2
    Oracle 11g2

    Hi Hilton,
    you can use tabular forms for this:
    http://docs.oracle.com/cd/E37097_01/doc/doc.42/e35125/bldapp_frm.htm#BCEECEFA
    If you want for all to be cleaner in APEX, you can create instead of trigger over your view that uses your package API for DML.
    Br,
    Marko Goricki
    http://apexbyg.blogspot.com/

  • SAP - Oracle RAC - Linux - VMware

    Hi,
    we would like to install SAP on a virtual environment (VMware) on Linux RedHat  platform.
    For the database, Oracle RAC is certified with OCFS2 (1.6) only with Oracle Linux and not RedHat Linux 5.
    Can we intstall Oracle RAC database on 2 nodes with Oracle Linux and OCFS2 and other SAP components on Redhat Linux 5 ?
    Are there any issues with SAP matrix compatibility ?
    Thank you!
    Dan

    Hi Audun,
    Thank you for the links.
    I can see the ASM support is new (2.2.2011)
    On Note 527843 from 25.01.2011 - Oracle RAC support in the SAP environment
    Using raw devices and ASM (Automatic Storage Management) is not supported in the SAP environment. In the case of ASM, there is an exception regarding the Oracle Cluster Registry (OCR) and the voting disks
    and
    on Note 1550133 - Oracle Automatic Storage Management (ASM) from 2 Feb 2011 they support ASM but with restrictions:
    ACFS is required for RAC installations with ASM
    To use ASM now, you have to migrate your database to ASM manually
    Some important functions of SAP BR*Tools like backup, restore, recovery, tablespace and datafile management are not supported at the moment
    Support for tablespace and datafile management is planned for Q2/2011
    Also ASM instance will introduce another layer in the system with its problems, failures and resources consumption. I see on the Oracle Metalink alot of problems related to ASM. From the marketin point of view is ok, let's oracle do everything but I think if you will keep it simple it will be better.
    I didn't figure out if you can directly install Oracle 11.2.0.2, they say "Allows direct SAP system installations with Oracle 11.2"
    We have a vBlock hardware with flash disks as FAST Cache so I believe with 1TB of cache IO will not be a problem.
    Thank you!
    Dan

  • How to download the application file to local file by back ground job?

    hi:
      can any one tell me how to download the application file to local file by back ground job? thanks in advance..
    Monson

    Hi,
    In order to download a file from application layer to a local file in background,
    first write a report(ZREPORT1) in which do the following steps:
    OPEN DATASET g_file_1 FOR INPUT IN TEXT MODE ENCODING DEFAULT.
    loop the g_file and append all the data into another internal table.
    end of this report you shd have all the data in the application layer file into your internal table.
    Now create another report(ZREPORT2) and submit this report in background.
    that is,
    JOB_OPEN
    JOB_SUBMIT and
    JOB_CLOSE
    and in job_submit submit ZREPORT1 which downloads the file in application layer.
    Please reward points if helpful.
    Regards,
    Arul.

  • Connect from MS ODBC to Oracle RAC

    I always connected to our Oracle 9i database using MS ODBC in Excel 2007and Access 2007.
    We recently migrated to Oracle 11g RAC which has two nodes. Have no problem connecting using Oracle RAC string with SQL Developer and SQL Plus to the the Oracle RAC.
    For the client ODBC I cant seem to connect using the RAC String. The MS ODBC Excel and Access prompt for username, password and host. In the host I put in the entire RAC String and it never connects showing TNS issues.
    Please advise.

    You can provide any one instance name instead of the RAC string name so it can establish the connection.
    Example: Username/password@RACInstance1
    or
    username/password@RACInstance2

  • How to see the tables which are in the physical layer of SampleAppLite rpd

    Hi Everyone,
    I am new to OBIEE and I installed OBI Apps with Oracle 11g in my laptop. I tried to create reports using the OracleBIAnalyticsApps rpd. How can I know from which schema the tables are coming in the physical layer of the repository so that I can create a connection pool to the database. I got the default SampleAppLite rpd when I install the OBIEE but I am unable to see those tables in the database schema which are used in the SampleAppLite physical layer. Can anyone tell me how can I see the tables in the database which I see in the rpd. Actually my question may be wrong as I am new to this field, so please let me know if this is a wrong question. As I unable to express my question correctly. Thanks.

    For the OracleBIAnalyticsApps rpd - the tables are under "Catalog" then "dbo" in database "Oracle Data Warehouse" in the physical layer. The RPD comes out of the box with the required connection pools - you dont need to create any. The connection pools "Oracle Data Warehouse Repository Initblocks Connection Pool" and "Oracle Data Warehouse Connection Pool" in "Oracle Data Warehouse" read the data from the business analytics warehouse that you created in a schema name of your choosing with the DAC. All you need to do is edit the user name and password and the data source name with a connect string - which is the local net service name to your database for default call interface OCI 10g/11g assuming you used an Oracle database for your warehouse. One way to test the connection pool is to right click any table/alias then "Update Row Count".
    BTW Using the Admin Tool open the OracleBIAnalyticsApps rpd then do "Tools" then "Utilities" then "Repository Documentation" then "Execute". This will create a spreadsheet showing you all the mappings from the presentation to business to physical layers.

  • HACMP and Oracle RAC

    Hello All,
    I want to install Oracle 11g R2 on AIX 6.1.
    After doing some researches i found that there are some documents mentioning that HACMP should not be installed while installing Oracle RAC.
    what is the use of HACMP ? Is it optional ? when should be installed and when not?
    Please can you provide me all details abut HACMP and how it affects ORACLE RAC 11g R2 installation on AIX??
    Regards,

    NB wrote:
    Hello All,
    I want to install Oracle 11g R2 on AIX 6.1.
    After doing some researches i found that there are some documents mentioning that HACMP should not be installed while installing Oracle RAC.
    what is the use of HACMP ? Is it optional ? when should be installed and when not?
    Please can you provide me all details abut HACMP and how it affects ORACLE RAC 11g R2 installation on AIX??
    Regards,
    Hi,
    HACMP is vendor clusterware (IBM technology) for cluster it is High Availability Cluster Multi Processing. When installing Oracle RAC it must installed on top of vendor clusterware.
    HACMP comes in play when you use raw logical volume and it needs to be managed by HACMP.
    Since 10g it is not mandatory to use HACMP so you can choose not to use it and let Oracle manage all the cluster services
    Hope this helps
    Cheers

  • SAP EHP6 Installation Steps with Oracle RAC

    Dear Experts,
    i am looking for step by step guide for SAP ehp6 installation with Oracle RAC. if anyone can help please guide me with the steps or share if any document available
    Thanks

    Hi Wali,
    You can follow below documentation to perform your installation on Oracle RAC.
    http://scn.sap.com/docs/DOC-8835
    This document is very useful for planning the installation and executing the same
    Some other useful documents
    Installation of SAP on RAC with Oracle ASM
    SAP note which needs to be referred for installation
    Note 527843 - Oracle RAC support in the SAP environment
    Hope this helps.
    Regards,
    Deepak Kori

  • F4 to application layer

    Hi,
    f4  functinality for storing data in Application server, ie on the selection screen I have to have the f4 functionality which has to navigate to the application layer (AL11), is there any FM for this, please let me know what I have to pass, a sample code is welcome.
    Thanks & Regards,
         Varun.K
    Edited by: vikram kagada on Jun 20, 2008 3:28 PM

    Hi,
      DATA:
        c_fnh_mask TYPE dxfields-filemask VALUE '.',
        search_dir TYPE dxfields-longpath VALUE 'F:\USR\SAP\',
        file_path LIKE dxfields-longpath.
      CLEAR p_fpath.
    To provide the F4 help for Application Server File Path
      CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
        EXPORTING
          i_location_flag = 'A'
          i_server        = ' '
          i_path          = search_dir
          filemask        = c_fnh_mask
          fileoperation   = 'R'
        IMPORTING
          o_path          = file_path
        EXCEPTIONS
          rfc_error       = 1
          OTHERS          = 2.
      IF sy-subrc EQ 0.
        p_fpath = file_path.
      ENDIF.                               " IF sy-subrc EQ 0
    Reward if helpful.
    Bye

Maybe you are looking for