Seass tom!
auch mein erster tip: leider nein, die column die geupdatet
wird, besitzt lediglich einen not-null-constraint …
Bist du dir sicher, dass im Update-Statement nur die eine Column drin steht?
(select sess.sid, sess.serial#, sess.username, sql.piece, sql.sql_text from v$sqltext sql, v$session sess where sql.address=sess.sql_address and sql.hash_value=sess.sql_hash_value order by sess.sid, sql.piece:wink:
Gibt’s foreign keys auf eine der/die Spalte, die im Update drinstehen/drinsteht?
problem: diese tabelle wird von (übertriebenen) 8.324.122
masken angesprochen, jede macht immer nur ein bißchen was, und
_meistens_ ist es das update auf ein unscheinbares wie oben
beschriebenes column, das sonst niemanden interessiert, in
einem satz, der sonst niemanden interessiert
Ich empfehle dringendst herauszufinden, worauf denn wirklich locks existieren.
gibt’s irgendwo scripts, aus deren ergebnis man mehr ablesen
kann?
Bittesehr, du willst es ja nicht anders… 
SELECT l.sid,
s.username,
s.osuser,
l.type,
decode( l.type,
'MR', 'Media Recovery',
'RT', 'Redo Thread',
'UN', 'User Name',
'TX', 'Transaction',
'TM', 'DML',
'UL', 'PL/SQL User Lock',
'DX', 'Distributed Xaction',
'CF', 'Control File',
'IS', 'Instance State',
'FS', 'File Set',
'IR', 'Instance Recovery',
'ST', 'Disk Space Transaction',
'TS', 'Temp Segment',
'IV', 'Library Cache Invalidation',
'LS', 'Log Start or Switch',
'RW', 'Row Wait',
'SQ', 'Sequence Number',
'TE', 'Extend Table',
'TT', 'Temp Table',
l.type),
l.id1, o.name,
null,
null,
null,
decode( lmode,
0, 'None',
1, 'Null',
2, 'Row-S (SS)',
3, 'Row-X (SX)',
4, 'Share',
5, 'S/Row-X (SSX)',
6, 'Exclusive',
'Invalid'),
decode( request,
0, 'None',
1, 'Null',
2, 'Row-S (SS)',
3, 'Row-X (SX)',
4, 'Share',
5, 'S/Row-X (SSX)',
6, 'Exclusive',
'Invalid'),
l.ctime,
decode( block,
0, 'Not Blocking',
1, 'Blocking',
2, 'Global',
to\_char(block)),
c.sql\_text
FROM v$lock l, v$session s, v$open\_cursor c, sys.obj$ o
WHERE l.type IN ('TM', 'TX')
AND l.sid = s.sid
AND l.sid = c.sid (+)
AND o.obj#(+) = ID1
union
SELECT l.sid,
s.username,
s.osuser,
l.type,
decode( l.type,
'MR', 'Media Recovery',
'RT', 'Redo Thread',
'UN', 'User Name',
'TX', 'Transaction',
'TM', 'DML',
'UL', 'PL/SQL User Lock',
'DX', 'Distributed Xaction',
'CF', 'Control File',
'IS', 'Instance State',
'FS', 'File Set',
'IR', 'Instance Recovery',
'ST', 'Disk Space Transaction',
'TS', 'Temp Segment',
'IV', 'Library Cache Invalidation',
'LS', 'Log Start or Switch',
'RW', 'Row Wait',
'SQ', 'Sequence Number',
'TE', 'Extend Table',
'TT', 'Temp Table',
l.type),
l.id1, NULL,
null,
null,
a.name,
decode( lmode,
0, 'None',
1, 'Null',
2, 'Row-S (SS)',
3, 'Row-X (SX)',
4, 'Share',
5, 'S/Row-X (SSX)',
6, 'Exclusive',
'Invalid'),
decode( request,
0, 'None',
1, 'Null',
2, 'Row-S (SS)',
3, 'Row-X (SX)',
4, 'Share',
5, 'S/Row-X (SSX)',
6, 'Exclusive',
'Invalid'),
l.ctime,
decode( block,
0, 'Not Blocking',
1, 'Blocking',
2, 'Global',
to\_char(block)),
null
FROM v$lock l,
sys.dbms\_lock\_allocated a,
v$session s
WHERE l.type = 'UL' AND l.id1 = a.lockid AND l.sid = s.sid;
DBA_LOCKS angesschaut?
Die wird eher nicht weiterhelfen…
ähem, alle v_$lock angeschaut und versucht zu
analysieren, jedoch nicht recht schlauer geworden (was
bedeuten die felder addr, kaddr, … ???)
Na du willst es aber genau wissen. http://www.google.com/search?hl=en&lr=&ie=UTF-8&q=ka…
danke erstmal,
tomh
Ich hoffe das hilft dir weiter. Sonst komm’ ich halt einmal kurz vorbei. Musst dich nur mit meinem Chef auf einen Stundensatz einigen *ggg*
Liebe Grüße
Martin