Oracle database locks

Today I ran the following queries in my 2 node RAC database. Enterprise database server 11.7 linux version.
SQL> select * from dba_blockers;
no rows selected
SQL> select * from dba_waiters;
no rows selected
SQL> SELECT substr(DECODE(request,0,'Holder: ','Waiter: ')||g.sid,1) sess,s.machine,s.serial#,s.sql_id sqlid,
2 id1, id2, lmode, request, g.type, g.inst_id, seconds_in_wait
3 FROM GV$LOCK g, gv$session s
4 WHERE (id1, id2, g.type) IN
5 (SELECT id1, id2, type FROM GV$LOCK WHERE request>0)
6 and g.sid = s.sid
7 and g.inst_id = s.inst_id
order by sess desc;
SESS MACHINE SERIAL# SQLID ID1 ID2 LMODE REQUEST TY INST_ID SECONDS_IN_WAIT
Waiter: 6462 appserver 49027 2vzvm60fvf506 276026 0 0 6 TM 2 2078
Holder: 6492 database server 8546 276026 0 3 0 TM 1 28815
SQL> SELECT a.sql_text
FROM gv$sqltext a,
gv$session b
WHERE a.address = b.sql_address
AND a.hash_value = b.sql_hash_value
AND b.sid = &1
ORDER BY a.piece; 2 3 4 5 6 7
Enter value for 1: 6492
old 6: AND b.sid = &1
new 6: AND b.sid = 6492
no rows selected
INST_ID SID OBJECT_OWNER OBJECT_NAME LOCKED_MODE OS_USER_NAME
1 6492 ABC XYZ Row-X (SX) oracle
2 6462 ABC XYZ None appuser
I wanted to know why dba_blockers or dba_waiters not showing blocked or waiting sessions, why no sqlid associated to holder session ?
Thanks for your time and help

Thanks for your quick response. you provided good information
I understood that currently no session is holding the lock for which other session is waiting, i.e dba_blockers showing zero rows.
But how the below query is showing holder and waiting session and no sql query associated to holding session.
SQL> SELECT substr(DECODE(request,0,'Holder: ','Waiter: ')||g.sid,1) sess,s.machine,s.serial#,s.sql_id sqlid,
2 id1, id2, lmode, request, g.type, g.inst_id, seconds_in_wait
3 FROM GV$LOCK g, gv$session s
4 WHERE (id1, id2, g.type) IN
5 (SELECT id1, id2, type FROM GV$LOCK WHERE request>0)
6 and g.sid = s.sid
7 and g.inst_id = s.inst_id
order by sess desc;
SESS MACHINE SERIAL# SQLID ID1 ID2 LMODE REQUEST TY INST_ID SECONDS_IN_WAIT
Waiter: 6462 appserver 49027 2vzvm60fvf506 276026 0 0 6 TM 2 2078
Holder: 6492 database server 8546 276026 0 3 0 TM 1 28815

