DDL - locking problem

I am using Oracle 9i database on Windows 2000 server. I am facing extreme difficulty in running DDL commands, when trying to alter tables.
A form is using a table xyz, and i have opened the form in developer 6i, then made some cosmetic changes and then saved and closed the fmb file.
Now when I am trying to add a column in the same table, it goes into a hang. If I exit forms builder (i.e. disconnect from the connection which had once used that table), the DDL quickly executes. Similar is the problem when trying to drop/create/alter triggers.
I am unable to figure out why Oracle has locked the object which was being referred in the form. I am facing severe problems at the customer site, when we make modifications to the production database, and when trying to replicate the schema changes in the live database, all the users have to be logged out (including exiting the report background engine!!) for the DDL execution to take place.
In case somebody has faced this problem, or if aware of the cause/remedy, pls reply.
Thanks in advance

I think it is a privilege issue. I can run that statement without problems when I connect with near dba permissions on 9iR2 and 10gXE, but it gives the same error when I execute under a normal user.

Similar Messages

  • Locking problem in VL02N at the time Post Goods issue

    Hi,
    We have implemented 2 BADIs to change qty in delivery and in subsequent documents. Once we receive an IDoc with batches, then we need to change subitems qty according to no of batches.
    Once IDoc has updated, then PGI will do automatically.
    1. LE_SHP_DELIVERY_PROC     - Change qty in delivery (Method SAVE_DOCUMENT_PREPARE)
    2. LE_SHP_GOODSMOVEMENT - Change qty in material document.
    Now, we have a locking problem at the time of posting.
    Please let us know, due to these BADI implementation this problem or any other cause? And provide required to solve this problem.

    hi ,
    do i need to do step 2....?
    i dont think u need step2 ( change qty of MBLNR),bcos ,
    say ur Del.qty is 100, now u want to do del. of 50, then just u will change its qty & do PGI ? so whats the need of changing MBLNR.
    while doing PGI , program will take changed qty of del. only ?
    let me know if i'm wrong.
    regards
    Prabhu

  • Forms 6i : Ole Container : Locking problem

    We have a form in which user can attach all sorts of documents that are then saved in the database.
    Once in a while we have a locking problem; when 2 users try to open the same document, the second one first gets a 'Could not reserve record (2 tries). Keep trying?'. When clicking 'No', the next error message is 'Frm-40501 : unable to reserve record for update or delete', and the form cannot be used anymore. He keeps complaining about the reserved record.
    I've been looking into this problem but cannot seem to find a lot of help.
    Does anyone have an idea how to solve this locking problem?
    I have tried the following things:
    * setting the block to locking mode 'Delayed' => we ended up having duplicate records.
    * Changing properties of the ole-container (In Place Activation, Inside Out support, ...).
    Forms version is 6.0.8.13.0, database 8.0.6.0.0.
    Any help is appreciated.

    that seems to be a normal locking problem. Do you have tried to work with an ON-LOCK trigger ? (e.g. first to see, when locking will occur, second for implementing an own locking-behaviour, maybe with a SELECT for UPDATE)
    Or do you think, that there is something special with your OLE-programming ?
    Gerd

  • Lock Problem while Broadcasting multiple reports using process chains

    Hi All,
    I am trying to broadcast 10 reports using the process chains using the program for RSRD_START and variants created in the Broadcaster..the Program jobs start fine.But I am facing the error that the RSRA_CA_LOG table is getting locked while trying to broadcast the Reports..Can any help me on how to run the jobs without the locking problem..Suggestions please.
    Thanks,
    Mike.

    Hi,
    Thanks for the Inputs and the SAP Notes.
    I am trying to broadcast the Reports from the the Bex Analyer and getting this ock error and not the workbooks.
    I am also trying to Broadcast the Workbooks also, but could not find the options to Broadcast them. we are in SAP -BW3.5 SP 12, Is it possible to broadcast the workbooks in this Patch level..or do we need to upgrade to achieve this.If so...can any one provide me the proceedure to  Broadcast the Workbooks.
    Thanks,
    Mike.

  • How can I find out which tables are having DDL locks?

    I can see related information by querying DBA_DDL_LOCKS view, but it doesn't give me the information which tables are having DDL locks.
    Is there a way I can find out which tables are having DDL locks?
    Thanks!

    Here's a long script written back in 2001. Still works:
    BREAK on sid on serial# on username
    COL sid        for 9999
    COL serial#    for 99999
    COL username   for a20
    COL type       for a20    trunc
    COL lmode      for a5     trunc
    COL lrequest   for a4     trunc
    COL detail     for a75    trunc
    SELECT   s.sid
           , s.serial#
           , s.username
           , DECODE(
                  l.TYPE
                -- Long locks
                , 'TM', 'dml/data enq (TM)'
                , 'TX', 'transac enq (TX) '
                , 'UL', 'pls usr lock (UL)'
                -- Short locks
                , 'BL', 'buf hash tbl (BL)'
                , 'CF', 'control file (CF)'
                , 'CI', 'cross inst f (CI)'
                , 'CU', 'cursor bind (CU) '
                , 'DF', 'data file (CF)   '
                , 'DL', 'direct load (DL) '
                , 'DM', 'mount/strtup (DM)'
                , 'DR', 'reco lock (DR)   '
                , 'DX', 'distrib tran (DX)'
                , 'FI', 'sga opn file (FI)'
                , 'FS', 'file set (FS)    '
                , 'IN', 'instance num (IN)'
                , 'IR', 'instce recvr (IR)'
                , 'IS', 'get state (IS)   '
                , 'IV', 'libcache inv (IV)'
                , 'JQ', 'job queue (JQ)   '
                , 'KK', 'log sw kick (KK) '
                , 'LS', 'log switch (LS)  '
                , 'MM', 'mount def (MM)   '
                , 'MR', 'media recvry (MR)'
                , 'PF', 'pwfile enq (PF)  '
                , 'PR', 'process strt (PR)'
                , 'RW', 'row wait (RW)    '
                , 'RT', 'redo thread (RT) '
                , 'SC', 'scn enq (SC)     '
                , 'SM', 'smon lock (SM)   '
                , 'SN', 'seqno instce (SN)'
                , 'SQ', 'seqno enq (SQ)   '
                , 'ST', 'space transc (ST)'
                , 'SV', 'seqno value (SV) '
                , 'TA', 'generic enq (TA) '
                , 'TD', 'dll enq (TD)     '
                , 'TE', 'extend seg (TE)  '
                , 'TS', 'temp segment (TS)'
                , 'TT', 'temp table (TT)  '
                , 'UN', 'user name (UN)   '
                , 'WL', 'write redo (WL)  '
                , 'TYPE = ' || l.TYPE) AS type
           , DECODE(l.lmode, 0, 'none', 1, 'null', 2, 'RS', 3, 'RX', 4, 'S', 5, 'SRX', 6, 'X', TO_CHAR(l.lmode)) A
    S lmode
           , DECODE(l.request, 0, 'none', 1, 'null', 2, 'RS', 3, 'RX', 4, 'S', 5, 'SRX', 6, 'X', TO_CHAR(l.request
    )) AS lrequest
           , DECODE(
                  l.TYPE
                , 'JQ', 'Job #' || j.job || ' (' || j.what || ') owned by: ' || j.username
                , 'MR', DECODE(s.user_type, 'BG', 'DICTIONARY OBJECT', LOWER(obj.owner) || '.' || LOWER(obj.name))
    || ' (' || LOWER(obj.TYPE) || ')'
                , 'RT', 'thread #' || LOWER(l.id1)
                , 'RW', 'file#' || LOWER(SUBSTR(l.id1, 1, 3)) || ', block#' || LOWER(SUBSTR(l.id1, 4, 5)) || ', ro
    w#' || LOWER(l.id2)
                , 'TD', 'object: ' || LOWER(obj.owner) || '.' || LOWER(obj.name) || ' (' || LOWER(obj.TYPE) || ')'
                , 'TM', 'object: ' || LOWER(obj.owner) || '.' || LOWER(obj.name) || ' (' || LOWER(obj.TYPE) || ')'
                , 'TS', DECODE(l.id2, 0, 'enqueue', 'new block allocation')
                , 'TX', DECODE(
                             lo.object_name
                           , NULL, 'rbs #' || TRUNC(l.id1 / 65536) || ', slot #' || LOWER(l.id1)
                           , 'rbs #' || TRUNC(l.id1 / 65536) || ', slot #' || LOWER(l.id1) || ', object: ' || LOWE
    R(lo.object_name))
                , 'UL', 'lock name: ' || la.name || ', expiration date: ' || TO_CHAR(la.expiration, 'DD-MON-RR HH2
    4:MI:SS')
                , 'WL', 'redo log file#' || LOWER(l.id1)
                , 'id1 = ' || l.id1 || ', id2 = ' || l.id2) AS detail
        FROM sys.v_$lock l
           , (SELECT a.sid
                   , a.serial#
                   , NVL(a.username, 'SYS (' || LOWER(b.name) || ')') AS username
                   , DECODE(a.username, NULL, 'BG', 'USER') AS user_type
                FROM sys.v_$session a
                   , sys.v_$bgprocess b
               WHERE a.paddr = b.paddr(+)) s
           , (SELECT o.obj#
                   , u.name AS owner
                   , o.name
                   , DECODE(
                          o.type#
                        , 0, 'NEXT OBJECT'
                        , 1, 'INDEX'
                        , 2, 'TABLE'
                        , 3, 'CLUSTER'
                        , 4, 'VIEW'
                        , 5, 'SYNONYM'
                        , 6, 'SEQUENCE'
                        , 7, 'PROCEDURE'
                        , 8, 'FUNCTION'
                        , 9, 'PACKAGE'
                        , 11, 'PACKAGE BODY'
                        , 12, 'TRIGGER'
                        , 13, 'TYPE'
                        , 14, 'TYPE BODY'
                        , 19, 'TABLE PARTITION'
                        , 20, 'INDEX PARTITION'
                        , 22, 'LIBRARY'
                        , 23, 'DIRECTORY'
                        , 24, 'QUEUE'
                        , 28, 'JAVA SOURCE'
                        , 29, 'JAVA CLASS'
                        , 30, 'JAVA RESOURCE'
                        , 32, 'INDEXTYPE'
                        , 33, 'OPERATOR'
                        , 34, 'TABLE SUBPARTITION'
                        , 35, 'INDEX SUBPARTITION'
                        , 39, 'LOB PARTITION'
                        , 40, 'LOB SUBPARTITION'
                        , 43, 'DIMENSION'
                        , 44, 'CONTEXT'
                        , 47, 'RESOURCE PLAN'
                        , 48, 'CONSUMER GROUP'
                        , 51, 'SUBSCRIPTION'
                        , 52, 'LOCATION'
                        , 'UNDEFINED') AS type
                FROM sys.obj$ o
                   , sys.user$ u
               WHERE o.owner# = u.user#) obj
           , (SELECT vlo.xidusn
                   , vlo.xidslot
                   , vlo.xidsqn
                   , vlo.process
                   , o.owner || '.' || o.object_name AS object_name
                FROM sys.v_$locked_object vlo
                   , sys.dba_objects o
               WHERE vlo.object_id = o.object_id) lo
           , (SELECT job
                   , schema_user AS username
                   , what
                FROM dba_jobs) j
           , sys.dbms_lock_allocated la
       WHERE l.sid = s.sid
         AND l.id1 = obj.obj#(+)
         AND l.id2 = j.job(+)
         AND TRUNC(l.id1 / 65536) = lo.xidusn(+)
         AND LOWER(l.id1) = lo.xidslot(+)
         AND l.id2 = lo.xidsqn(+)
         AND l.id1 = la.lockid(+)
         AND l.TYPE != 'MR'
    UNION ALL
                      /*** LATCH HOLDERS ***/
    SELECT   s.sid
           , s.serial#
           , s.username
           , 'latch'
           , 'X'
           , 'none'
           , h.name || ' addr=' || LOWER(RAWTOHEX(laddr)) AS object
        FROM sys.v_$process p
           , sys.v_$session s
           , sys.v_$latchholder h
       WHERE h.pid = p.pid
         AND p.addr = s.paddr
    UNION ALL
                      /*** LATCH WAITERS ***/
    SELECT   s.sid
           , s.serial#
           , s.username
           , 'latch'
           , 'none'
           , 'X'
           , name || ' latch=' || p.latchwait AS object
        FROM sys.v_$session s
           , sys.v_$process p
           , sys.v_$latch l
       WHERE latchwait IS NOT NULL
         AND p.addr = s.paddr
         AND p.latchwait = l.addr
    ORDER BY sid
           , serial#
           , username
           , 4
           , 5
           , 6
           , 7;

  • How to query DDL locks on stored procedures/functions and packages?

    Hi!
    The subject says it all: How do I see existing DDL locks on stored procedures/functions and packages?
    While a procedure is executed it can't be deleted or replaced, so there has to be a DDL lock on it. The information does not seem to be in V$LOCK or V$LOCKED_OBJECTS.
    Thanks!
    Marcus
    Edited by: MMarcus on Nov 21, 2009 3:43 PM

    Hello,
    Here you can find an article about the view DBA_DDL_LOCKS:
    [http://www.praetoriate.com/int_40.htm]
    If you don't have this view on the Data Dictionary, you may have
    to execute the "OH/rdbms/admin/catblock.sql" script first.
    Hope it can help.
    Best regards,
    Jean-Valentin

  • How to set DDL lock for a table

    OCI,how to set DDL lock for a table?

    Oracle acquires a dictionary lock automatically on behalf of any DDL transaction requiring it. Users cannot explicitly request DDL locks. Only individual schema objects that are modified or referenced are locked during DDL operations. The whole data dictionary is never locked
    DDL locks fall into three categories: exclusive DDL locks, share DDL locks, and breakable parse locks.
    see this link
    http://www.sc.ehu.es/siwebso/KZCC/Oracle_10g_Documentacion/server.101/b10743/consist.htm#i5281

  • Activation lock problem!

    Hello,
    I just got a new iPhone 4s from a friend and I can't get into it because of an activation lock problem. I've already tried to restore it in recovery mode but than I still have to log in to his account. Now i've logged in to his iCloud account and deleted the iPhone using the following instructions:
    Sign in to their iCloud account at www.icloud.com/find.
    Click All Devices to open a list of devices linked to their account, then select the device to be removed. It should show a gray dot or the word “Offline” next to the device name.
    Click "Remove from Account" to remove the device from their account.
    But it seems that I have should done the following instructions, because the iPhone wasn't completely erased yet:
    Sign in to their iCloud account at www.icloud.com/find.
    Click All Devices to open a list of devices linked to their account, then select the device to be removed.
    Click the Erase button to erase all content and settings from the device. When prompted, don't enter a phone number or message. Click Next until the device is erased.
    When the erase is complete, click "Remove from Account" to remove the device from the account.
    The problem is that it's too late for that now, because I already deleted the iPhone from his iCloud... Please help me out here, what can I do to still erase it from iCloud?!
    Greets

    Were you, by chance, running a beta version of iOS 7 on your phone?
    If so, this will be the problem. You will need to log Into the private developers forum athttps://developer.apple.com/support/ios/
    If you are not a developer, you will need to seek help by way of your favourite search site.

  • JavaScript error and CATW record locking problem

    Hello,
    We're having two problems with ESS (CATW and Personal Information (PZM3)) in EP 6. We have an ITS-R/3 landscape.
    The JavaScript problem appears intermittently within Personal Data services (Address, Emergency Contact, ...). The actual error reads "object required" and originates from ITS. A user may be able to click through all the ESS services once fine, but on a second click receive the error. Sometimes they can't use the services at all.
    The record locking problem happens in Time Sheet (CATW). Even though a user Saves and Releases the Time Sheet, it remains locked and cannot be approved. Alternatively, some users are experiencing locked records when they try to complete their own time sheets.
    I'm not sure if these are related.
    Has anyone here seen these problems? Any suggestions are most welcome!
    Cheers,
    Colleen

    The best way to nail down the javascript error would be to use the firefox JavaScript debugger extension plugin and put the breakpoints where the problem occurs.
    This will exactly tell you which object it is looking for which is not found. Moreover you might be able to find that when it is working fine as you said. So give that a try and I am sure you will be able to figure out the problem.
    To me this mostly looks like at time some .js file is not coming through to the browser... but this is just a wild guess based on the symptoms.

  • Pessimistic lock problem with Sybase

    I am having a problem with performing pessimistic lock
    using Toplink and Sybase/HSQLDB.
    Code example:
    Object o = uow.readObject(...
    uow.refreshAndLock(o);
    //Change o
    uow.commitAndResume();
    ==========================
    I receive an Exception:
    Local Exception Stack:
    Exception [TOPLINK-4002] (OracleAS TopLink - 10g (9.0.4.2) (Build 040311)): oracle.toplink.exceptions.DatabaseException
    Exception Description: java.sql.SQLException: Unexpected token: FOR in statement [SELECT t0.CLASSIDENTIFIER, t0.DB_VERSION, t0.OBJECTID, t1.OBJECTID, t1.NAME, t1.DESCRIPTION, t1.TYPE, t2.OBJECTID, t2.MULTIPLE_SERVERS_POLICY, t2.OUTAGE_POLICY, t2.INCOMING_SCRIPT, t2.OUTGOING_SCRIPT, t2.OUTAGE_SCRIPT FROM ROOT t0, LDAPSERVICE t2, SERVICE t1 WHERE ((t0.OBJECTID = 252) AND (((t2.OBJECTID = t0.OBJECTID) AND (t1.OBJECTID = t0.OBJECTID)) AND (t0.CLASSIDENTIFIER = 'ORM.LdapService'))) [b]FOR UPDATE OF * NOWAIT]
    =================
    As you can see Toplink is trying to execute illegal statement : "....FOR UPDATE OF * NOWAIT"
    Do you have any idea what I'm doing wrong?

    Duplicate posting Pessimistic lock problem with Sybase

  • DDL 작업 시 LOCK 문제 해결 예제

    제품 : ORACLE SERVER
    작성날짜 : 2002-04-09
    DDL 작업 시 LOCK 문제 해결 예제
    ===============================
    DDL lock은 다중 사용자의 DDL command로부터 database의 schema
    object를 보호하기 위하여 사용되는 lock으로 schema object(table,
    procedure,package, view, synonym, trigger, function package body,
    cluster)를 생성하거나 삭제할 때 발생한다.
    간혹 이러한 compile이나 grant작업중 library cache lock(also called
    breakable parse lock)을 점유하지 못하여 작업이 되지 않는 경우가
    발생하게 되는데 이러한 경우 dynamic view 의 DDL lock 정보를 조회하여
    문제 해결을 할 수가 있다. 다음은 lock monitoring view 생성 및 blocking
    lock에 대한 예와 그 해결 방법에 대한 내용이다.
    [Dynamic tables]
    DBA_DDL_LOCKS : database의 모든 DDL lock에 대한 상태 정보
    DBA_LOCK_INTERNAL : library cache lock에 대한 상태 정보
    [Dynamic table 생성]
    sys user(svrmgrl)로 $ORACLE_HOME/rdbms/admin/catblock.sql을 실행
    다음은 procedure에서 수행되는 dml작업에 대한 lock conflict가 이
    procedure에 대한 DDL작업을 방해하는 예이다.
    (마찬가지로 long running query가 수행되고 있는 procedure에 대한 grant,
    compile과 같은 작업이 방해 받는 경우 역시 아래의 방법에 따라 그 원인을
    확인해 볼 수 있다.
    이때의 해결방법은 수행중인 procedure가 종료될 때 까지 기다리거나 kill
    시키는 방법이 있겠다.)
    [Blocking DDL lock 발생]
    session A :
    SQL> create or replace procedure delemp(no IN number) is
    begin
    delete emp where empno = no;
    end;
    SQL> exec delemp(7900);
    (emp table에 대하여 table lock 및 TX lock이 점유된다.)
    session B :
    SQL> exec delemp(7900);
    | <= hangup
    (session A에서 선점된 TX lock이 release될 때까지 waiting 상태를
    갖게 되며 share mode library cache lock이 점유된다.)
    session C :
    SVRMGR> connect internal
    SVRMGR> select session_id, substr(lock_type, 1, 10),
    substr(mode_held, 1, 10),
    substr(mode_requested, 1, 15), substr(lock_id1, 1, 40),
    substr(lock_id2, 1, 10)
    from dba_lock_internal;
    10 Transactio None Exclusive 65538 1904
    10 Table/Proc Share None SCOTT.DELEMP 31FBC1D8
    session D :
    SQL> drop procedure delemp;
    | <= hangup
    session C :
    SQL> select session_id, substr(lock_type, 1, 10), substr(mode_held, 1,
    10),
    substr(mode_requested, 1, 15), substr(lock_id1, 1, 40),
    substr(lock_id2, 1, 10)
    from dba_lock_internal;
    10 Table/Proc Null None SCOTT.DELEMP 31FBC1D8
    10 Table/Proc Share None SCOTT.DELEMP 31FBC1D8
    13 Table/Proc Exclusive None SCOTT.DELEMP 31FBC1D8
    13 Table/Proc None Exclusive SCOTT.DELEMP 31FBC1D8
    SQL> select session_id, substr(name, 1, 15), substr(type, 1, 10),
    substr(mode_held, 1, 15), substr(mode_requested, 1, 15)
    from dba_ddl_locks;
    10 DELEMP Table/Proc Null None
    12 DELEMP Table/Proc Null None
    13 DELEMP Table/Proc Null None
    13 DELEMP Table/Proc Exclusive None
    (session D에 의해 점유된 DDL lock이 dba_ddl_locks에서 확인되나 waiting
    session은 확인이 되지 않고 있으나 DBA_LOCK_INTERNAL에서는 blocking
    lock과 waiting lock이 확인되고 있다.)
    session E:
    SQL> alter procedure delemp compile;
    | <= hangup
    session C :
    9 DELEMP Table/Proc None Exclusive
    13 DELEMP Table/Proc Exclusive None
    (session D에 의해 선점된 DDL lock으로 인해 session E의 DDL lock이
    waiting 상태에 있다.)
    [lock conflict 해결]
    이제까지 dba_lock_internal와 dba_ddl_locks을 조회하여 internal lock 및
    DDL lock에 대하여 확인해 보았다. 이 예의 경우는 개발 작업 시 일어날 수
    있는 상황을 재현해 본 것으로 해결 방법은 선점된 lock을 잡고 있는 session
    을 찾아 lock을 release해주는 것이다.
    이 경우에서의 최선의 해결책은 선점된 DML locking session을 찾아 commit
    이나 rollback을 시키는 것이다.
    다음은 위에서 예로 든 상황에 대한 해결 과정이다.
    SQL> select object_id, object_type
    from dba_objects
    where object_name = 'EMP' and owner = 'SCOTT';
    SQL> select * from v$lock where type in ('TM', 'TX');
    ADDR KADDR SID TY ID1 ID2 LMODE REQUEST CTIME BLOCK
    30199BBC 30199BD0 10 TM 4769 0 3 0 2919 0
    30176508 30176518 10 TX 65580 1908 0 6 2919 0
    10364FE0 103650AC 12 TX 65580 1908 6 0 2946 1
    30199B48 30199B5C 12 TM 4769 0 3 0 2946 0
    조회 결과 object_id에 대하여 TM lock을 잡고 있는 session 중 TX lock을
    선점한 session id가 12인 것을 알 수 있다.
    session 12에서 TX commit을 발행하면 blocking lock이 release되고 DDL
    작업들이 이루어진다.

  • Dead lock problem occur in Ms-Sql Server

    Hi friends,
    I am using the 1,Tomcat server
    2, jdbc-odbc-bridge driver
    In my applicaiton .mutli user access time its throw -deadlock
    exception . How to solve the dead lock problem.. please help it.
    Can i modify the Db connection?
    please help me .... How solve the dead lock problem..
    please ............ its urgent

    I am using this stored procedure to occur dead lock condtion. Orderly insert table values ..
    Imm_tblGameTransactions- Primary Tables
    Imm_tblGameDetailsBJ - Secondary tables
    Please check it.....
    Please explain breifly..... ....
    please.........
    CREATE     procedure IMM_BJDeal 
         @plid int,
         @gameid int,
         @betamt money,
         @bal    money,
         @winamt money,
         @usercards nvarchar(500),
         @dealercards nvarchar(500),
         @useracecnt     int,
         @dealeracecnt   int,
         @dealerbj int,
         @userbj      int,
         @insurance   int,
         @split       int,
         @push        int,
         @sessionid   int, 
         @ltransid    int out
    as
        begin
         declare
                @transdate datetime,
                @linitbal  money,
                @lfinalbal money,
                @errormesg  varchar(50)
           select @linitbal=balance from Imm_players.dbo.Imm_tblPlayerbalance where playerid=@plid
           select @transdate=getdate()
              --set @ldealcards ='['+@dealercard1+','+@dealercard2+']'
              --print  @ldealcards
       if(@userbj=1)
           begin
                  select @lfinalbal= @bal
              begin transaction
                    insert into Imm_tblGameTransactions
                              (playerid,gameid,Initialbalance,transactiondate,betamount,winamount,currencycode,finalbalance,sessionid)
                                      values(@plid,@gameid,@linitbal,@transdate,@betamt,@winamt,'USD',@lfinalbal,@sessionid)
                             IF @@ERROR <> 0
                                  Begin
                                    -- There's an error b/c @ERROR is not 0, rollback
                                         ROLLBACK
                                       return
                                  End
                    select @ltransid=@@identity from Imm_tblGameTransactions
                   insert into Imm_tblGameDetailsBJ(transid,playercard,dealercard,typeid,result,statusid,split,insurance,playercardcount,dealercardcount,winvalue,betvalue)
                                         values(@ltransid,@usercards,@dealercards ,1,1,'PB',@split,@insurance,@useracecnt,@dealeracecnt,@winamt,@betamt)
                    IF @@ERROR <> 0
                   begin
                     -- There's an error b/c @ERROR is not 0, rollback
                          ROLLBACK
                        return
                   end
                   update Imm_players.dbo.Imm_tblPlayerbalance set balance=@lfinalbal where playerid=@plid
              IF @@ERROR <> 0
                   begin
                     -- There's an error b/c @ERROR is not 0, rollback
                          ROLLBACK
                        return     
                   end
                 commit transaction       
              return
           end
       else
           begin
              begin transaction
             insert into Imm_tblGameTransactions(playerid,gameid,Initialbalance,transactiondate,betamount,winamount,currencycode,finalbalance,sessionid)
                                        values(@plid,@gameid,@linitbal,@transdate,@betamt,@winamt,'USD',@bal,@sessionid)
         IF @@ERROR <> 0
              Begin
                -- There's an error b/c @ERROR is not 0, rollback
                     ROLLBACK
                   return
              End
              /*ELSE
                     COMMIT   -- Success!  Commit the transaction*/
             select @ltransid=@@identity from Imm_tblGameTransactions
             insert into Imm_tblGameDetailsBJ(transid,playercard,dealercard,typeid,result,split,insurance,playercardcount,dealercardcount,winvalue,betvalue,statusid)
                                        values(@ltransid,@usercards,@dealercards,1,3,@split,@insurance,@useracecnt,@dealeracecnt,@winamt,@betamt,'G')
         IF @@ERROR <> 0
              Begin
                -- There's an error b/c @ERROR is not 0, rollback
                     ROLLBACK
                   return
              End
              /*ELSE
                     COMMIT   -- Success!  Commit the transaction*/
              commit transaction 
              return           
             end
    end
    GO

  • Locking problem in BPS solution not getting solved  using RSPLSE. SEM_BPS_S

    Can anyone tell me exactly what "rsplse" offers to solve locking in BPS?
    We have made correct selection of characteristics (in our case "costcentre" infoobject) in tab "Lock characteristics" , but still when two people are trying to access (write) data in the same transactional cube against the different cost centres, the system is throwing an error message Cube “zIC_ccp” is locked by username.  (Or if a single person is using the two packages simultaneously using  two web sessions , he is getting the same error. )
    Our assessment is that he should not be facing this locking problem because cost centres here are acting as a “key” to different selection as configured in “rsplse”. 
    Can anyone tell me how to use parameter SEM_BPS_SAVE_UNLOCK. I want to know t. code and other t . code and other details to execute SEM_BPS_SAVE_UNLOCK.

    Hi,
    Please check the OSS note 635244.
      From the OSS note :
    <b> Notes on SET/GET parameters SEM_BPS_NO_LOCK, SEM_BPS_SAVE_UNLOCK :</b>
    These two parameters have nothing to do with the problem described above. They are only designed to facilitate the Customizing process, if users carry out Customizing in t ransaction BPS0 within a project.
    <b>SEM_BPS_NO_LOCK:</b> This parameter has the effect that transaction data is not locked at all. Never use this parameter in a production system. As of Support Package 14 for Release 3.1B, parameter SEM_BPS_NO_LOCK is released by an additional switch in table upc_dark2: For this purpose you have to maintain a record with param = ENABLE_NO_LOCK and value = X in table upc_dark2. Only then the system includes parameter SEM_BPS_NO_LOCK. The parameter can then be useful if you want to test functions or the manual planning with 'test data' in Customizing.
    <b>SEM_BPS_SAVE_UNLOCK</b>: This parameter only works in transaction BPS0; it has the effect that the system unlocks data (if possible) after it has been saved. Therefore, the system only simulates an exit and reentry in transaction BPS0 with the last active detail application. Therefore, the above parameter can be helpful if many people work on Customizing in transaction BPS0, because objects can be unlocked earlier.
    Regards,
    Siva.

  • Article says K8N Neo has SATA frequency locking problem

    This article says that the K8N Neo has SATA frequency locking problems when overclocking:
    http://www.nforcershq.com/modules.php?name=News&file=article&sid=1801
    First of all, is this true?
    And if it is true, do we have a BIOS that fixed this problem.
    My drives are PATA right now so I currently don't have any problems but I plan to get SATA drives/adapters soon.
    I'm running 240 HTT (1:1) so not having the SATA frequency locked could be an issue.

    Well, I´m running HTT 230 now, and I´m always using my Raptor as OS disk. Haven´t had any problems yet (with my disk). It´s connected to s-ata_1. Haven´t tried the other ones.
    But sometimes when I boot (200 or 230HTT, doesn´t matter) I get artifacts on the boot screen and in Windows, so I have to restart.
    Could it be a partially working AGP-lock? It seems as at works most of the time, but sometimes not... Strange... AGP is set to 66-67MHz

  • Locking problems... Help me...

    I am a novice...
    But I have a locking problem..
    First, OneRecord A is locked,
    Second, OneRecord A is also locked...
    Third, OneRecord A is also locked..
    But if OneRecord A is unlocked, then First, Second, Third All 3 OneRecord A is awaken...(because of same object....)
    so Security exception happen...(because one.getCookie() is different from cookie )
    I want to make a program in order...
    First, OneRecord A is unlock....
    Second, OneRecord A is unlock...
    Third, OneRecord A is unlock..
    What shoud i do?
    Help is appreciated...
    I am not a native speakek in English..
    Plz...
    public long lockRecord(long recNo) throws RecordNotFoundException
              int a = (int)recNo;
              if( a >= vecrecord.size() || a < 0) throw new RecordNotFoundException();
              OneRecord one = ((OneRecord)(vecrecord.elementAt(a)));
              if( one == null) throw new RecordNotFoundException();
              long cookie = 0L;
              synchronized(one)
                   if(one.isLocked())
                        try
                             one.wait();                         
                        catch(Exception e)
                   cookie = Thread.currentThread().hashCode();
                   one.setCookie(cookie);               
              return cookie;          
    public void unlock(long recNo, long cookie) throws SecurityException, RecordNotFoundException
              int a = (int)recNo;     
              if( a >= vecrecord.size()) throw new RecordNotFoundException();
              OneRecord one = ((OneRecord)(vecrecord.elementAt(a)));
              if( one == null) throw new RecordNotFoundException();
              synchronized(one)
                   if(one.isLocked())
                        if(one.getCookie() != cookie) throw new SecurityException();
                        one.setCookie(0L);     
                        one.notify();
         }     Edited by: KIMJINHO on Sep 8, 2008 1:56 PM

    I did not really understand but you should call wait inside of a loop.
    As the api for Object.wait says:
    * As in the one argument version, interrupts and spurious wakeups are
    * possible, and this method should always be used in a loopI hope this helps
    Additionally you should not catch an Exception without doing anything. At least log it or write it to the console.
    Edited by: Domi27 on Sep 8, 2008 4:18 PM

Maybe you are looking for

  • Can i copy songs from my ipod to a folder in my pc?

    I want to copy songs from my ipod to a folder in my pc but when i attempt to copy, the paste is not active

  • BusinessObjects Portal Integration - iView Template Missing

    Hello I have installed my BusinessObjects for Portal as follows: 1. We already have BI 7.0 on SQL 2005 on BIDEMOSER SERVER. 2. Installed BusinessObjects Enterprise 3.1 , Crystal Reports 2008, SAP GUI 7.1 and SAP Integration Kit on this new server nam

  • SATA Kernel Panic Issue?

    Hey all, I had made a post earlier about a seemingly random kernel panic that didn't have a specific task when panicking, and when I posted the error report I got a reply saying that it was a failure of a sata drive or in the controller. I use the OW

  • I set a poster frame in the timeline, but the thmbnail in the menu does not update. Why?

    I have used poster frames correctly in other projects before, also in encore cs6. In this project, it's not working. haveing had it working before, i'm sure its nothing to do with the OS, or media type, since that was the same in my previous projects

  • IDOC/ALE/BAPI/BADI

    Hi, I want to understand the difference between IDOC/ALE/BAPI/BADI in context to a functional consultant.what is the role of each with an EXAMPLE.I want to basically understand with examples w.r.t SD or MM instead of theory which i could get in forum