Estoy hablando de oráculo. Tengo algunas vistas materializadas y se actualizan periódicamente (se realiza con una tarea programada). Es fácil saber la última fecha de actualización: solo consulta USER_MVIEW_REFRESH_TIMES. ¿Y hay alguna manera de saber si algunas vistas se están actualizando en el momento actual?¿Cómo saber si la actualización MATERIALIZED VIEW se está ejecutando?
Respuesta
Podría ver indirectamente si una vista materializada se actualiza al observar si un proceso tiene bloqueos adquiridos en ella: una vista materializada debe modificarse solo cuando se actualiza (excepto para las vistas materializadas de ACTUALIZACIÓN utilizadas para la replicación bidireccional).
Esta consulta debe devolver filas sólo cuando éste se actualiza su vista materializada:
vistasSELECT sid
FROM v$lock
WHERE type = 'TX'
AND id1 = (SELECT object_id
FROM all_objects
WHERE owner = :owner
AND object_name = :object_name)
materializadas que se definen a ser refrescada en un horario con" ... que empiezan por ... SIGUIENTE ... "como parte de su DDL se ejecutará bajo control DBMS_JOB. Si la renovación de estos MV está en curso, verá valores para THIS_DATE y THIS_SEC en la vista USER_JOBS (o DBA_JOBS) para el trabajo correspondiente y/o una fila en DBA_JOBS_RUNNING.
Si ha definido que el MV se actualizará a demanda y está iniciando la actualización externamente, la respuesta de Vincent es una forma de determinar el estado.
Usted podría intentar:
SELECT CURRMVOWNER, CURRMVNAME FROM V$MVREFRESH
para obtener la lista de puntos de vista refrescante en este momento.
- 1. oracle materialized view refresh time
- 2. Cómo saber si el servidor de emacs se está ejecutando
- 3. ¿Cómo puedo saber si un proceso se está ejecutando?
- 4. ¿Cómo saber si se está ejecutando un temporizador?
- 5. ¿Cómo puede saber mi programa si Delphi se está ejecutando?
- 6. cómo saber si la VM se está ejecutando en el modo de servidor o cliente?
- 7. Comprobar si el proceso se está ejecutando
- 8. powershell: ¿cómo comprobar si se está ejecutando la transcripción?
- 9. Cómo rastrear si se está ejecutando una tarea async/awaitable
- 10. ¿Cómo verificar si un proceso se está ejecutando con Delphi?
- 11. ¿Cómo saber si se está ejecutando una aplicación de pantalla completa?
- 12. ¿Cómo puedo saber si mi kernel OpenCL se está ejecutando en una GPU?
- 13. ¿Cómo puedo saber si un script Perl se está ejecutando en contexto CGI?
- 14. Cómo saber si un alojamiento compartido se está ejecutando 32 o 64 bit - con php
- 15. ¿Cómo puedo saber si mi script de Perl se está ejecutando en Windows?
- 16. Dentro de un archivo por lotes, ¿cómo puedo saber si se está ejecutando un proceso?
- 17. ¿Cómo puedo saber si un proceso ya se está ejecutando usando C#?
- 18. Descubriendo si la actividad de Android se está ejecutando
- 19. comisión si ya se está ejecutando
- 20. ¿Cómo puedo saber si mi proceso se está ejecutando como administrador?
- 21. ¿Cómo puedo saber si un proceso se está ejecutando en C?
- 22. ¿Cómo puedo saber si mi aplicación se está ejecutando en una sesión de RDP
- 23. Cómo saber si el servicio se está ejecutando utilizando adb shell en android
- 24. ¿Cómo puedo saber si el código de Rails se está ejecutando mediante rake o script/generate?
- 25. Verifica programáticamente si se está ejecutando syncdb
- 26. Comprobar si la animación se está ejecutando en cocos2d-x
- 27. Eliminar información del espacio de tablas de Materialized View DDL
- 28. ¿Cómo se puede saber si un método se está ejecutando en la devolución de datos de UpdatePanel?
- 29. Comprueba si se está ejecutando un archivo exe específico
- 30. actualización R paquetes mientras R se está ejecutando
Gracias por la respuesta. Pero las vistas se actualizan con una tarea java externa. –