Re: DX Lock problem



On Jun 28, 10:48 pm, sorc...@xxxxxxxxx wrote:
Hello folks,

does anybody know the meaning of the v$lock.id1 column for a lock of
type 'DX'?
We are facing some problems w/ this type of lock.
Sometimes a session hangs after acquiring a DX lock in exclusive mode
serializing
other sessions, any queries againts views related to distributed tx
([g]v$global_transaction,
dba_pending_transactions, ...) hang there forever.
Killing the session holding the lock doesn't help cause the lock is
acquired with the same mode
by another session. The only solution so far has been to shut the
instance.
I am trying to replicate the problem in our development environment
using a couple of
application witten in Pro*c but even if during some dml operation I
can see a DX exclsuive
lock, I havent't been able so far to stall the instance :(.
If you guys know what excatly means that column, or better if you know
what Oracle do
during an distributed (xa) transaction would be greatly valuable for
my debug activity.

The production env wher i get the error is:
9iEE 9.2.0.8 (2 nodes RAC)
Solaris 9 64
Bea Web Logic Server 8.1.4 (TM)

Thanks
g

10g v$lock_types says ID1 of DX lock is "transaction entry #". It's
probably the slot number in the "distributed transaction table". This
concept exists in 8i and probably still does in later versions,
although its size is no longer controlled by distributed_transactions.
I think this "table" is just a subset of the database transaction
table. In 8i, ID1 usually goes down from the highest (set by
distributed_transactions). In 9i, it seems to be random.

If you can't query (g)v$global_transaction and other related views,
can you query their underlined tables? x$k2gte and pending_trans$,
etc. How about SQL trace the session selecting from these tables? If
you truss the shadow process, where does it hang?

Yong Huang

.



Relevant Pages

  • Re: [Info-Ingres] Kill processes that causes lock in the database
    ... Kill processes that causes lock in ... It is based on Ingres ... iimonitor - show sessions formatted. ... Resource held by session Mode 2. ...
    (comp.databases.ingres)
  • Re: row locking and inserts
    ... I am working in an application in which I want to lock a set of rows ... session 1> begin transaction ... session 1> commit ... You could get an Oracle DB fairly easily - download the free Oracle ...
    (comp.databases.oracle.server)
  • Re: Locking question when using Select clause with For Update and Skip locked
    ... This is working fine in SQL Server and multiple session can get the ... But in Oracle the first session only return 1 row but locks all the ... It looks like both the session got the ROW-X lock but one session is ...
    (comp.databases.oracle.server)
  • Re: where are my threads blocking problems?
    ... >> Mainor keepTesting, or similar fields. ... The code does indeed prevent more than one thread from processing a session ... potentially conflicting session. ... and EndSession methods do not lock this collection. ...
    (microsoft.public.dotnet.framework.performance)
  • Re: where are my threads blocking problems?
    ... >> Mainor keepTesting, or similar fields. ... The code does indeed prevent more than one thread from processing a session ... potentially conflicting session. ... and EndSession methods do not lock this collection. ...
    (microsoft.public.dotnet.languages.csharp)