11g oracle lock question

I'm trying to understand locking on "other end of FK", i..e. operations on child table in 11g. Database version 11.2.0.2.0
Table bal_fct has columns(branch id, acct id, cust id, bal dt, bal ccy id, stmt id, bal amt). PK/Unique index on branch id, acct id, cust id, bal dt, bal ccy id, stmt id in that order. All these columns have FKs. No index on these FKs. There is a bitmap index on acct_id.
An ETL job is doing inserts in bal fct table (child). As I understand, any operation on child table would take RX(mode 3) on parent tables in 11g.
I queried locks taken. It is taking mode 3 lock on all the dimension tables EXCEPT ACCT(acct_id). Why? I assumed that it will take also mode 3 lock on ACCT also. I have read in other threads that bitmap index really don't count in these discussions.
Thanks for your help.
Edited by: rkuppa on May 26, 2013 7:10 AM
Edited by: rkuppa on May 26, 2013 7:11 AM
Edited by: rkuppa on May 26, 2013 4:23 PM

>
I'm trying to understand locking on "other end of FK", i..e. operations on child table in 11g. Database version 11.2.0.2.0
>
Here are two articles about that by Jonathan Lewis
http://jonathanlewis.wordpress.com/2010/06/21/locks/
http://jonathanlewis.wordpress.com/2010/02/15/lock-horror/
>
Table bal_fct has columns(branch id, acct id, cust id, bal dt, bal ccy id, stmt id, bal amt). PK/Unique index on branch id, acct id, cust id, bal dt, bal ccy id, stmt id in that order. All these columns have FKs. No index on these FKs. There is a bitmap index on acct_id.
An ETL job is doing inserts in bal fct table (child). As I understand, any operation on child table would take RX(mode 3) on parent tables in 11g.
I queried locks taken. It is taking mode 3 lock on all the tables EXCEPT ACCT(acct_id). Why? I assumed that it will take also mode 3 lock on ACCT also. I have read in other threads that bitmap index really don't count in these discussions.
>
You won't get row level locks when a bitmap index is used.
Can you edit your post and clarify it a bit.
You mention 'bal_fct table (child). The table name has 'fct' in it: is this a fact table or a child table?
And post whether your issue is similar to the one in this other thread from yesterday.
11g child table update locking
Some of the info there may help.

