cancel
Showing results for 
Search instead for 
Did you mean: 

Recomendación - Sobre Tarea programada "propTablesCleanupJobDetail"

nttgmr
Champ in-the-making
Champ in-the-making

Buenas tardes! 

Os cuento el problema que tengo, para ver si me podeis ayudar.

Actualmente, tengo la plataforma Alfresco 5.2 Enterprise balanceado en dos nodos diferentes.
Una de las tareas programadas por defecto que tiene el sistema, es la llamada "propTablesCleanupJobDetail", la cual se ejecuta de madrugada y de manera semanal a las 03:00h del viernes al Sabado. 

El problema viene que actualmente y en el entorno de PRO esta generando casi 50Gb de archivados a nivel de BBDD. Estos ficheros son "temporales" y una vez terminado la tarea el Oracle (v12) los va eliminando, pero la pregunta y cuestion que os queria hacer son las siguientes:
- Exactamente, que es lo que hace o genera esta tarea?
- Ocurriria algo si se "programa" en el fichero alfresco-global.properties para que no se ejecute nunca o se ejecute cada mes, año...? Afectaria esto al rendimiento de Alfresco, o provocaria que si en algun momento de lanza de nuevo esa tarea pueda colapsar y tirar Oracle
- Aunque venga predeterminada y activada por defecto para su ejecucion de manera semanal, que es lo mas recomendable?

Muchas gracias!!
Quedo a la espera de vuesta ayuda Smiley Wink

6 REPLIES 6

angelborroy
Community Manager Community Manager
Community Manager

Puedes encontrar el detalle de ejecución de esa tarea en:

https://github.com/Alfresco/alfresco-community-repo/tree/release/6.0.0/repository/src/main/resources...

El código fuente es para Postgres, pero será similar en el caso de Oracle.

El trabajo reconstruye algunos índices sobre las tablas que almacenan los valores de las propiedades para mejorar el rendimiento de las consultas.

Entiendo que desactivarla impactaría en el rendimiento del sistema, así que mi consejo es que reserves ese espacio adicional para que la tarea pueda ser ejecutada semanalmente.

Hyland Developer Evangelist

nttgmr
Champ in-the-making
Champ in-the-making

Gracias por la respuesta @angelborroy 

Entonces, tu serias partidario de dejar ejecutandose esa tarea de manera semanal como hasta ahora verdad?

Y el volumen de ficheros que nos está generando la tarea de unos 50Gb "temporales", y que luego se encarga de borrar de la papelera de reciclaje de Oracle, lo ves normal? Es que parece demasiado tamaño no? 

Aunque entiendo que segun se vaya introduciendo mas datos en Alfresco, mas espacio generará y requerirá esa tarea verdad?

nttgmr
Champ in-the-making
Champ in-the-making

@angelborroy en la informacion que se cita aqui:

https://docs.alfresco.com/content-services/latest/admin/db-cleanup/

Sobre los valores y modificaciones que comentan en ese link dentro del fichero alfresco-global.properties, que es lo que seria mas recomendable? O que es lo que tendria menos impacto a la hora de la ejecucion de esta tarea?

Estos son los valores por defecto que ejecuta la tarea verdad?

system.prop_table_cleaner.algorithm=V1

# Prop cleaner V2 properties

system.delete_not_exists.batchsize=100000

system.delete_not_exists.delete_batchsize=1000

system.delete_not_exists.read_only=false system.delete_not_exists.timeout_seconds=-1 

Y luego la V2 que comentan los valores que habria que añadir al alfresco-global.properties, serian estos verdad? 

system.prop_table_cleaner.algorithm=V2

system.delete_not_exists.read_only=true

# This will stop the next batch from being processed if the elapsed time from
the job start is greater than 1 hour
system.delete_not_exists.timeout_seconds=3600

Por defecto se usa el algoritmo V2

Esta versión es la recomendada para grandes volúmenes (más de 10 millones de files).

Por defecto, los valores para este proceso (puede sobre-escribirse en alfresco-global.properties) son:

system.prop_table_cleaner.algorithm=V2
system.delete_not_exists.read_only=true
system.delete_not_exists.timeout_seconds=3600

Es recomendable seguir utilizando este proceso, ya que en caso contrario el rendimiento puede verse afectado.

Podrías combinar este proceso con una optimización de las siguientes tablas:

alf_prop_root 
alf_prop_value 
alf_prop_string_value 
alf_prop_serializable_value 
alf_prop_double_value

De esa manera, es previsible que en la próxima ejecución del proceso requiras menos espacio en disco duro.

Hyland Developer Evangelist

nttgmr
Champ in-the-making
Champ in-the-making

Gracias nuevamente @angelborroy y perdona que te haga tanta pregunta Smiley Embarassed

Entonces, tu sugieres añadir las siguientes entradas al fichero alfresco-global.properties, verdad?

system.prop_table_cleaner.algorithm=V2
system.delete_not_exists.read_only=true
system.delete_not_exists.timeout_seconds=3600

Junto a la ejecucion de la tarea, a que te refieres con optimizar las tablas que indicabas anteriormente? Esto se realizaria desde el propio Oracle, o definiendolo en el fichero de configuracion de alfresco-global.properties?

Gracias!

Creo que esas son las opciones por defecto, pero puedes añadirlas a alfresco-global.properties para estar seguro.

En cuanto a la optimización de tablas, me refería a una tarea programada en el propio Oracle, utilizando un ANALYZE TABLE o similar para dejar las tablas preparadas para la siguiente ejecución de la tarea programada.

Hyland Developer Evangelist