Control total de los elementos eliminados en Alfresco

Con el siguiente diagrama, me gustaría mostrar cómo funciona la gestión de elementos eliminados y la papelera en Alfresco:

sg_alfresco_file_retention_diagram1

Para conseguir controlar totalmente el estado del repositorio es interesante el uso del módulo Alfresco Trashcan Cleaner que está disponible en la forja de Alfresco. Su instalación es muy simple:

  1. Paramos Alfresco
  2. aplicamos el módulo a alfresco.war con la herramienta mmt:  java -jar alfresco-mmt-X.X.jar /path/to/amp/trashcanCleaner.amp $TOMCAT_HOME/webapps/alfresco.war
  3. borramos el directorio donde se desplegó Alfresco $TOMCAT_HOME/webapps/alfresco/
  4. Arrancamos Alfresco.

Si queremos configurar las opciones del Trashcan Cleaner, antes de arrancar, copiamos trashcan-cleaner-context.xml al directorio extension y lo adaptamos a nuestro gusto. Por defecto borrará los elementos enviados a la papelera a los 7 días y se ejecuta diariamente a las 4AM.

15 thoughts to “Control total de los elementos eliminados en Alfresco”

  1. Caspitas!!!!

    Siempre había dado por hecho que cuando se borraba algo de la papelera desaparecia totalmente, incluido el binario.
    ¿Cual es el motivo de que esto no sea así?

    Entiendo que una vez borrados los metadatos la recuperación de un documento pasa por tirar de los backups y restaurar la base de datos, y por tanto de puestos a tirar de backups también puedes obtener el binario de los backups. Por tanto, a simple vista, esta forma de gestionar los contenidos borrados parece una mala idea ya que ocupa mucho espacio “innecesario” a cambio de “poca cosa”.

  2. Vaya, perdona, parece que te estoy invadiendo el artículo con tanto comentario.

    El caso es que releyendo otro de tus artículos deduzco que “sin hacer nada” una vez borrados los contenidos de la papelera a los 15 días ya pasan a “contentstore.deleted” y tras rebuscar en el wiki (http://wiki.alfresco.com/wiki/Content_Store_Configuration) veo que el Content Stroe Cleaner por el que te preguntaba es un bean.

    No obstante el XML del wiki no me cuadra demasiado con el que esta presente en content-services-context.xml de la versión Community 3.3g.

    En la 3.3g el bean “contentStoreCleaner” no hace mención a ninguna propiedad listener, sin embargo hace referencia a otro bean denominado “eagerContentStoreCleaner”, que esta vez sí, tiene un atributo “listener” que apunta al bean “deletedContentBackupListeners”, que parece ser es una lista de beans que han de actuar sobre el los contenidos huerfanos, en este caso el bean “deletedContentBackupListener”. ¿Existe algún bean alternativo que simplemente lo borre o no queda más remedio que vaciar “contentstore.deleted” mediante una tarea programada en el sistema?

    Este artículo ha sido muy interesante, pero creo que en torno al tema aún tienes margen para escribir otro más 😉

  3. Hola Toni,

    Mi duda va más allá de la limpieza.. si pasa al contentstore.deleted y no se eliminan… es porque podría recuperarlos? y si es así sabrías decirme como hacerlo? Creo que tengo contenido ahí que no debería haber borrado, y como desde la base de datos no lo relaciona… necesito poder saber que ficheros son.

    Por lo que sé son todo pdf, pero el truco de cambiar solo la extensión .bin por .pdf no me funciona. Hay que hacerlo de alguna otra manera? o es imposible…

    Gracias

  4. Hola Susana, esos documentos en contentstore.deleted no hay forma de recuperarlos ya que no hay referencias en la base de datos, si realmente son PDF si debes poder renombrarlos y abrirlos, si no puedes habrirlos es porque no son realmente PDFs, en linux usa el comando “file fichero.bin” y te dirá que tipo de fichero es, luego lo renombras y lo podrás abrir.
    Saludos.

  5. Buenas Toni,
    estoy leyendo este artículo porque quiero instalar el módulo Trashcan.

    el archivo .jar que me he descargado es “alfresco-trashcan-job-1.1”, el “alfresco-mmt…jar” cómo lo construyo?

    Saludos.

  6. Muy buenas! espero que podáis echarme una mano.
    No entiendo la diferencia entre el contentstore y el contentstore.deleted… en ambos contenedores el fichero sería recuperable ¿no? aunque sea solo el binario

    Gracias!

  7. Hola Angel, hay varios módulos disponibles. La instalación de cada uno de ellos es diferente. Seguramente sus desarrolladores te puedan ayudar mejor para saber como instalarlo.

    Maria, el contenetstore es donde se almacenan todos los ficheros de Alfresco (todos), no tienes que recuperarlos porque están ahí, se ven en Alfresco. Al contentstore.deleted se mueven físicamente los ficheros borrados y vaciados de la papelera, al pasar 14 días de vaciar la pepelera. No se pueden recuperar desde Alfresco, esa carpeta es para borrarla a mano.

  8. tengo una pregunta, al eliminar un documento , donde se regitra la fecha de elimacion del documento, y como puedo obterla por setencia SQL

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.