Similar Messages

  • How to implement optemistic locking in pl/sql for oracle database

    i have search the net to find example of how i can do the optimistic locking in pl/sql, all the resources i found were old , for example "Optimistic Locking with Concurrence in Oracle.
    As " by Graham Thornton Snr. Database Architect / Oracle DBA in 2001, but at the end he said that the approach will not work fine if the update being made is a relative update, this apprach includes:-
    1.add a timestamp column to an exsiting table.
    2.add a preinsert trigger on the table to set the timestamp.
    3.add a preupdate trigger to comapre the old time stamp with the new one.
    So where i can find updated resources about this issue.
    Edited by: 812643 on 17-Nov-2010 12:39

    totally plagiarized from expert oracle database architecture 9i, 10g, 11g by Tom Kyte pg201
    one popular implementation of optimistic locking is to keep the old and new values in the application and upon updating the data use and update like this
    update table
    set column1 =: new_column1, column2 = : new_column2, ...
    where primary_key = :primary_key
    and decode( column1, :old_column1, 1 ) = 1
    and decode( column2, :old_column2, 1 ) = 1
    another implementation
    optimistic locking using a version column
    add a single column to each database table you wish to protect from lost updates. this column is generally either a number or date/timestamp column
    It is typically maintened via a row trigger on the table, which is responsible for incrementing the number column or updating the date/timestamp column
    every time a row is modified.
    another one on page 204
    optimistic locking usin a checksum
    similiar to the version column implementation but it uses the base data itself to compute a virtual version column.
    the ones suggested where owa_opt_lock.checksum, dbms_obfuscation_toolkit.md5, dbms_crypto.hash, ora_hashEdited by: pollywog on Nov 17, 2010 3:48 PM
    might be a good book for you to look into getting it has a whole chapter on locking and latching.
    Edited by: pollywog on Nov 17, 2010 3:54 PM

  • Database locking (state versus stateless) and indexes on oracle database

    Does anyone have a link to a document talking about database locking (state versus stateless) and talking about indexes in oracle database?

    No version information and no information as to what you mean by "locking" so no help is possible.
    You could mean LOCK TABLE in version 7.3.4 or SELECT FOR UPDATE in 11.1.0.7 or something else entirely.

  • Database locking using JSP and Oracle database

    Dear All
    I am reading about how to do database locking in general and i want to implement these mechanisms using JSP pages and oracle database, but i have the following questions:-
    1.If i write a “select for update” quesry in the JSP page will it locks the record ? or it will not lock the record because the connection between the JSP pages and the server will be stateless in most online systems?
    2.If i write all my jave code in transaction , something like this:-
    • Begin transaction
    • Commit or
    • Rollback
    Then should i be worried about the locking issues or the database manger will handle the locking mechanisms to insure data integrity(and what the default mechanism (if any) that the oracle database manger use to do the locking)?
    3. If the answer for question 2 is no, then how can i handle the optimistic and the pentemistic locking using JSP pages?
    BR

    One way to solve this issue is as follows:
    * You add a new column to each database table called 'version' which is of int type.
    * Each time you alter any field in a record, you increament the version number.
    * When you read a record and display it, you store the version number in your code
    * when you go to update the record, you write your sql something like this:
    update person set firstName=? where personId=? and version=?
    Where the version is whatever you stored locally. If someone altered the record in the database while your
    end user was looking at it, the version numbers will not match and the sql statement will
    return zero as the number of records it altered. If its zero, inform the end user someone altered the record
    while he was looking at it and weather or not he wants to proceed.
    The chances of two people altering the same record in a table while both are logged in and viewing the same set of data is small so such collisions will be few.
    You only need transactions if you are updating more than one record at a time (in the same table or multiple tables).
    You dont need it for reading records if you use a single sql statement to read (for example: to join multiple tables).
    In general, you get a (pooled) connection, use it, and close it as quickly as possible in a try/catch/finally block. You dont hold onto it for the duration of the user's session. A book on JDBC should help clarify this.

  • Issues/Problems between Apex 3.2.0.00.27 and Oracle Database 9.2.0.1

    I don't know what problem is.
    I was planning to install Oracle Application Express into my server.
    So, i made a fresh database installation with Oracle Database Enterprise Edition 9i release 2 (9.2.0.1) and setting up Oracle Application Express 3.2.0.00.27 to use it with it.
    The installation was succesful.
    But I am having problems to create workspaces using the Admin option: Manage Worspaces --> Create Worspace.
    After open these option, the page ask me to enter Workspace Name and Workspace Description.Then appears the page where I need to enter re-use existing schema, schema name, schema password and space quota. When I press the next button, the CPU increase to 100% use and the server, even when it does not freeze, stays in the last page and not move to the next want for a long long time.... more thant 3 hours.
    I read at the apache logs and didn't find something to show me the possible causes of these behaiviour.
    Apache logs
    access_log.txt -------> "POST /pls/apex/wwv_flow.accept HTTP/1.1" 302 163
    ssl_engine_log -------> Failed to release global mutex lock
    Init: (localhost:4443) RSA server certificate CommonName (CN) 'NOT SECURE!!!! does NOT match server name!?
    error_log -------> OPM: EW: Process aemsglobalgroup:3645 (but number change several times) (pid:1720) died, restarting
    [warn] mod_plsql: Stale Connection due to Oracle error: 3113
    [error] mod_plsql: /pls/apex/wwv_flow.accept ORA-3113
    ORA-3113: end-of-file on communication channel
    I am really confuse because I thougth that Oracle application Express is certified with Oracle Database EE 9.2.0.1
    My server spec are:
    Windows XP with SP2
    500Mb Ram Memory
    7.2 Gb Free Disk Space
    Please any idea about which can be the possible problem/solution for that.
    Best Regards
    Abdel Miranda
    AEMS Global Group
    Panama

    Well I think it is kind of wasted of time to try to figure it out which caould be the possible cause, once you told me that Apex works with 9.2.0.3 or higher and has an issues with earlier versions.
    I already download the last release for 10g, so I hope it solve the problem and let me install and setup properly oracle application server.
    I know it is kind of hard work to do to install 10g rel 2 but, well, is the only solution, it seems.
    thanks for everything.
    Abdel Miranda
    AEMS Global Group
    Panama

  • How to connect more than one oracle databases in single form?

    Hi,
    I have installed Oracle database in three different servers with different users, but the table's structure are same in all three different database users.
    Now in one D2K form i want to connect and access, all three different database users at a time.
    If anybody know answer for this please replay.
    My mail Id: [email protected]
    Regards
    Mahaveer

    You can access other databases/schemas by means of the built-in-package EXEC_SQL. See online help in Forms Builder, especially EXEC_SQL.Open_Connection, EXEC_SQL.Open_Cursor, EXEC_SQL.Fetch_Rows, ...
    If you want to base your blocks on several database connections at the same time, you should write your own on-select, on-fetch, on-lock, ... triggers, I suppose.
    Marc

  • Can i  use Oracle Database Audit Vault and Oracle Database Firewall on Solaris?

    Can i  use Oracle Database Audit Vault and Oracle Database Firewall on Solaris?

    4195bee8-4db0-4799-a674-18f89aa500cb wrote:
    i dont have access to My Oracle Support can u send text or html of document please?
    Moderator Action:
    No they cannot send you a document that is available only to those with access to MOS.
    That would violate the conditions of having such service contract credentials.
    Asking someone to violate such privileges is a serious offense and could get that other person's organization banned from all support and all their support contracts cancelled.
    Your post is locked.
    Your duplicate post that you placed into the Audit Vault forum space has been removed (it had no responses).
    This thread which you had placed in the Solaris 10 forum space is moved to the Audit Vault forum space.
    That's the proper location for Audit Vault questions.

  • Installing Oracle Database Express Edition 11g on UBUNTU

    Hello everyone,
    I want to install Oracle Database Express Edition 11g on UBUNTU. I followed the steps from this link created by Dude:
    https://forums.oracle.com/thread/2303639?start=0&tstart=0
    My problem becomes when I type in from the terminal:
    sudo /etc/init.d/oracle-xe configure
    I followed the instructions there, agreeing t HTTP port 8080, port database listener 1521,  specifying a password for my database account, and wanting Oracle Express to be started on boot. This is what I'm getting:
    Starting Oracle Net Listener...touch: cannot touch `/var/lock/subsys/listener': No such file or directory
    Done
    Configuring database...
    Database Configuration failed.  Look into /u01/app/oracle/product/11.2.0/xe/config/log for details
    I have no idea what this means, so I went into the log's location and I found 4 of them, so I clicked on each of them, and this is what I'm getting:
    1. cloneDBCreation.log:
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    ORA-01034: ORACLE not available
    ORA-27101: shared memory realm does not exist
    Linux-x86_64 Error: 2: No such file or directory
    ORA-00845: MEMORY_TARGET not supported on this system
    Create controlfile reuse set database "XE"
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    alter system enable restricted session
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    alter database "XE" open resetlogs
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    alter database rename global_name to "XE"
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    alter system switch logfile
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    alter system checkpoint
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    2. CloneRmanRestore.log
    ORA-00845: MEMORY_TARGET not supported on this system
    select TO_CHAR(systimestamp,'YYYYMMDD HH:MI:SS') from dual
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    declare
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    select TO_CHAR(systimestamp,'YYYYMMDD HH:MI:SS') from dual
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    3. postDBCreation.log
    begin
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    File created.
    ORA-01034: ORACLE not available
    ORA-27101: shared memory realm does not exist
    Linux-x86_64 Error: 2: No such file or directory
    ORA-00845: MEMORY_TARGET not supported on this system
    select 'utl_recomp_begin: ' || to_char(sysdate, 'HH:MI:SS') from dual
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    BEGIN utl_recomp.recomp_serial(); END;
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    select 'utl_recomp_end: ' || to_char(sysdate, 'HH:MI:SS') from dual
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    4. postScripts.log
    CREATE OR REPLACE LIBRARY dbms_sumadv_lib AS '/u01/app/oracle/product/11.2.0/xe/lib/libqsmashr.so';
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    BEGIN dbms_datapump_utl.replace_default_dir; END;
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    commit
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    create or replace directory XMLDIR as '/u01/app/oracle/product/11.2.0/xe/rdbms/xml'
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    DROP DIRECTORY ORACLE_OCM_CONFIG_DIR
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    DROP DIRECTORY ADMIN_DIR
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    DROP DIRECTORY WORK_DIR
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    BEGIN dbms_swrf_internal.cleanup_database(cleanup_local => FALSE); END;
    ERROR at line 1:
    ORA-01034: ORACLE not available
    Process ID: 0
    Session ID: 0 Serial number: 0
    commit
    Can somebody that knows this, or has installed Oracle Express on Ubuntu, to please explain it to me what does it mean and why am I getting those errors. Please explain thoroughly as if I am an amateur person, IN DETAIL, STEP-BY-STEP. I want to run it and make it work! I heard that it encourages people to answer for points. I am open for your suggestions and experiences, as long as it's not 'use common sense', 'you're dumb', or an answer that is vaguely explained.  Thank you for those that take the time to read it.
    ec557fac-f825-4356-a220-1ec941ce7cd0 

    Hi Pradeepcmst,
    Thanks for your suggestion, but I found it sometimes misunderstanding on what he's trying to say - his instructions are not step-by-step and precise. Instead, I found this link that helped me a lot:
    Installing Oracle 11gXE on Mint and Ubuntu | The Anti-Kyte

  • Upload file in JSP with Oracle Database 10gR2

    How to upload file with oracle database 10gR2??
    i can't find how to upload..
    i've tried to create a procedure in oracle and execute in netbeans but the file save in directory and then from directory save to database.
    it means the file save in 2 location, in directory and database..
    does anybody know how to save file direct from the JSP file into database without save in directory?
    this is the procedure..
    create or replace PROCEDURE load_file (
    p_id number,
    p_photo_name in varchar2) IS
    src_file BFILE;
    dst_file BLOB;
    lgh_file BINARY_INTEGER;
    BEGIN
    src_file := bfilename('DIR_TEMP', p_photo_name);
    -- insert a NULL record to lock
    INSERT INTO temp_photo
    *(id, photo_name, photo)*
    VALUES
    *(p_id , p_photo_name ,EMPTY_BLOB())*
    RETURNING photo INTO dst_file;
    -- lock record
    SELECT photo
    INTO dst_file
    FROM temp_photo
    WHERE id = p_id
    AND photo_name = p_photo_name
    FOR UPDATE;
    -- open the file
    dbms_lob.fileopen(src_file, dbms_lob.file_readonly);
    -- determine length
    lgh_file := dbms_lob.getlength(src_file);
    -- read the file
    dbms_lob.loadfromfile(dst_file, src_file, lgh_file);
    -- update the blob field
    UPDATE temp_photo
    SET photo = dst_file
    WHERE id = p_id
    AND photo_name = p_photo_name;
    -- close file
    dbms_lob.fileclose(src_file);
    END load_file;

    Well your Oracle procedure is designed to load a file, so that's what it does. If you want it to load from a data stream such as an upload, you need to rewrite it accordingly.
    So far this is not a Java question at all.

  • Database locks in OBPM 10gR3

    Environment:
    Oracle BPM 10gR3 Version: 10.3.1.0.0 Build: #99954
    WebLogic Server 10.0 MP1 Clustered domain
    JDBC Driver - WebLogic Type 4 XA ( weblogic.jdbcx.oracle.OracleDataSource )
    We have a BPM project deployed on the WLS 10.0 MP1 Cluster,which was running fine for the last 18 months. But all of a sudden we are experiencing the database locks errors for the last few days, when we try to restart the BPM Engine.
    WebLogic JTA Timeout = 30 seconds
    Database Distributed_Lock_Timeout = 60 seconds
    WebLogic Datasources for Directory and Engine XA Connection Timeout = 30 seconds
    Error
    Process '/Test#Default-1.0' could not be started. Details:\nProcess execution engine execution error.
    Caused by: Exception [java.sql.SQLException: [BEA][Oracle JDBC Driver][Oracle]ORA-02049: timeout: distributed transaction waiting for lock ].
    Caused by: [BEA][Oracle JDBC Driver][Oracle]ORA-02049: timeout: distributed transaction waiting for lock
    fuego.papi.impl.EngineExecutionException: Process execution engine execution error.
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:139)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:79)
         at fuego.server.execution.DefaultEngineExecution.executeWithoutComponentImmediate(DefaultEngineExecution.java:185)
         at fuego.server.execution.EngineExecution.executeWithoutComponentImmediate(EngineExecution.java:86)
         at fuego.ejbengine.service.EJBActiveProcessService.startProcess(EJBActiveProcessService.java:92)
         at fuego.server.service.ActiveProcessService.runProcessesLoader(ActiveProcessService.java:118)
         at fuego.server.service.ActiveProcessService.activateProcesses(ActiveProcessService.java:88)
         at fuego.ejbengine.service.EJBActiveProcessService.doActivateProcesses(EJBActiveProcessService.java:63)
         at fuego.ejbengine.cluster.DistributedEJBActiveProcessService.initialize(DistributedEJBActiveProcessService.java:37)
         at fuego.ejbengine.cluster.ClusterObjectFactory.initializeActiveProcessService(ClusterObjectFactory.java:33)
         at fuego.ejbengine.Engine.startServices(Engine.java:448)
         at fuego.ejbengine.Engine.start(Engine.java:129)
         at fuego.ejbengine.servlet.AbstractSchedulerServlet.init(AbstractSchedulerServlet.java:91)
         at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:282)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(Unknown Source)
         at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:63)
         at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
         at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48)
         at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:507)
         at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1853)
         at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1830)
         at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1750)
         at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:2909)
         at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:973)
         at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:361)
         at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
         at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
         at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:117)
         at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:204)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60)
         at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:26)
         at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:635)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
         at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
         at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:182)
         at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:359)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:51)
         at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:196)
         at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
         at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
         at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
         at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
         at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
         at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
         at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
    Caused by: fuego.directory.DirectoryRuntimeException: Exception [java.sql.SQLException: [BEA][Oracle JDBC Driver][Oracle]ORA-02049: timeout: distributed transaction waiting for lock ].
         at fuego.directory.DirectoryRuntimeException.wrapException(DirectoryRuntimeException.java:85)
         at fuego.directory.provider.jdbc.oracle.OraclePersistenceManager.mapSQLException(OraclePersistenceManager.java:183)
         at fuego.directory.provider.jdbc.datadirect.oracle.DataDirectOraclePersistenceManager.mapSQLException(DataDirectOraclePersistenceManager.java:50)
         at fuego.directory.provider.jdbc.JDBCServiceAccessor.mapSQLException(JDBCServiceAccessor.java:78)
         at fuego.directory.provider.jdbc.JDBCProcessAccessor.updateDeployedProcess(JDBCProcessAccessor.java:1330)
         at sun.reflect.GeneratedMethodAccessor92.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at fuego.directory.provider.DirectorySessionImpl$AccessorProxy.invoke(DirectorySessionImpl.java:756)
         at $Proxy57.updateDeployedProcess(Unknown Source)
         at fuego.directory.DirDeployedProcess.update(DirDeployedProcess.java:1022)
         at fuego.server.ActiveProcessManager.handleProcess(ActiveProcessManager.java:496)
         at fuego.server.service.ActiveProcessService.startProcess(ActiveProcessService.java:136)
         at fuego.ejbengine.service.EJBActiveProcessService.startProcessImpl(EJBActiveProcessService.java:107)
         at fuego.ejbengine.service.EJBActiveProcessService.access$100(EJBActiveProcessService.java:32)
         at fuego.ejbengine.service.EJBActiveProcessService$2.execute(EJBActiveProcessService.java:95)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         ... 52 more
    Caused by: java.sql.SQLException: [BEA][Oracle JDBC Driver][Oracle]ORA-02049: timeout: distributed transaction waiting for lock
         at weblogic.jdbc.base.BaseExceptions.createException(Unknown Source)
         at weblogic.jdbc.base.BaseExceptions.getException(Unknown Source)
         at weblogic.jdbc.oracle.OracleImplStatement.execute(Unknown Source)
         at weblogic.jdbc.base.BaseStatement.commonExecute(Unknown Source)
         at weblogic.jdbc.base.BaseStatement.executeUpdateInternal(Unknown Source)
         at weblogic.jdbc.base.BasePreparedStatement.executeUpdate(Unknown Source)
         at weblogic.jdbcx.base.BasePreparedStatementWrapper.executeUpdate(Unknown Source)
         at weblogic.jdbc.wrapper.PreparedStatement.executeUpdate(PreparedStatement.java:125)
         at fuego.jdbc.FaultTolerantPreparedStatement.executeUpdate(FaultTolerantPreparedStatement.java:623)
         at fuego.directory.provider.jdbc.JDBCPersistenceManager.update(JDBCPersistenceManager.java:946)
         at fuego.directory.provider.jdbc.JDBCProcessAccessor.updateDeployedProcess(JDBCProcessAccessor.java:1327)
         ... 68 more

    Hello -
    Following is the Oracle recommendation for BPM timeouts. Now you can try this.
    Increase the timeout:
    -in the Oracle Weblogic console go to Services -> JTA -> Timeout Seconds . Set the value to 300.
    also the DISTRIBUTED_LOCK_TIMEOUT value for BPM should follow the following formula:
    DISTRIBUTED_LOCK_TIMEOUT >= XA Transaction Timeout >= WebLogic Server JTA timeout
    This means that the configured "DISTRIBUTED_LOCK_TIMEOUT" value should be equal to or
    larger than the "XA Transaction Timeout" value which in turn should be equal to or larger than the "WebLogic Server JTA timeout".
    Note : Check your previous BPM Engine logs, you can see the timeout warning.
    BR,
    Justin.

  • Oracle Database - Database Configuration Assistant

    Hello,
    When I was installing Oracle Database (at Install Product), it reached Database Configuration Assistant with an error pop out: ORA-12638: Credential retrieval failed. Please advise me, thank you in advance~

    This question does not have to be raised in Peoplesoft forum. Please ask this to the Database General forum, thanks.
    Thread locked.
    Nicolas.

  • Server Sizing For Oracle Database

    Hi All,
    I need a server sizing for the below mentioned architecture:
    This application is basically for logistics company which we are planing to host it centrally with two server's one server for application and one for oracle database along with DR site (Other Location). There are four locations and each location will have 20 users who are going to access this application (20 x 4= 80 Users). We are using MPLS network of 35 mbps bandwidth.
    1. Application server: Windows server 2008 R2
    2. Database Server: Windows server 2008 R2, Oracle 11g r2
    I need a server sizing documents.
    Thanks........

    EdStevens wrote:
    Justin Mungal wrote:
    EdStevens wrote:
    user1970505 wrote:
    Hi All,
    I need a server sizing for the below mentioned architecture:
    This application is basically for logistics company which we are planing to host it centrally with two server's one server for application and one for oracle database along with DR site (Other Location). There are four locations and each location will have 20 users who are going to access this application (20 x 4= 80 Users). We are using MPLS network of 35 mbps bandwidth.
    1. Application server: Windows server 2008 R2
    2. Database Server: Windows server 2008 R2, Oracle 11g r2
    I need a server sizing documents.
    Thanks........I'd seriously reconsider hosting Oracle db on Windows. Obviously there are many, many shops that do. And obviously it is often a case of the fact that they do not have (and choose to not acquire) expertise in Linux. But I've been in IT for 30+ years and have worked on IBM S-370 and its variants and descendents, Windows since v3, DEC VMS, IBM OS/2, Solaris, AIX, HPUX, and Oracle Linux. The first Oracle database I ever created was on Windows 3.11 and at that point I had never seen *nix.  Now I am in a position to state that Windows is the worst excuse of an operating system of any I have ever used.  I am constantly amazed/amused by how often (at least once a month on schedule, plus unplanned times) that our Windows SA has to send out a notice that he is re-booting his servers.  I can't remember the last time we had to reboot a Linux server ( I have 4 of them)
    Yes, I'm biased away from Windows, but that bias comes from experience. Hardly a day goes by that I don't see something that causes me to say to whoever is in earshot "have I told you how much I hate Windows?"I was going to refrain from commenting on that, as I assumed they're a Windows shop and aren't open to any other OS (but my assumption could be incorrect).
    I haven't been working in IT for as long as many of the folks around here, only about 10 years. I'm a former system admin that maintained both Linux and Windows servers, but my focus was on Windows. In the right hands, Windows can be rock solid. If a system admin has to reboot Windows servers often, he is most likely doing something wrong, or is rebooting for security updates. It's never as simple as "Windows Sucks," or "Linux Sucks;" it all depends on who's running the system (again, in my opinion).
    I have seen some windows servers run uninterrupted for so long no one could remember the admin password. But more often memory leaks and the "weekly update" (replacing last weeks bugs with this weeks) is the culprit.
    Yes, it really is sad how often you have to reboot for updates if you want to keep your system current. Mind you, it's better to have the fixes then to not have them (maybe). I rebooted my servers about once every month at my old place... which is not that bad.
    With that said, in my experience, Oracle on Windows is a major pain. It takes me much longer to do anything. Once you get proficient with a CLI like the bash shell, the Windows GUI can't compare.Agreed. One of my many complaints about Windows is the poor excuse of a shell processor. I'm pretty proficient in command line scripting, but still cringe when I have to do it. Practically every line of code I write for a command script is accompanied by the remark "this is so lame compared to what I could do with a shell script". Same for vi vs. notepad. But my real problem is the memory leaks and the registry. I'm fairly comfortable hacking certain areas of the registry, but the need to and the arcane linkages between different areas of the registry and how they influence 'process environment' remains a mystery to all but a tiny minority of admins. Compare to *nix where everything is well documented and "knowable". 
    One (of many) anecdotal experiences, this with my personal Win7 laptop. One time it crashed and refused to reboot. A bit of a google search turned up some arcane keystroke sequence to put it into some sort of recovery mode on bootup .. similar to getting into the bios, but the keystroke sequence was much more complex .. it may have involved standing on one foot while entering the sequence. Anyway, it entered a recovery process I've never seen before or since and repaired everything. My first thought was "hey, that was pretty cool." Then my second thought was 'but only Windows would need such a facility.
    Bottom line? To paraphrase a famous Tom Hanks character, "My momma always said Windows was like a box of chocolates. You never know just what you'll get."Haha... I like that one. Yes, the registry is definitely horrible. It's amazing to me that a single point of failure was Microsoft's answer to INI files.
    I think Windows and nix have their places. Server work definitely seems more productive to me in a nix environment, but I think I'd jump off a cliff if I had to use it as my desktop environment day-in-day-out. The other problem is application lock-down; I can't blame the OS for that, but it's a reality... and using virtualization to run those applications seems to defeat the point to me.

  • Implementing SQL Plan Management on Oracle Database 11.2.0.2

    Environment:
    Oracle Linux 5 update 10 (UEK)
    Oracle GI 11.2.0.2.0 (Oracle ASM 11.2.0.2)
    Oracle Database 11.2.0.2.0 Enterprise Edition with RAC option (3 nodes)
    No PSU applied/CPU July 2013 applied to RDBMS
    Database servicing Siebel CRM 8.1.1.1 Application that uses bind peeking.
    Siebel CRM soon to be version 8.1.1.11
    There are a few bugs for SQL Plan Management (SPM) on 11.2.0.2 (see below).  The slowness and non-peeked binds issues seem very problematic.  I've seen a few bloggers recommend to not use SPM unless your at Oracle Database 12c.  Several of the bugs seemed to be fixed in 11.2.0.3 but we don't have any plans to move to 11.2.0.3 since we'll most likely be at 12.1.0.x in 7 months.  Any recommendation from the community on whether I should capture and use SQL Plan Management with 11.2.0.2?  Why, why not?  If there's other relevant information needed, let me know.
    Bug 9910484 - SQL Plan Management Capture uses excessive space in SYSAUX (Doc ID 9910484.8)
    Affects:
    Product (Component) Oracle Server (Rdbms)
    Range of versions believed to be affected Versions >= 11.1 but BELOW 12.1
    Versions confirmed as being affected
    •11.2.0.2
    •11.2.0.1
    •11.1.0.7
    Platforms affected Generic (all / most platforms affected)
    Fixed:
    •12.1.0.1 (Base Release)
    •11.2.0.3 (Server Patch Set)
    •11.2.0.2 Patch 4 on Windows Platforms
    •11.1.0.7 Patch 41 on Windows Platforms
    Bug 11719151 - SQL Plan Management capture causes slowness (Doc ID 11719151.8)
    Affects:
    Product (Component) Oracle Server (Rdbms)
    Range of versions believed to be affected Versions >= 11.2.0.2 but BELOW 12.1
    Versions confirmed as being affected
    •11.2.0.2
    Platforms affected Generic (all / most platforms affected)
    Fixed:
    •12.1.0.1 (Base Release)
    •11.2.0.3 (Server Patch Set)
    •11.2.0.2 Patch 22 on Windows Platforms
    Bug 9942454 - DBMS_SPM.LOAD_PLANS_FROM_SQLSET gets XML parsing error (Doc ID 9942454.8)
    Affects:
    Product (Component) Oracle Server (Rdbms)
    Range of versions believed to be affected Versions BELOW 12.1
    Versions confirmed as being affected
    •11.2.0.2
    •11.2.0.1
    •11.1.0.7
    Platforms affected Generic (all / most platforms affected)
    Fixed:
    •12.1.0.1 (Base Release)
    •11.2.0.3 (Server Patch Set)
    Bug 12732879 - Execution Plan of Query with non-peeked binds is not reproducible (Doc ID 12732879.8)
    Affects:
    Product (Component) Oracle Server (Rdbms)
    Range of versions believed to be affected Versions >= 9.2 but BELOW 12.1
    Versions confirmed as being affected
    •11.2.0.3
    •11.2.0.2
    •11.1.0.7
    Platforms affected Generic (all / most platforms affected)
    Fixed:
    •12.1.0.1 (Base Release)
    •11.2.0.4 (Future Patch Set)
    Bug 11687175 - High DFS lock handle waits in the database with SPM if FIXED_DATE is set (Doc ID 11687175.8)
    Affects:
    Product (Component) Oracle Server (Rdbms)
    Range of versions believed to be affected Versions >= 11 but BELOW 12.1
    Versions confirmed as being affected
    11.2.0.2
    11.2.0.1
    11.1.0.7
    11.1.0.6
    Platforms affected Generic (all / most platforms affected)
    Fixed:
    12.1.0.1 (Base Release)
    11.2.0.3 (Server Patch Set)
    Bug 13384234  ORA-29981 with select query with database Change notification
    Affects:
    Product (Component) Oracle Server (Rdbms)
    Range of versions believed to be affected Versions BELOW 12.1
    Versions confirmed as being affected
    11.2.0.2
    Platforms affected Generic (all / most platforms affected)
    Fixed:
    11.2.0.4 (Future Patch Set)
    Thanks so much.

    See these MOS Docs
    11.2.0.2 Patch Set - Availability and Known Issues (Doc ID 1179474.1)
    Important Changes to Oracle Database Patch Sets Starting With 11.2.0.2 (Doc ID 1189783.1)
    HTH
    Srini

  • Database Locks not working

    Hello!
    I am having some problems with the Berkley DB XML Locking System. My database is configured as follows:
         _envConfig = new EnvironmentConfig();
         _envConfig.setRunFatalRecovery(doFatalRecovery);
         _envConfig.setRunRecovery(!doFatalRecovery);
         _envConfig.setVerboseRecovery(true);
         _envConfig.setAllowCreate(true);         
         _envConfig.setCacheCount(1);
         envConfig.setCacheSize(DBCACHE_SIZE * 1024 * 1024);
         _envConfig.setInitializeCache(true);            
         _envConfig.setTransactional(true); 
         envConfig.setMaxLocks(MAXLOCKS);
         envConfig.setMaxLockers(MAXLOCKERS);
         envConfig.setMaxLockObjects(MAXLOCKOBJECTS);
         // enable locking
         _envConfig.setInitializeLocking(true);
         _envConfig.setLockTimeout(50000000);
         logInfo("Database locking enabled.");
         // Configure db to perform deadlock detection internally, and to
    // choose the transaction that has performed the least amount
    // of writing to break the deadlock in the event that one
    // is detected.
    _envConfig.setLockDetectMode(LockDetectMode.MINWRITE);
    Then I try to modify one object in my first thread:
    xmlTransaction = xmlManager.createTransaction();               
                   xmlContainer = xmlManager.openContainer( xmlTransaction, _collection);
                   context = xmlManager.createQueryContext(XmlQueryContext.LiveValues, XmlQueryContext.Eager);               
                   // Declare the read/modify/write cycle
              XmlDocumentConfig docConfig = new XmlDocumentConfig();
              docConfig.setLockMode(com.sleepycat.db.LockMode.RMW);
                   XmlQueryExpression xmlQueryExprDocs = _xmlManager.prepare( xmlTransaction, sQuery, xmlQueryContext);
         results = xmlQueryExprDocs.execute( xmlTransaction, _context, docConfig);            
         xmlQueryExprDocs.delete();     
         // document(s) found - create modify, update objects
         * Iterate over _result documents
         while (_results.hasNext()) {
                        modify = xmlManager.createModify();
                        updateContext = xmlManager.createUpdateContext();               
              docValue = _results.next();                  
              xmlDoc = docValue.asDocument();
              numMod = modify.execute(xmlTransaction, docValue, context, updateContext);                    
    In my second thread I try to read the same object:
    xmlTransaction = _xmlManager.createTransaction(null, cfg);     
    XmlContainer xmlContainer = getXmlManager().openContainer(xmlTransaction, sContainer, contConfig);
    context = _xmlManager.createQueryContext(XmlQueryContext.DeadValues, XmlQueryContext.Eager);             
    xmlQueryExpr = _xmlManager.prepare( xmlTransaction, sQuery, xmlQueryContext);
         results = xmlQueryExpr.execute( context);
    And then instead of waiting on the first object to unlock the database just logs:
    Transaction that opened the DB handle is still active
    I just want the db to wait until the modify is ready and then do the query in the second thread.
    What am I doing wrong?
    Thanks for your help!
    Edited by: user11285545 on 19.06.2009 04:18

    Hello,
    I think you want to post this to the [Db XML forum|http://forums.oracle.com/forums/forum.jspa?forumID=274] instead of the BDB JE forum.
    Charles Lamb

  • How to secure oracle database

    how to secure oracle database,
    I am having the oracle database which will be packed as package in a machine and will be delivered to client place , need to ensure that the client will not access the database by any means.
    Even he breaks the password (he should not break but despite client has broken the password) and went inside the database, he should not be able to see the databases Procedures ,views,functions and triggers.
    Can we Encrypt this,if so can client will be able to decrypt the same?
    Is there a way to secure the database from the client not to access the database.
    Thanks!

    933663 wrote:
    so how can i secure when there is an option to unwrap ,then there is no use in using the wrap right?Yes, because when there is a lock there is a key, when there is wrap there is unwrap, when there is encrypt there is decrypt. We can not be rest assure for hack the code. I think you should think and explore above security options which are provided by Oracle itself which have lock and key by Oracle itself; which i have mentioned in my previous post.
    You just think that if that is that much easy and cheap, then why Oracle have developed above options/features by expending many dollors..!!!
    Regards
    Girish Sharma

Maybe you are looking for

  • Using xmlgen in a trigger -HELP

    We are trying to use xmlgen in a trigger, actually a insteadOf on a view but that is really secondary. The problem we have is that xmlgen doesnt seem to work from a trigger or any other background process. There is no reall erro messgae it just fails

  • Error creating new portal from docs

    Hello, I've been trying for several days now to create a new Portal from the "Customizing Portals and Portlets" document (http://e-docs.bea.com/wlp/docs40/portal/devbasic.htm). I get all the way to "Verify Your Deployment" without issue. I can even v

  • 6-month old Mac Pro has already had a new logic board and power supply

    At a cost of $400 in shipping and a one-month wait, my 5-month old Mac Pro got a new power supply and logic board Now I keep getting kernel panics, runaway kernel_task in Activity Monitor, and corrupted boot drives External Firewire drives work some

  • SMS Permission Ask First Time not offered

    I am writing a MIDP-2.0 Midlet that sends a sequence of multiple SMS messages. I require the application to ask permission only once. Is this possible. On the phone (Nokia N80) it asks every time. The Suite Settings only offer Deny or Ask Every Time.

  • Nomad zen extra h

    while listening to my player last night it froze and wouldn't shut off. its been in rescue mode every since. and i dont know what to do.