Similar Messages

  • Oracle locking question

    ADDR KADDR SID TY ID1 ID2 LMODE REQUEST CTIME BLOCK
    00000004160D72B8 00000004160D7310 1966 AE 100 0 4 0 499 0
    00000004160D7FD0 00000004160D8028 1966 TO 81148 1 3 0 498 0
    FFFFFFFF7B646EB0 FFFFFFFF7B646F10 1966 TM 79582 0 3 0 23 0
    0000000414E1A040 0000000414E1A0B8 1966 TX 393244 678662 6 0 23 0
    I am getting above locks when i am ussing select for update no wait from oracle forms and it lock the whole table I can not under stand why.
    When issue the same select for update nowait from sql prompt I am getting following
    ADDR KADDR SID TY ID1 ID2 LMODE REQUEST CTIME BLOCK
    00000004160D7798 00000004160D77F0 1997 AE 100 0 4 0 75 0
    FFFFFFFF7B646EB0 FFFFFFFF7B646F10 1997 TM 79582 0 3 0 44 0
    0000000414F002E8 0000000414F00360 1997 TX 655387 838567 6 0 44 0
    and after above when I issue another SQL select for update for different row on same table the second session is:
    ADDR KADDR SID TY ID1 ID2 LMODE REQUEST CTIME BLOCK
    00000004160D71E8 00000004160D7240 1982 AE 100 0 4 0 4123 0
    FFFFFFFF7B645E78 FFFFFFFF7B645ED8 1982 TM 79582 0 3 0 17 0
    0000000414E7DDE8 0000000414E7DE60 1982 TX 589848 710577 6 0 17 0
    Can someone tell me what is
    1. Lock type TO and AE
    2. Why locky type TO is there in oracle forms
    3. why issuing the same select for update nowait from oracle form does not allow any other session sql or from oracle forms to get the lock on row?
    Thank you.

    >
    I sill not able to get what TO lock type is, this was not in the following:
    >
    See the Database reference
    http://docs.oracle.com/cd/E14072_01/server.112/e10820/enqueues.htm#g950013
    >
    D Oracle Enqueue NamesThis appendix lists Oracle enqueues. Enqueues are shared memory structures (locks) that serialize access to database resources. They can be associated with a session or transaction. Enqueue names are displayed in the LOCK_TYPE column of the DBA_LOCK and DBA_LOCK_INTERNAL data dictionary views.
    A resource uniquely identifies an object that can be locked by different sessions within an instance (local resource) or between instances (global resource). Each session that tries to lock the resource will have an enqueue on the resource.
    The Oracle enqueues are:
    TO, Temporary Table Object Enqueue

  • Error while installing OFM 11g - Oracle Identity management suite 11g

    Hi,
    I am getting following error while installing Oracle Identity management suite 11g (Oracle Internet Directory & Oracle Virtual Directory) on Red Hat Linux 5.0.
    "Error in invoking target 'client_sharedlib' of makefile '/apps/idm/Oracle/OracleHome/Oracle_Home/rdbms/lib/ins_rdbms.mk"
    the same error is repeating for others also i.e. 'all', 'install" etc.
    Can you advice me how to overcome this?
    Regards
    Chinta

    Hi Chinta,
    Pl. check for all gcc and glibc OS packages compatibility with your your OS. This will solve your problem.
    Also check that you are not installing a 32 bit IM software on a 64 bit machine or viceversa.
    regards,
    Sailesh

  • Getting exception using 11G oracle driver

    upgraded oracle database from 10G to 11G, and I made the following changes in my application for 11G:
    - Updated [ORACLE_HOME]/jdbc/lib/ojdbc6.jar to the CLASSPATH
    - Application uses JDK 1.6 (compilation & runtime)
    I started 20 instances of my application on Linux box and half of the application instances failed & threw the following exceptions, but when I used 10G Oracle client jar, all the instances comes up fine. Why is 11G Oracle client jar behaving differently than 10G jar? Why am I able to bring only 10 instances up and not all (20) when i used 11G Oracle jar file?
    Oracle 11G version: 11.1.0.6.0
    Oracle 10G version: 10.2.0.3.0
    Oracle 11G client jar: ojdbc6.jar
    Oracle 10G version: ojdbc14.jar
    Here is the exception I'm getting:
    ERROR 02 Aug 2009 01:24:23,488 [main] DelegatingDataSource - java.sql.SQLRecoverableException: Io exception: Connection reset
    at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:281)
    at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:118)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:224)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:296)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:611)
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:455)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:494)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:199)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:30)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:494)
    at oracle.jdbc.pool.OracleDataSource.getPhysicalConnection(OracleDataSource.java:398)
    at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:287)
    at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPhysicalConnection(OracleConnectionPoolDataSource.java:268)
    at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection(OracleConnectionPoolDataSource.java:136)
    at oracle.jdbc.pool.OracleImplicitConnectionCache.makeCacheConnection(OracleImplicitConnectionCache.java:2188)
    at oracle.jdbc.pool.OracleImplicitConnectionCache.makeOneConnection(OracleImplicitConnectionCache.java:640)
    at oracle.jdbc.pool.OracleImplicitConnectionCache.defaultUserPrePopulateCache(OracleImplicitConnectionCache.java:239)
    at oracle.jdbc.pool.OracleImplicitConnectionCache.<init>(OracleImplicitConnectionCache.java:198)
    at oracle.jdbc.pool.OracleConnectionCacheManager.createCache(OracleConnectionCacheManager.java:390)
    at oracle.jdbc.pool.OracleDataSource.cacheInitialize(OracleDataSource.java:617)
    at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:572)
    at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:251)
    at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:204)
    at com.cme.fest.framework.persistence.jdbc.datasource.DelegatingDataSource.getConnection(DelegatingDataSource.java:98)
    Any help or ideas would be really appreciated.

    java.sql.SQLRecoverableException: Io exception: Connection reset
    Please refer
    Closed connection error when connection isn't being closed

  • Too many Oracle Locks

    Hi Guys,
    We are facing this situation where in our Prod environment is getting many many Oracle Locks.
    Users are not able to perform their work smoothly and this hits hard during the month ends.
    DB Version= 10.2.0.4
    Apps Version = 11.5.10.2
    I have performed some investigation and found the below:-
    - The users perform certain operations and it is during this operation that we start getting Oracle locks frequently.
    - This issue cannot be recreated in any lower instance.
    - The sessions that are blocking are INACTIVE sessions with module 'ARXCWMAI'.
    - The sql that is run is also a select query (does not look like a problem area)
    - Trace/tkprof do not have enough information.
    - These sessions also tend to lock the table AR.AR_PAYMENT_SCHEDULES_ALL (found from v$locked_object)
    - These blocking sessions are killed and thats the temporary solution.
    Any ideas or suggestions would be greatly appreciated!
    Thanks,
    Trith

    Trith wrote:
    Pierre, How do I go forward after taking the backups of session,sql and lock tables.
    First goal should be to know what kind of lock type is blocking in your case and what is the related database object.
    To do this you need to understand how Oracle locking works, how different locks are represented in V$LOCK and how to check blocker/blocking session in V$LOCK. First step is to read relevant Concepts Guide section and try the examples and checking at the same time what is exactly in V$LOCK: http://docs.oracle.com/cd/E11882_01/server.112/e25789/consist.htm#i5704. Especiially you need to understand TM and TX lock types and to check what kind of blocking locks you have in your case.
    Other very good documentation about Oracle locking can be found in Tom Kyte Expert Oracle Database Architecture and Jonathan Lewis Oracle Core books. If you have access to My Oracle Support there are also some good notes on Oracle locking.
    Edited by: P. Forstmann on 14 mars 2012 13:52
    Edited by: P. Forstmann on 14 mars 2012 14:04

  • 11g Oracle ADF Certification

    Hi, can anyone help me to know, is there any certification is available for 11g Oracle ADF developers like SCJP for java developers. If available pls guide me what is the procedure to write the exam, exam fees, syllabus, eligibility.
    Thanks,
    Sankari Kannan

    Hi Sankari,
    There isn't any certification specifically on ADF. However there are are certifications on Middleware products. Do take a look at this link:
    http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=140
    regards,
    ~Krithika

  • ERP system Hangsdue to oracle Locks

    Hi ;
    I am facing a critical situation for about a week that my ERP system hangs due to oracle locks .
    in st04 i found the log as dead locks detected. in DB01 i can see processes holding the table DYNPLOAD for more than 1000s and it cause the other processes waiting and the entire system hangs.
    The situation is going worse that too many processes are using this and what i am doing is removing the locks from OEM .
    Aix5.3 oracle 10g .Ecc 6 = my system configuration.
    please suggest a suitable solution for this problem
    thanks and regards
    seethy

    Hi Anil;
    I cant login as root . i logon using <sid>adm and did all three commands..
    1. whats the difference between ps -ef|grep oraadm and ps -fu oraadm. i got a list of oracle processes...
    2. shows list of <sid>adm processes...
    3. all space shows fine
    should i do it as root user whats the difference in it? i have to visit the unix department to do so..can you explain its significants..
    DYNPLOAD is the table. can we do anything on database level..i am doing  statistics check daily ..but still locking the table.
    Thanks & Regards
    seethy

  • Oracle Portal 11g, Oracle WebCenter Suite or Oracle WebLogic Portal ?

    Witch of these technologies, Oracle Portal 11g,
    Oracle WebCenter Suite or Oracle WebLogic Portal ?
    is the future product of oracle ?
    I am going to use portal but I don't know witch of these product is the correct one.
    I need help to clarified it. As i am going to use portal I want to use the one that oracle intend to support

    Hi Harish,
    There are lot differences are available when you compare these three products, some them are
    Oracle Web Center Suite
    Comprises of various components such as Web Center Interaction,Oracle Entitlement Server,Oracle Personalization Server an Ensemble(for proxying content and mashups) and chat server,wiki server,blog server,forum etc are available with web center suite.The collaboration tools are out of the box,so you dont require to redevelop anything to enable collaboration for your site.Basically webcenter is more powerful when used to develop intranet sites rather than a website which requires less collaboration.
    Oracle Portal 10g
    Oracle Portal 10g is the primary oracle portal product before oracle bought BEA.The main difference is the architecture and framework,Oracle Portal uses sql/plsql intensively for processing the page as all their pages are developed from browser.Every thing you develop is streaming that is queried from DB in contrast with weblogic portal which has the feature of file based portal which is faster compared to the streaming(persistent desktops).The architecture is different compared to weblogic and webcenter.For ex:There are sql and pl/sql portlets which can be developed very faster which not there in the other two platforms.
    Oracle Weblogic Portal 10.3
    It is hot in the market right now and development is easier and architecture supports both file based and streaming,the primary features of all the portal product are more or less same but webcenter has more collaborative features.Weblogic portal is very stable as it is on WLS which is a stable weblogic server.
    I prefer if you have any previous experience on any of these products then built on that one.Else start with weblogic portal which is easier to startwith compared to others.
    Regards,
    Dinesh

  • How to resolve Oracle lock issue

    Hi All,
    What is Oracle lock issue in BW and how to resolve it.
    Regards,
    Ravi

    Hi Ravi,
    The object lock issues that we sometimes encounter in SAP BW production support role.
    Lets take the below example where the InfoObject(0material) load has failed and the load monitor (T-Code: RSMO) looks like this.
    Go through the link below
    http://proradian.com/blog/2008/07/sap-bw-production-support-object-lock-issues/
    Regards,
    Marasa.

  • Need oracle practice question for OCA

    Need oracle practice question for OCA.
    Edited by: 823938 on Dec 27, 2010 10:21 PM

    It's illegal to use dumps.
    Read the following link:
    http://www.certguard.com/braindumps.asp

  • Newbie Oracle Enterprise Manager 11g feature availability question

    Newbie question here. I am new to Oracle 11g and new to this forum. I ran a search on this question and came up empty so hopefully there is a kind and knowlegable soul wo can help.
    I recall in earlier versions of Oracle Enterprise Manager for earlier versions of Oracle there was something called Oracle Enteprise Manager Reporting accessible from the OEM web.
    One of its key features was the ability to make custom "Additional Reports". In our current environment this is installed and works great. I don't know if it was an add on to OEM, or if it was built in. It was built a long time ago and I wasn't arround for that build. All I know is it works and it suits our needs.
    Well we are now trying to build a new Oracle dev box to replace the current dev environment. We would prefer to not lose any existing functionality we have... and if possible not have to reinvent the wheel. The new box has Oracle 11g.
    **Here comes the dumb newbie questions. **
    Does Oracle 11g Enterprise Manager support 9i-style Enterprise Manager Reporting and Custom Reports?
    Is it called that in 11g or has it been renamed to something else?
    Is it it a simple matter of configuration or is it an add on that needs to be installed?
    Any help would be most appreciated.
    Thanks,
    Wayward Oracle Newbie looking for an Oracle Home

    Oracle 11g does not support 9i-style custom reports. There is a new reporting framework - Information Publisher available in Grid Control 10+ versions. The new reporting framework does support custom reports as well. Click on the Reports tab to access the functionality.
    Regards,
    Leslie

  • Apex 3.1.2 with Oracle 11G - /i/ alias question

    I just recently installed Oracle 11G with Apex 3.0 and then upgraded Apex to 3.1.2. I am able to login and do most of the regular tasks. I built an application using custom flash components. When I used Apex with Oracle 10G, I can copy the SWF files to the directory mapped to /i/ alias and it worked fine.
    Same is not working with 11G. First of all I am not sure to what path the /i/ in 11G is mapped to. Any help is greatly appreciated. I used Embedded Pl/Sql gateway.
    Thanks
    Karthik
    Edited by: karthikm on Dec 30, 2008 4:40 PM
    Edited by: karthikm on Dec 30, 2008 4:40 PM

    Dingfei,
    You need to make sure that you have access to the "i" folder. Make sure that the alias defined in your dads.conf is properly configured.
    Regards,
    Dan
    http://danielmcghan.us
    http://sourceforge.net/projects/tapigen

  • Question about dependent projects (and their libraries) in 11g-Oracle team?

    Hello everyone,
    I have a question about dependent projects. An example:
    In JDeveloper 10.1.3.x if you had for instance 2 projects (in a workspace): project 1 has one project library (for instance a log4j library) and project 2 is a very simple webapplication which is dependent on project 1. Project 2 has one class which makes use of log4j.
    This compiles fine, you can run project 2 in oc4j, and the libraries of project 1 (log4j) are added on the classpath and everything works fine. This is great for rapid testing as well as keeping management of libraries to a minimum (only one project where you would update a library e.g.)
    However in 11g this approach seems not to work at all anymore now that weblogic is used, not even when 'export library' is checked in project 1. The library is simply never exported at all - with a noclassdeffound error as result. Is this approach still possible (without having to define multiple deployment profiles), or is this a bug?
    Thanks!
    Martijn
    Edited by: MartijnR on Oct 27, 2008 7:57 AM

    Hi Ron,
    I've tried what you said, indeed in that .beabuild.txt when 'deploy by default' is checked it adds a line like: C:/JDeveloper/mywork/test2/lib/log4j-1.2.14.jar = test2-view-webapp/WEB-INF/lib/log4j-1.2.14.jar
    Which looks fine, except that /web-inf/lib/ is empty. I presume its a sort of mapping to say: Load it like it in WEB-INF/lib? This line is not there when the deploy by default is not checked.
    I modified the TestBean as follows (the method that references Log4j does it thru a Class.forName() now only):
    public String getHelloWorld() {
    try {
    Class clazz = Class.forName("org.apache.log4j.Logger");
    System.out.println(clazz.getName());
    catch(Exception e) {
    e.printStackTrace();
    return "Hello World";
    In both cases with or without line, it throws:
    java.lang.ClassNotFoundException: org.apache.log4j.Logger
         at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:283)
         at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:256)
         at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:54)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
         at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:176)
         at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:42)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
         at java.lang.Class.forName0(Native Method)
         at java.lang.Class.forName(Class.java:169)
         at nl.test.TestBean.getHelloWorld(TestBean.java:15)
    Secondly I added weblogic.xml with your suggested code, in the exploded war this results in a weblogic.xml which looks like:
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <weblogic-web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-web-app.xsd" xmlns="http://www.bea.com/ns/weblogic/weblogic-web-app">
    <container-descriptor>
    <prefer-web-inf-classes>true</prefer-web-inf-classes>
    </container-descriptor>
    <jsp-descriptor>
    <debug>true</debug>
    <working-dir>/C:/JDeveloper/mywork/test2/view/classes/.jsps</working-dir>
    <keepgenerated>true</keepgenerated>
    </jsp-descriptor>
    <library-ref>
    <library-name>jstl</library-name>
    <specification-version>1.2</specification-version>
    </library-ref>
    <library-ref>
    <library-name>jsf</library-name>
    <specification-version>1.2</specification-version>
    </library-ref>
    </weblogic-web-app>
    The only thing from me is that container-descriptor tag, the rest is added to it during the deployment. Unfortunately, it still produces the same error. :/ Any clue?

  • Oracle 11G - Oracle AWR query execution time in report

    I have used AWR tool of oracle 11G. I have exported query historical statistics of production databaser using awrextr.sql and then load the exported dump file using awrload.sql script.
    Then i used awrrpti.sql and awrsqrpi.sql for generating report of sql queries. Every thing is working fine and generated reports are also very helpful, but report does not show the exact time when the query was executed. How can i get the actual time when the query was executed ?
    any help please ?

    If you would have consulted the Oracle Reference Manual to get the view descriptions, you should have your question is a rhetorical one with the answer NO.
    This is because every statement can be executed one or more times, and Oracle would need to keep track of all individual executions.
    I do agree most 'applications' do not use bind variables, and consequently only have unique statements, but Oracle didn't take that into account, and rightly so.
    Sybrand Bakker
    Senior Oracle DBA

  • Oim 11g Custom Challenge questions

    hi,
    does oim 11g allows users to setup custom challenge questions.
    Sun Idm does have this feature..
    any idea on Oracle Idm..
    thank you.

    How to add custom challenge questions in OIM 11g
    Find below link for 11gR2
    http://srini-bellamkonda.blogspot.in/2012/11/adding-custom-challenge-questions-in.html

Maybe you are looking for