Alfresco · Metadata versioning analysis

Using Alfresco Share:

  1. Upload new document
  2. Change “description” property to “Description 1.0”
  3. Upload new version (1.1)
  4. Change “description” property to “Description 1.1”
  5. Upload new version (1.2)

Modifications on description metadata are stored according to this figure.

alfresco-versioning-metadata

In my opinion, this logic seems incoherent: version 1.0 must not store “Description 1.0” value or both versions 1.1 and 1.2 must store “Description 1.1”.

New issue has been created (https://issues.alfresco.com/jira/browse/ALF-19860) in order to clarify Alfresco criteria on this subject.

Final considerations

Once Alfresco resolved the issue, I understood that my thoughts on this were tricky. Real scenario works according to this figure.

alfresco-versioning-metadata-2

Alfresco advice, based on the use of cm:autoVersionOnUpdateProps property, may provide a huge number of versions to the user (one on every property value change). So, maybe the best approach is to version automatically on file upload in order to build a consistent version history for the user.

Alfresco · Análisis del comportamiento del versionado de metadatos

A través de Alfresco Share realizamos la siguiente secuencia:

  1. Subir nuevo documento
  2. Cambiar la propiedad “descripción” a “Description 1.0”
  3. Subir nueva versión (1.1)
  4. Cambiar la propiedad “descripción” a “Description 1.1”
  5. Subir nueva versión (1.2)

La historia de modificaciones de los metadatos se refleja de acuerdo al siguiente esquema.

alfresco-versioning-metadata

A primera vista, la lógica del histórico parece incoherente, dado que en la versión 1.0 no debería guardarse el valor “Description 1.0” o bien en las versiones 1.1 y 1.2 debería almacenarse “Description 1.1”.

He abierto una incidencia (https://issues.alfresco.com/jira/browse/ALF-19860) para ver si Alfresco me aclara los criterios que utilizan para el versionado de metadatos.

Conclusiones

Una vez resuelta la incidencia, entiendo que mi planteamiento era engañoso. El esquema de funcionamiento real se ajusta a la siguiente figura.

alfresco-versioning-metadata-2En la resolución de la incidencia se sugiere la utilización de la propiedad cm:autoVersionOnUpdateProps, que realiza una creación automática de versión cada vez que cambia el valor de un atributo. No obstante, este mecanismo presenta un inconveniente: el usuario percibe una enorme cantidad de versiones de los contenidos.

Quizá la solución sea versionar automáticamente en la subida del fichero, para garantizar un comportamiento homogéneo a lo largo de todo el historial de cambios de contenido.