Sequences in order - 10g r2 RAC

Hello, we have a j2ee application against Oracle 10g r.2, which uses sequences (over ten approximately). These sequences are used to assign automatically value to the primary key of registers of several tables.
In production environment, we have RAC with 4 instances. We would be interesting in maintaining the order of the values in this fields. We've defined these sequences as ORDER and CACHE=20, but after reading in forums and Oracle documentation, we've seen that the best practice is to define them (in RAC) as NO ORDER.
My question is, could we have problems derived from this type of definition (ORDER - CACHE) ? Our main thought is that is very important that the primary key are not repeated, and also maintaining the order. On the other hand, could we have performance problems with this mechanism ?
Thanks in advance.

with the ORDER parameter, what I'm trying to obtain is that the number given by the sequence will be 1,2,3,4,5, ....49,50,51,52,... regardless of the instance that provides it.Why? The only requirement for a surrogate key is to be unique! Where in relational design is it recommended/suggested that surrogate keys be numbers in a gap free ascending sequence?
This so-called "+requirement+" from developers for gap free surrogate key sequences are based on ignorance of relational design fundamentals.
Also, you are not even considering the impact on the RDBMS for wanting it's sequences to behave this way.
Think of a 100+ users, using a a 4 node RAC. All of them running typical OLTP apps that are inserted rows. All of which requires a sequence. For this to be ascending and gap free there can only be a single sequence generator on all 4 RAC nodes. As only a single generator can ensure gap free ascending numbers. This means that all 100+ users have to queue for access to this single generator to get a surrogate key value.
What does this introduce? Serialisation. What not only kills performance, but utterly destroys it on a server platform? Serialisation.
It is even worse on a RAC as instead of introducing serialisation on a single database instance, it will introduce serialisation on all cluster instances. Effectively rendering the whole RAC concept of scalability and performance totally useless.

