[oracle_br] Refresh materialized view

2016-08-06 Por tôpico Rafael Mendonca raffaell.t...@yahoo.com [oracle_br]
Oracle 11.2.0.4.16 AIX 64 bits
Senhores, estou com um problema em uma determinada MV. Quando tento realizar o 
refresh ela fica travada e não termina. Abrindo uma outra sessão verifiquei a 
v$session_wait e identifiquei que o evento em espera em relação a execução do 
refresh da view é a **enq: JI - contention**
Dando um googlada, verifiquei alguns artigos, inclusive o do Tom Kyte, mas 
sendo sincero, eu não entendi muito bem o porque do problema e como faço para 
solucionar esse problema.
Gostaria que os amigos, se pudessem ajudar, me dessem uma força nessa tarefa.
CREATE MATERIALIZED VIEW "OWNER_XUXA"."TABELA_XUXA" ("XXX", "XXX")
  ORGANIZATION HEAP PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 
 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "TBS_XUXA" 
  BUILD IMMEDIATE
  USING INDEX 
  REFRESH FAST ON DEMAND
  WITH PRIMARY KEY USING DEFAULT LOCAL ROLLBACK SEGMENT
  USING ENFORCED CONSTRAINTS DISABLE QUERY REWRITE
  AS SELECT "COL1"."COL2" "COL3","COL4" FROM "XUXA"."RH_TIPO_PENSAO"@DATABASE 
"TABELA";

  
OBS: Eu rodo a consulta da MV normalmente por fora.



[oracle_br] Refresh Materialized View e comando DDL

2009-07-18 Por tôpico Eriovaldo Andrietta
Pessoal,

Alguém já passou por essa situação e pode me ajudar.

Diariamente é executada a seguinte rotina:
a.) remove o indice da materialized view
 Se a coluna do índexada for modificada, o índice tem que ser
removido. É premissa
b.) o refresh completo da materialized acontece
c.) o índice da materialized view é recriado.

Dúvidas:

1.) Como posso fazer para fazer o refresh (ON DEMAND) da materialized view
sem ser completo ?

2.) Como sei se vou ter que apagar o índice antes de fazer o refresh
(PARCIAL OU TOTAL), para atender as seguintes situações:

 Situação a -- se a base não mudou:
   não apagar o índice
   não fazer refresh
   não recriar o índice

 Situação b -- se a base mudou:
   apagar o índice (drop index, somente se a coluna
indexeda mudou)
   fazer refresh
   recriar o índice (create index)

Tem como identificar isso ?


Grato
Eriovaldo


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