Pessoal
boa noite!

  Preciso uma ajuda de vocês para entender se é uma situação normal ou
posso ter algum problema.

  Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit


> Eu fiz um teste simulando o que temos no banco aqui
>
> CREATE TABLE TAB_TYPE_1
> (ID     NUMBER(10) PRIMARY KEY,
>  CODE   VARCHAR2(10) NOT NULL);
>
> CREATE TABLE TAB_TYPE_2
> (ID     NUMBER(10) PRIMARY KEY,
>  CODE   VARCHAR2(10) NOT NULL);
>
> -- Tabela principal que depende das 2 tabelas acima de configuração:
> CREATE TABLE TAB_A
> (ID     NUMBER(10) PRIMARY KEY,
>  CODE   VARCHAR2(10) NOT NULL,
>  TYPE_1_ID  NUMBER(10),
>  TYPE_2_ID  NUMBER(10));
>
> ALTER TABLE tab_a ADD CONSTRAINT fk_tab_a_type_1 FOREIGN KEY (type_1_id)
> REFERENCES tab_type_1 (id);
>
> ALTER TABLE tab_a ADD CONSTRAINT fk_tab_a_type_2 FOREIGN KEY (type_2_id)
> REFERENCES tab_type_2 (id);
>
> CREATE INDEX idx_tab_a_type_1 ON tab_a (type_1_id) TABLESPACE indx;
> CREATE INDEX idx_tab_a_type_2 ON tab_a (type_2_id) TABLESPACE indx;
>
> -- Quando faço a inserção na tabela principal, mesmo SEM valor nos
> atributos de tipos verifico que existe a seguinte indicação em  *
> v$locked_object*:
>
> INSERT INTO tab_a (id, code) VALUES (1,1);
>
> OBJECT_NAME        LOCKED_MODE
> ------------------ ---------------
> TAB_A              Row-X (SX)
> TAB_TYPE_1         Row-X (SX)
> TAB_TYPE_2         Row-X (SX)
>
> Eu entendo que os valores de v$locked_object.locked_mode são:
>      0, 'None',
>      1, 'Null (NULL)',
>      2, 'Row-S (SS)',
>      3, 'Row-X (SX)',
>      4, 'Share (S)',
>      5, 'S/Row-X (SSX)',
>      6, 'Exclusive (X)',
>
> SID   Lock Type       Mode Held       Blocking?
> ----- --------------- --------------- ---------------
> 579   DML             Row-X (SX)      Not Blocking
> 579   DML             Row-X (SX)      Not Blocking
> 579   DML             Row-X (SX)      Not Blocking
> 579   Transaction     Exclusive       Not Blocking
> 579   AE              Share           Not Blocking
>
> Apesar de aparecer conforme acima, NÃO está impedindo nenhuma
> alteração/remoção em relação a dados para as tabelas de tipos, apenas
> segurando alterações de estrutura.
>
> Isso impacta em algo em relação a contenção ou é um comportamento normal?
>  Por que o indicativo "Row" se não há nenhuma contenção de linha?
>


> Obrigada
>
   Luciana

>
>


[As partes desta mensagem que não continham texto foram removidas]

Responder a