Qual a descrição das siglas dos locks demonstrados no onstat -k ?
HDR Buffer Header
Indica qual foi a primeira thread a pegar o lock do buffer header.
Quando houver mais de um lock no mesmo registro apenas oque
chegou primeiro terá o HDR. Porem isso não quer dizer que ele tenha
preferencia para colocar um exclusive lock.
B Byte lock
IS Intent shared
S Shared
SR Shared lock by RR
U Update
UR Update lock by RR
IX Intent exclusive
SIX Shared, intent exclusive
X Exclusive
XR Exclusive lock by RR
TRR Inserter.s RR test
Shared
- Reserva o objeto apenas para leitura
- Não permite que ninguém altere o objeto
- Mais de uma sessão pode por um shared lock no mesmo objeto
Exclusive
- Reserva o objeto para ser utilizado apenas por aquela sessão
- Não é possível colocar lock exclusivo aonde já existe qualquer outro tipo de lock
Promotable/Update
- Define que há intenção de moficiar o objeto
- Não pode ser colocado aonde já existe um lock exclusivo ou outro promotable/update
- Quando o objeto for modificado o lock é promovido para lock exclusivo, porém não pode existir outro lock no mesmo objeto, incluindo shared locks.
Intent locks
- Pode ser IS, IX ou SIX
- É colocado apenas quando há granularidade do lock, ou seja, quando é locado uma linha, é colocado um Intent lock na tabela, para evitar que outra sessão coloque um exclusive lock na tabela.
Manual: SQL tutorial, IDS 11.10 , pagina 10-16 (258)
Hold X Hold U Hold S Hold IS Hold SIX Hold IX
Lock Lock Lock Lock Lock Lock
Request X lock No No No No No No
Request U lock No No Yes Yes No No
Request S lock No Yes Yes Yes No No
Request IS lock No Yes Yes Yes Yes Yes
Request SIX lock No No No Yes No No
Request IX lock No No No Yes No Yes
- 235 leituras




