Rollback per transaction issue

hi
i found in our live database Rollback per transaction: 92.86% how i can troubleshoot this value and what is the rezone and how i can solve it

Hi,
this is more likely to be an application issue, not a database one. I heard of webservers that do a rollback after each query (!), maybe it's one of them, or a similar error in the application design. I have also once come across a case when there was a great number of fake commits on the system (so called "readonly commits") which were caused by an internal Oracle bug. The problem was resolved by applying a patch -- so you may want to check MOS articles for similar symptoms.
Best regards,
Nikolay

Similar Messages

  • Statspack Rollback per transaction % vs Log Miner rollback = 1

    Hi,
    I'm investigating high Rollback per transaction % = 30% in our 9.2.0.8 EE databse .
    First think was checking all archive logs from period equal to statspack snapshot range
    but looks like there is huge discrepancy between that two tools .
    What I've found from v$logmnr_contents where rollback = 1 was that
    only 0,5% transactions was rollbacked .
    I'm wondering what could cause such difference is that true
    unique constraint violation (or other exceptions) is not recorded in redologs as rollbacked transaction ?
    Any ideas ?
    Major problem is still what is causing high rollback % .
    Regards
    G

    I'm investigating increase in undo usage and Rollback per transaction % = 30 .
    Strange issue because v$transacion is not showing demanding transacions , rather small quick (oltp system).
    Here is sp report:
    DB Name     DB Id  Instance   Inst Num Release   Cluster Host
    XXXX     1497360911 XXXXX        1 9.2.0.8.0  NO   XXXXX
           Snap Id   Snap Time   Sessions Curs/Sess Comment
    Begin Snap:   89346 23-Sep-09 08:00:02   638   13.0
    End Snap:   89365 23-Sep-09 20:00:05   710   19.1
      Elapsed:       720.05 (mins)
    Cache Sizes (end)
    ~~~~~~~~~~~~~~~~~
            Buffer Cache:   3,072M   Std Block Size:     8K
          Shared Pool Size:   2,048M     Log Buffer:   2,000K
    Load Profile
    ~~~~~~~~~~~~              Per Second    Per Transaction
             Redo size:      344,858.21       6,796.87
           Logical reads:      131,932.52       2,600.28
           Block changes:       2,211.70         43.59
           Physical reads:       7,457.34        146.98
          Physical writes:        236.52         4.66
             User calls:       6,197.31        122.14
               Parses:       2,236.26         44.07
            Hard parses:         20.63         0.41
               Sorts:        330.72         6.52
               Logons:         0.34         0.01
              Executes:       3,097.97         61.06
            Transactions:         50.74
    % Blocks changed per Read:  1.68  Recursive Call %:   35.95
    Rollback per transaction %:  30.58    Rows per Sort:   31.38
    Instance Efficiency Percentages (Target 100%)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          Buffer Nowait %:  99.97    Redo NoWait %:  100.00
          Buffer Hit  %:  94.37  In-memory Sort %:  100.00
          Library Hit  %:  99.63    Soft Parse %:   99.08
         Execute to Parse %:  27.82     Latch Hit %:   99.83
    Parse CPU to Parse Elapsd %:  30.18   % Non-Parse CPU:   95.65
    Shared Pool Statistics    Begin  End
           Memory Usage %: 100.00 100.00
      % SQL with executions>1:  38.24  35.74
    % Memory for SQL w/exec>1:  76.94  86.29
    Top 5 Timed Events
    ~~~~~~~~~~~~~~~~~~                           % Total
    Event                        Waits  Time (s) Ela Time
    CPU time                           109,020  32.54
    db file sequential read            40,144,341   96,883  28.91
    db file scattered read             26,524,497   66,948  19.98
    sbtwrite2                    4,141,351   23,994   7.16
    SQL*Net message from dblink          33,497,630   17,097   5.10
         -------------------------------------------------------------

  • Rollback per transaction too high

    Hi, I am investigating performance problems on our database which is used by a third party application.
    Using the stats' pack I have established that the
    Rollback per transaction % is very high (between 60-70%).
    I am on version 8.17 or Oracle, the application is written in powerbuilder. And it users lots of sessions per user.
    A typical user users 5-7 sessions .
    How can i find what is causing all this rollback?
    could it be related to all these sessions ?

    Hi,
    The Rollback Per Transaction statistic will report on all statements that were rolled back, regardless of whether there is anything to rollback or not.
    You can see more information about statspack report into metlink note 228913.1 - Systemwide Tuning using STATSPACK Reports
    Nicolas.

  • High Rollback Per Cent in SAP

    I have been reviewing Oracle Statspack reports generated in our SAP R/3 database and one of the statistics that jumped out at me is a very high Rollback per Transaction percent of over 45%.  I support other non-SAP Oracle databases and have never seen anything like this.  I am somewhat new to SAP and realize this might be normal (??), but this leads me to be concerned about what is happening in the environment.  My question is..... Is this normal in an SAP Oracle database and if so why? Or is this truely a problem that needs serious further analysis? 
    We are running Oracle 9.2.0.5 on a 16-way Sun server.  The Oracle load profile looks something like this: 
    Logical Reads (100,000/s)
    Physical Reads (2,100/s)
    Physical Writes (550/s)
    Transactions (100/s) 
    RollBack per Transaction % (45%)

    You should not run statspack if using SAP.
    your statistics should be calculated using:
    brconnect -c -u / -f stats
    as for 45% rollback, I cannot really answer.

  • Can I use multiple Apple store gift cards per transaction or is it has to be one gift card per transaction?

    Can I use multiple Apple store gift cards (£25 each) per transaction or is it has to be only one gift card per transaction?? Does anyone know thanks

    Hola, Eddy
    notice that you have posted to an old thread (Oct-Nov2013) that actually took quite some time to get attention back then**
    I recommend that you contact the Store Group regarding your purchase question - don't let the "iTune-ish" URL and page title throw you off... it's the right place
    Store Group - Contact Us - Apple Support
    ** next time you have a question, I advise to check the dates carefully and if older than a month or so, AND it has no answer to your specific issue, start a NEW Question. You did a fine job of stating your exact issue - many folks, not so much.
    buenos dias
    CCC

  • Rollback a transaction in a session bean BMP?

    The following code would work correctly if executed in a stateless session bean BMP?
    InitialContext ic = new InitialContext();
    javax.sql.DataSource dataSource = (javax.sql.DataSource) ic.lookup("java:comp/env/jdbc/OracleDS");
    Connection conn = dataSource.getConnection();     
    conn.setAutoCommit(false);
    Statement stmt = conn.createStatement("UPDATE TABLE_A SET NAME = 'Duke' WHERE ID = 7");
    stmt.executeUpdate();
    if (someCondition) {
    conn.commit();
    } else {
    conn.rollback();
    My question:
    It�s possible to rollback a transaction using rollback() from Connection class in a stateless
    session bean BMP?

    Dear JDC member:
    With EJB, you can gain the benefit of transactions without performing any transaction programming. That is, your enterprise beans never explicitly issue a begin, commit, or abort statement. The container performs it to you. But you have to tell the container how to do it. As you might know, the deploment descriptor is the place for it.
    But nothing prevent you to do do programmatic transaction as you want.. For that case you have to know JTA (Java Transaction API) and more.
    Suppose the transaction aborts, you have to throw an exception back to the client or try it again. The issue here is with stateless sesssion beans, there is no in-memory conversational state. You might think to implement javax.ejb.SessionSynchronization interface with your business methods....
    You see there is a lot to know. You can take care of transactions in the client code, but it is a bad design.
    You have to understand today most application servers (Websphere, Weblogic...) are designed to minimize those issues in order to make developers' tasks easier. The container takes care of transactions.
    Be careful when you write stateless session beans BMP (BMP are for entiti beans)
    Regards,
    Armand Komenan

  • Chatty replication protocol (2.6 messages per transaction): bad settings?

    Hi,
    I'm trying to determine why for a two-site replication setup (Linux, BDB 4.6.21 with the latest patch) it seems like a single transaction can take up to 100 ms to be replicated under heavy load when the non-replicated transaction takes 5 ms.
    The transaction in question is a fully-synchronized update (ie: a commit at site R1 should not return until R2 has also committed and flushed the transaction to disk), and there are only two sites in the replication group, the master and the replica.
    Here are the statistics I gathered from my application, at the replica after it was promoted to the master (the master having been killed):
    Replication: txnsApplied=3584, repMsgsProcessed=9390, repMsgsSent=17, repMsgsSendFailures=4, nextLSN=1/1162804, nextPages=0, pagesRecords=6, pagesRequested=0, status=3, waitingLSN=0/0, waitingPages=0
    Replication Manager: connectionAttemptsFailed=0, connectionsDropped=1, repMessagesDropped=0, repMessagesQueued=0, permFailed=4
    It seems like the replication protocol is quite chatty (2.6 messages per transaction), which may explain some of the latency.
    I use 2048-byte pages, and the typical transaction size is no more than 1024 bytes; I experimented with relaxing the transactional guarantees (setTxnNoSync et al) but had a similar experience.
    Does anyone have any suggestions for this environment configuration to increase the throughput of this kind of replication setup? Your help would be kindly appreciated.

    Replication: txnsApplied=3584, repMsgsProcessed=9390,
    repMsgsSent=17, repMsgsSendFailures=4,
    nextLSN=1/1162804, nextPages=0, pagesRecords=6,
    pagesRequested=0, status=3, waitingLSN=0/0,
    waitingPages=0
    Replication Manager: connectionAttemptsFailed=0,
    connectionsDropped=1, repMessagesDropped=0,
    repMessagesQueued=0, permFailed=4
    It seems like the replication protocol is quite
    chatty (2.6 messages per transaction), which may
    explain some of the latency.The replication protocol is that each log record written to the
    log is also transmitted to the client. Therefore, if your transaction
    has a lot of operations, or if even a single update results in several
    log records written (splitting a page, for example), each of those
    log records will be transmitted to the client.
    Does anyone have any suggestions for this environment
    configuration to increase the throughput of this kind
    of replication setup? Your help would be kindly
    appreciated.You can try the bulk message configuration option. Look at
    the dbenv->rep_set_config method with the DB_REP_CONF_BULK
    flag. That option collects the log records locally in memory and
    then sends them all either on a txn_commit operation or if the
    buffer fills up. That should result in fewer messages.
    However, it is also interesting that there were 4 message send failures
    as well as 4 permFailed counts in your statistics. It is likely whatever
    caused those resulted in some messages to rerequest the missing
    records.
    Sue LoVerso
    Oracle

  • Purchasing Document Output - Transaction issue Purchas Order

    Hello colleges
    we want to use Transaction issue Purchas Order for output PO ,
    we find that we cant preview PO from this Transaction before printing  and all so we can not have the possibility to  print some POu2019S  when we print use the output manually.
    Can some one help ??
    Is there possibility to mark several POu2019S and print them whit one push button ??
    Can we have the possibility to preview PO data before print it? We need your advise u2026  
    Best regards
    Gil Shinar

    Hello ,
    1.For the first question of printing multiple PO's at the same time you can use the report RSPPFPROCESS using SE38 transaction. You have the possibility of defining the PO number range that you want to output in one Go.
    2. There is no possibility to preview and print in 'Issue Purchase Order' transaction. You can achieve the same  only in 'Process Purchase Order' (BBP_POC) transaction .
    Best Regards,
    Sapna

  • Document types per transaction

    Hi Experts,
    How to know which document types are determined per transaction?
    Ex: what document type can be defaulted for the transactions like FB60 / FB65 etc.
    Please indicate the config area.
    warm regards
    marias

    Check the SPRO node under below path:
    Financial Accounting (New)>Accounts Receivable and Accounts Payable>Business Transactions>Incoming Invoices/Credit Memos>Incoming Invoices/Credit Memos - Enjoy>Define Document Types for Enjoy Transaction
    Regards
    Sreenivas

  • How can I rollback a transaction using EJBContext.rollbackOnly()?

    I failed to rollback a "required" method of a seesion bean using EJBContext.rollbackOnly() , but it rollbacked if I throw EJBException , how can I rollback a transaction by
    EJBContext.rollbackOnly() ? Thanks for your help.
    regards,
    dean

    The full and partial updates (whether it be Thunderbird, Firefox or SeaMonkey) from mozilla.org are only provided to the official builds and not builds built yourself or by a third-party.
    The openSUSE and other Linux distro provided builds have their own ways of package updates in their package manager.
    However if the poster is using Thunderbird for Linux from http://www.mozilla.org/en-US/thunderbird/ (64-bit Linux is on ftp) then those preferences would be valid and work.
    Nothing is being gutted as it has been this way since forever with third-party builds whether on Windows, Mac OSX and Linux.

  • Monitor/trace per transaction performance stats

    Is it possible to trace stats like cpu time and num of IOs for each committed transaction and log them one row per transaction? Thanks, Stan

    Yes it is possible through statspack which give you all other performance related information. But it is also very resource consuming job. so be carefull while using it.

  • Get IllegalStateException when rollback client transaction while thansaction is already rollbacked by Container

    Hi,
              I use WL5.1.0 + SP8. When I start a client-demarcated transaction and
              call two methods in EJB, the second method will throw a system level
              exception (such as RemoteException), the container rollback the
              transaction so that when I catch the exception in client and try to
              rollback by myself, I got an IllegalStateException: There is no
              transaction associated with this thread.
              In SP8, I thought they fixed this problem and the container is supposed
              to mark the transaction rollbacked and throw
              TransactionRolledbackException to client instead of rollback this
              transaction.. But obviously it still doesn't work in SP8.
              Is this still a bug or am I missing something?
              Thanks a lot!
              Tao
              

    Hi,
              I use WL5.1.0 + SP8. When I start a client-demarcated transaction and
              call two methods in EJB, the second method will throw a system level
              exception (such as RemoteException), the container rollback the
              transaction so that when I catch the exception in client and try to
              rollback by myself, I got an IllegalStateException: There is no
              transaction associated with this thread.
              In SP8, I thought they fixed this problem and the container is supposed
              to mark the transaction rollbacked and throw
              TransactionRolledbackException to client instead of rollback this
              transaction.. But obviously it still doesn't work in SP8.
              Is this still a bug or am I missing something?
              Thanks a lot!
              Tao
              

  • Rollback on transaction failes

    Hi,
    I have got a problem when I try to rollback a transaction using a JDBC driver, but I don't understand why. Maybe someone can help me.
    My problem is as follows:
    on a connection with AutoCommit set to true, I define some INSERT actions on a certain table. Hereafter I do a commitTransaction(). This generates a SQLException, which I catch. In this catch I do a connection.rollback(). This results in the following error:
    [SQLServer JDBC Driver]Not in local manual transaction mode
    Does anyone know what this means and what causes this?
    Regards,
    Onno Kievit

    Hi Onno,
    If you have enabled "auto commit", then you cannot call methods like "commit()" or "rollback()". After you have executed your INSERT, a "commit" automatically happens -- if the INSERT succeeds -- or a "rollback" automatically happens (if the INSERT fails). You are calling the "commit()" method when there is no open transaction -- which is wrong and therefore you get an error (SQLException).
    Same problem occurs when you catch the error caused by your "commit" and try to "rollback" -- you cannot "rollback" when there is no open transaction.
    As I see it, you have two choices:
    1. disable auto commit, or
    2. remove the calls to "commit()" and "rollback()"
    Hope this helps you.
    Good Luck,
    Avi.

  • -setFence:count: called more than once per transaction

    I am getting following error, any body have any idea what it is?
    -setFence:count: called more than once per transaction
    Debugger stopped.
    Program exited with status value:101.
    Thanks in Advance
    Ravi

    I am getting the same error...
    T'is usly a m'ry error.
    Use the debugging/testing tools in the latest Xcode to track down suspects, etc.

  • Difference between Transaction.rollback() and Transaction.setRollBackOnly()

    Hi,
    I wanted to know the difference between what typical implementations of Transaction.rollback() and Transaction.setRollbackOnly().
    I have used setRollbackOnly()? in distributed transaction scenarios. How is it different from rollback()?
    Thanks
    Shailesh

    I would really recommend posting this question in a forum where somebody might understand what you are talking about. This is the XML forum.

Maybe you are looking for