Similar Messages

  • Keep Sequences in Shared Pool for RAC Environment

    Hi,
           We have 2 node RAC setup for production environment. I want to pin cached sequences in my database. We are using following command for this purpose.
    EXEC DBMS_SHARED_POOL.KEEP('HR.MySeq','Q');
    Do I need to execute this command for each single node?

    Pinning is in the Shared Pool in the SGA.  So it is local to an instance.
    Therefore, you would need to execute it in each instance (i.e. on each node).
    Note :  However, with sequences in RAC, you have to be careful with the definition.  Have you defined it or do you need to define it as CACHE/NOCACHE ?  Have you defined it or do you need to define it as ORDER (to guarantee order generation in RAC) ?
    Hemant K Chitale

  • Issues while installing ORACLE 10g R2 RAC on RHEL 5.3

    i am installing oracle 10g R2 RAC on RHEL 5.3 in a test environment. my aim was to install using ASM.
    i went through the pre-requisites ok before beginning with the installation.
    since RHEL 5.3 doesnt support raw devices i used
    http://www.idevelopment.info/data/Unix/Linux/LINUX_ConnectingToAniSCSITargetWithOpen-iSCSIInitiatorUsingLinux.shtml#Configure%20iSCSI%20Initiator%20and%20New%20Volume
    udev to configure shared storage. my storage is on openfiler as a iSCSI target.
    fdisk -l on both nodes shows the shared drives.
    [root@node1 ~]# fdisk -l
    Disk /dev/sda: 21.4 GB, 21474836480 bytes
    255 heads, 63 sectors/track, 2610 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1          13      104391   83  Linux
    /dev/sda2              14        2053    16386300   8e  Linux LVM
    /dev/sda3            2054        2372     2562367+  82  Linux swap / Solaris
    Disk /dev/sdd: 10.5 GB, 10502537216 bytes
    64 heads, 32 sectors/track, 10016 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdd1               1       10016    10256368   83  Linux
    Disk /dev/sdb: 10.5 GB, 10536091648 bytes
    64 heads, 32 sectors/track, 10048 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1               1       10048    10289136   83  Linux
    Disk /dev/sdc: 10.5 GB, 10536091648 bytes
    64 heads, 32 sectors/track, 10048 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1       10048    10289136   83  Linux
    Disk /dev/sdf: 10.5 GB, 10569646080 bytes
    64 heads, 32 sectors/track, 10080 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdf1               1       10080    10321904   83  Linux
    Disk /dev/sde: 10.5 GB, 10502537216 bytes
    64 heads, 32 sectors/track, 10016 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
       Device Boot      Start         End      Blocks   Id  System
    /dev/sde1               1       10016    10256368   83  Linux
    [root@node1 ~]# ls -l /dev/iscsi/arpl*
    /dev/iscsi/arpl1:
    total 0
    lrwxrwxrwx 1 oracle oinstall  9 Jun 30 12:58 part -> ../../sde
    lrwxrwxrwx 1 oracle oinstall 10 Jun 30 12:58 part1 -> ../../sde1
    /dev/iscsi/arpl2:
    total 0
    lrwxrwxrwx 1 oracle oinstall  9 Jun 30 12:58 part -> ../../sdd
    lrwxrwxrwx 1 oracle oinstall 10 Jun 30 12:58 part1 -> ../../sdd1
    /dev/iscsi/arpl3:
    total 0
    lrwxrwxrwx 1 oracle oinstall  9 Jun 30 12:58 part -> ../../sdb
    lrwxrwxrwx 1 oracle oinstall 10 Jun 30 12:58 part1 -> ../../sdb1
    /dev/iscsi/arpl4:
    total 0
    lrwxrwxrwx 1 oracle oinstall  9 Jun 30 12:58 part -> ../../sdc
    lrwxrwxrwx 1 oracle oinstall 10 Jun 30 12:58 part1 -> ../../sdc1
    /dev/iscsi/arpl5:
    total 0
    lrwxrwxrwx 1 oracle oinstall  9 Jun 30 12:58 part -> ../../sdf
    lrwxrwxrwx 1 oracle oinstall 10 Jun 30 12:58 part1 -> ../../sdf1
    [root@node1 ~]# configuring udev results in the drives being mapped to persistent drive names eg. /dev/iscsi/arpl1/part1
    still when i enter the name of the raw device which i have created i get the following error. please help
    Image: !http://img91.imageshack.us/img91/7448/oracle.png!

    did you check this
    http://download-west.oracle.com/docs/cd/B19306_01/install.102/b14203/storage.htm#BABBHECD
    http://download.oracle.com/docs/cd/B28359_01/install.111/b28263/storage.htm#CDEBFDEH
    also before you do what is suggested on the url posted by Mufalani,
    it seems that you should do the following:
    Check existence of udev raw mapping rule file /etc/udev/rules.d/60-raw.rules
    On RH/EL5, udev raw mapping rule file /etc/udev/rules.d/60-raw.rules should exist by default as part of the util-linux package, for example:
    # ls /etc/udev/rules.d/60-raw.rules
    /etc/udev/rules.d/60-raw.rulesCreate a custom udev raw mapping rule file, /etc/udev/rules.d/61-oracleraw.rules say, for example:
    # touch /etc/udev/rules.d/61-oracleraw.rules3b. Add udev raw binding rules to /etc/udev/rules.d/61-oracleraw.rules file
    Add the udev raw binding rules to the /etc/udev/rules.d/61-oracleraw.rules file, for example:
    # cat /etc/udev/rules.d/61-oracleraw.rules
    # Raw bind to Oracle Clusterware devices
    ACTION=="add", KERNEL=="sd*", PROGRAM=="/sbin/scsi_id", RESULT=="360a98000686f6959684a453333524174", RUN+="/bin/raw /dev/raw/raw1 %N"
    ACTION=="add", KERNEL=="sd*", PROGRAM=="/sbin/scsi_id", RESULT=="360a98000686f6959684a453333524179", RUN+="/bin/raw /dev/raw/raw2 %N"If migrating to RHEL5/OEL5 from an earlier Linux version that relied on /etc/sysconfig/rawdevices file for persistent raw device bindings, the following script can be used as a basis for generating your RHEL5/OEL5 udev rules. Note, the script does not factor device name persistency.
    #!/bin/bash
    grep -v "^ *#" /etc/sysconfig/rawdevices | grep -v "^$" | while read dev major minor ; do
    if [ -z "$minor" ]; then
    echo "ACTION==\"add\", KERNEL==\"${major##/dev/}\", RUN+=\"/bin/raw $dev %N\""
    else
    echo "ACTION==\"add\", ENV{MAJOR}==\"$major\", ENV{MINOR}==\"$minor\", RUN+=\"/bin/raw $dev %M %m\""
    fi
    done

  • Can I transfer my hand made album sequence (sort order) defined in element when I turn a local album into a mobile album used with IPAD. Or do I have to change the dates artificially?

    Can I transfer my hand made album sequence (sort order) defined in elemenst when I turn a local album into a mobile album used with IPAD. Or do I have to change the dates artificially?

    Andrew, I know I am extremely late to the party but I too use Grid View.  I had the same problem that you had but have found this to work for me.  I used it and it is still holding as my default sorting even after switching between the Artist page and Grid View.
    Once you are inside of the Artist page continue to click on the Album column until it shows Album by Artist/Year.
    That will give you each album sorted by the year instead of it randomly sorting it for you each time you leave an Artist's page and then back again.
    Hope this helps.

  • 10g R2 RAC on Solaris 10 with EMC Storage

    We are in the process of setting up 3/4 node RAC with the following components:
    Oracle 10g R2 RAC
    Oracle Clusterware / Sun Cluster / Veritas Cluster
    Sun Solaris 10
    EMC storage
    ASM/Cluster FS
    I would appreciate if some one can through some light on:
    * ) Veritas cluster / Sun Cluster is must component or Can I use Oracle clusterware ? what are the advantages and disadvantages of using Oracl clusterware compare with varitas cluster or sun cluster
    * ) Is cluster filesystem a compulsory component or Can I use ASM instead of Cluster File system.
    * ) If I don't use cluster filesystem where to put CRS repository and voting disk ?
    * ) What is best option for Oracle_Home, is it shared oracle home or sepereate oracle_home on each node ?
    * ) Are there any known risks invovled in using ASM. How is the I/O performance with ASM on EMC with Solaris ? Are there any best practices
    * ) Is GigE okay for interconnect or do I need to go for Infiniband ?
    * ) Is there any notes on Best practices for the above components
    *) Do I need to consider fail over option for NIC's (interconnect and public), if yes, how to do that ?
    *) Are there any other risks do I need to consider ?
    Thanks
    G

    Hi,
    I see lot of good input. I have done few RAC installs on sun/solaris/emc ...
    Here are few things to consider.
    * ) Veritas cluster / Sun Cluster is must component or Can I use Oracle clusterware ? what are the advantages and disadvantages of using Oracl clusterware compare with varitas cluster or sun cluster
    Just stay with Oracle Clusterware. If there are any issues then you only have to deal with one vendor and there will be no finger pointing. In any case Oracle Clusterware is needed even if you install Veritas/Sun.
    * ) Is cluster filesystem a compulsory component or Can I use ASM instead of Cluster File system.
    For the database you can use ASM. The only time I have considered a cluster filesystem is if external tables were in use.
    When you use ASM you need to partition the disk with 1 meg offset or start at cyclinder 1.
    * ) If I don't use cluster filesystem where to put CRS repository and voting disk ?
    OCR and Voting Disk go on raw devices.
    * ) What is best option for Oracle_Home, is it shared oracle home or sepereate oracle_home on each node ?
    Install ORACLE_HOME, ASM_HOME and CRS_HOME locally on each server.
    * ) Are there any known risks invovled in using ASM. How is the I/O performance with ASM on EMC with Solaris ? Are there any best practices
    http://www.oracle.com/technology/products/database/asm/pdf/asm-on-emc-5_3.pdf
    We have always installed 2 HBAs and used powerpath.
    * ) Is GigE okay for interconnect or do I need to go for Infiniband ?
    For a majority of cases gigE is sufficient.
    * ) Is there any notes on Best practices for the above components
    Have redundancy at each level.
    *) Do I need to consider fail over option for NIC's (interconnect and public), if yes, how to do that ?
    You can use IPMP. Use large send/receive buffers. Enable Jumbo Frames.
    We had to apply some patches.
    5128575 - RAC install of 10.2.0.2 does not update libknlopt.a on all nodes
    4769197 - WHILE ONE NODE OF RAC IS DOWN, CONNECTIONS FROM CLIENT HANG
    patch 5749953
    Thanks
    G

  • Dropped sequences in oracle 10g

    Hi All,
    Can we get back the dropped sequences in oracle 10g?
    Command?
    Thanks.
    Edited by: user545846 on Apr 9, 2009 7:32 AM

    Thanks. Oracle site is accessible.
    This user has the dba previleges to select all tables. but still getting this error message:
    SQL> SELECT * FROM dba_sequences AS OF TIMESTAMP systimestamp - 1/24;
    SELECT * FROM dba_sequences AS OF TIMESTAMP systimestamp - 1/24
    ORA-01031: insufficient privileges
    Please give your comment.

  • How to change SGA and PGA in 10g r2 RAC

    Hi,
    How to change SGA and PGA in 10g r2 RAC, its Linux.

    Hi,
    Here is the way i followed to change SGA and PGA in RAC.
    Action Plan to change the memory parameter in the production environment(5/21/2010)
    Note:
    =====
    Practice should be done in the DEV/TST environment before moving to Production;
    Although the procedure could be applied in the testing environment the changing values
    used in the testing environment should be modified since RAM number are not the
    same between the testing servers and production servers.
    1.     Make changes to these two parameters in one of
         the prod instance, e.g. PROD1
         ====================================================
         login as sysdba on sqlplus
    Change :
    alter system set sga_target=28G scope=spfile sid='*';
    Change :
    alter system set pga_aggregate_target=4G scope =spfile sid='*';
         sql>alter system set pga_aggregate_target=4G scope=both;
         sql>show parameter pga_aggregate_target;      
              -- should see the altered number on both instances
    Change:
    sql>alter system set sga_max_size=28G scope=spfile sid='*';
    sql>alter system set sga_max_size=28G scope=spfile ;
    sql>alter system set sga_target=28G scope=spfile;
    3.     shutdown database PROD (two instances should be shut down)
         $>srvctl stop database -d PROD
         $>. /$ORA_CRS_HOME/bin/crs_stat -- to check for the database status
    4.     bring up database PROD (two instance should be brought up)
         $>srvctl START database -d PROD
         $>. /$ORA_CRS_HOME/bin/crs_stat -- to check for the database status
         login into both instances as sysdba to check
         sql>show parameter pga_aggregate_target
         sql>show parameter sga_max_size
              -- should see the altered number still there in both instances
              -- from step 1
         -- After confirming above two parameters are altered on both instances,
         -- then issue the syntax below in one instance
    5)     check everything is ok

  • How to upgade Oracle from 9.2 on SUN to Oracle 10g R2 RAC on Oracle EL4

    Hi all,
    I have production database Oracle 9i EE Release 9.2.0.5.0 - 64bit on SunOS 5.9 cca 100GB. I would like to upgrade Oracle 10g Relase2 RAC with 2 nodes on Oracle Enterprise Linux. Database availability is 24x7 and system breakdown must be minimal. Upgrade could be done in several independent steps. What is the best form of upgrade realisation?
    Thx for some idea
    Libor Veverka
    [email protected]

    My 2 cents:
    1. de-RAC 9i on solaris
    2. upgrade to 10g on solaris (why? take advantage of datapump, much faster than exp/imp)
    3. expdp from 10g solaris
    4. create single instance 10g on linux
    5. impdp on linux
    Please note there are a number of issues with 9ir2.10gr2 upgrade (check metalink for details).
    HTH,
    [email protected]

  • Install Oracle 10g R2 RAC on Linux 5.x (64 bit)

    Hi Friends,
    Please provide the document to Install Oracle 10g R2 RAC on Linux 5.x (64 bit)
    Cluster : Local Disk
    OCR and Voting Disk : OCFS2
    DB Home : Local
    DBF Files and FRA : ASM
    Please let me know how to create OCFS2 and ASM Volumes for RAW Disks (SAN Lun's)
    Regards,
    DB

    You can refer below
    http://oracleinstance.blogspot.com/2010/03/oracle-10g-installation-in-linux-5.html
    http://www.oracledba.org/10gR2/Pre_Install_10gR2.html
    http://www.google.com/url?sa=t&rct=j&q=&esrc=s&frm=1&source=web&cd=9&ved=0CHUQFjAI&url=http%3A%2F%2Fcommunities.vmware.com%2Fservlet%2FJiveServlet%2FdownloadBody%2F12534-102-1-13254%2F10gR2%2520RAC%2520INSTALLATION%2520IN%2520LUNX5.pdf&ei=71A5T-jrM8jMiQLihOS_Cg&usg=AFQjCNGnBrzhvm3j9PuPNy4FLJuaxetS1A&sig2=0b8VnMefcXueFUu44-66yQ
    Hope this helps,
    Regards
    http://www.oracleracexpert.com

  • Check of operation sequence in order

    Hi all,
    I don't want to check of operation sequence in order. so  how can I do this? Are there any customizing for this case?
    Best regards,
    Hilal Çakır
    email : [email protected]

    Make the following changes in control key or use the control key which have this setting
    In OPJ8, for a control key
    Confirmation = Confirmation possible but not necessary
    In OPK4, for a plantb and production order type combination in Generally valid settings tab page -
    Checks sub page
    operation sequence = set operation sequence is not checked
    With this setting  it will work

  • Triggers Firing Sequence Of Forms 10g after commit_form trigger.

    hi all,
    please tell me Triggers Firing Sequence Of Forms 10g after commit_form trigger.
    thanks,
    Regards,
    Ambarish

    Hi,
    I have a doubt regarding the sequence of events when COMMIT_FORM is fired.
    Using the following to trigger the event.
    DO_KEY('COMMIT'_FORM');
    Added debug messages in my form triggers and found that after the ON-INSERT trigger is fired, the WHEN-VALIDATE-RECORD is fired and then the PRE-RECORD.
    However this sequence is not specified in the lists of firing sequences mentioned here.
    Is it possible to change the sequence programmatically.
    In my ON-INSERT trigger, calling a DB procedure to insert row in the table.
    Thanks
    Asfa

  • Oracle 10G on RAC

    Hi all,
    I am searching for doc on Oracle 10G on RAC.Please send me the related link.
    Thanks in advance
    Vipin

    Look into this URL for Oracle Documentations on Oracle 10g RAC.
    http://www.oracle.com/pls/db102/portal.portal_db?selected=3
    Fore more related links, take a look at the following link.
    http://syedracdba.wordpress.com/2008/03/24/list-of-useful-links-for-oracle-rac/
    Regards,
    Sabdar Syed,

  • Diffrence between  10g R1 RAC and 10g R2 RAC

    Good day to all,
    Any one here knows the diffrence between 10g R1 RAC and 10g R2 RAC in terms of Installation , Backup and recovery , Performance tunning and more ..............
    Please this treat this information is urgent
    Cheers
    Syed

    Please this treat this information is urgentOk, then what about the New features doc of 10gR2 reading urgently :
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14214/chapter1.htm#NEWFTCH1
    Nicolas.

  • How to connect to Oracel 10g on RAC setup using JDBC type 4 driver

    Hi ,
    I am using websphere 5.1.1.0 server as my application server .Can some one please enlighten me on how can I configure my data source for 10g on RAC ( not stand alone ) . Rather I would like how different is it from configuring data source for a standalone database .

    Hi,
    Maybe this example cut will work for you. It passes and gets
    string:
    Statement stmt = conn.createStatement ();
    CallableStatement cs = conn.prepareCall ("begin ? :=
    MyFunction(?); end;");
    cs.registerOutParameter(1,Types.CHAR);
    cs.executeUpdate();
    System.out.println (cs.getString(1).trim());
    Robertas
    Sudhir Kulkarni (guest) wrote:
    : How to call Stored Functions from Oracle.. Does JDBC allow
    this
    : to do..
    : Callable Statement allows only Stored Procedures.
    : Does It allow to invoke Database Functions..
    : Pl. Explain is there any other way to invoke Database
    Functions..
    : Thanks in Advance,
    : Sudhir Kulkarni
    null

  • 11i Rapid Clone Not Certified With 10g/11g RAC???

    Metalink document 230672.1, "Cloning Oracle Applications Release 11i with Rapid Clone" was updated Feb. 2009 with the following:
    February 04, 2009
    - Added 11i/10g/11g RAC clarification on Section 4 Steps 6 and 7.
    - Corrected incorrect format statements.
    The clarification?
    Attention: The following steps apply only for 9i RAC Clusters. Rapid Clone is not certified for Cloning 11i with 10g or 11g RAC Systems at this time.
    10g RAC support for EBS has existed for quite a while, what's up with this? I'm in the middle of upgrading my 11i EBS on 9i RAC environments to 10gR2 RAC.
    Anyone cloning 11i with 10g/11g RAC? How are you doing it?
    Disgusted,
    Jerry

    Take a look Doc ID: 230672.1 on Metalink Section 6 talks about Cloning a RAC system
    If you're trying to search for anything on EBS look for Applications 11i, because most docs refer to it as Applications 11i more often then EBS.
    Cloning Oracle Applications Release 11i
    with Rapid Clone

Maybe you are looking for

  • Adobe air installer

    I am trying to download an app that needs the adobe air installer. I have adobe air installed, but when I download the app I want I get an error message that the installer file is damaged and to get a new one from the author. Is adobe the author and

  • Cannot install drivers in win 7 32 bits using bootcamp 4 or 5

    I posted this question yesterday. anyway, I have a imac midi 2011, 21,5 inches using OS x mountain lion 10.8.2. Manuals say I have to install bootcamp 4, because I install windows 7 profesional 32 bits. Al follow all this instalation requirements, bu

  • Problems with flex and php.

    Hello, my name is Gamaliel Arredondo, i have to develope a project in flash builder 4 using the data service to connect with php, the application has installed the zend framework automatically just like the tutorials said, I use xampp and i have the

  • How do people like the DNA with Jelly Bean?

    I have a very buggy Razrr Maxx that was unlocked so now I'm stuck with Ice Cream Sandwich and am looking to upgrade.

  • Patch 8602263 and 7502698 requires Password

    Hi, I am on 12.1.1. version and I am trying to download patches mentioned below. 1) 8602263:R12.AZ.B - 1OFF:8352532:12.1.1:12.1.1:ONDEMAND:ISETUP EXTRACT OF INVENTORY CATEGORY INFORMA 2) 8652905:R12.AZ.B - 1OFF:8424285:12.1.1:12.1.1:FRAMEWORK SUPPORT