cancel
Showing results for 
Search instead for 
Did you mean: 

¿Orden de archivos que se muestran mediante CIFS (system.filefolderservice.defaultListMaxResults)?

sergiorg96
Confirmed Champ
Confirmed Champ

Buenas,

Hace poco un cliente me comentó que sólo podían ver en sus unidades de red, hasta 5000 archivos cuando realmente esa carpeta tiene cerca 50000 archivos. Buscando información encontré que hay un parámetro que por defecto sólo muestra 5000 archivos (system.filefolderservice.defaultListMaxResults), que supongo que estará pensado para no ralentizar la carga de éstas unidades de red ante tal cantidad de archivos. Mi pregunta es, ¿cómo elige Alfresco estos 5000 archivos? He comprobado que mediante CIFS aparecen algunos ficheros que los usuarios introducen ese mismo día, sin embargo, otros ficheros que también introducen ese mismo día no les aparece en las unidades de red, pero sí en la interfaz web, como es lógico. ¿Hay alguna forma de indicarle a Alfresco que de esos 5000 archivos del parámetro system.filefolderservice.defaultListMaxResults, quiero que me muestre los 5000 archivos más recientes?

Gracias

1 REPLY 1

angelborroy
Community Manager Community Manager
Community Manager

Vaya por delante que almacenar 50,000 ficheros en una misma carpeta generará un problema de rendimiento en cualquier sistema: Alfresco, un NFS o lo que sea.

En cuanto a la pregunta, la respuesta corta es no. No puedes configurar Alfresco para que te devuelva los resultados más recientes en un listado de carpeta por CIFS.

La operación realiza la siguiente secuencia.

1) CIFS utiliza FileFolderService para buscar los hijos de una carpeta

fileServersNG-v5/SMBHelper.java at 414db5855b9f8737e1574d75974c64bff5d5d7ab · FileSysOrg/fileServers... 

2) FileFolderService utiliza el NodeService para encontrar los elementos contenidos en un nodo

alfresco-repository/FileFolderServiceImpl.java at ac38ac94ff4f9cbdf2671a9517781bda389a13c4 · Alfresc... 

3) NodeService lanza un SQL a la base de datos para recuperar las asociaciones

alfresco-repository/DbNodeServiceImpl.java at ac38ac94ff4f9cbdf2671a9517781bda389a13c4 · Alfresco/al... 

4) Los DAOS de base de datos encuentran la query y la lanzan

alfresco-repository/AbstractNodeDAOImpl.java at ac38ac94ff4f9cbdf2671a9517781bda389a13c4 · Alfresco/... 

alfresco-repository/NodeDAOImpl.java at ac38ac94ff4f9cbdf2671a9517781bda389a13c4 · Alfresco/alfresco... 

Y en este punto se observa como se especifica explícitamente que no hay criterios de ordenación para esa Query.

Podrías incluir en toda esta cadena el criterio que necesitas, aunque no es una modificación sencilla y (dudo) que sea mantenible en el futuro.

Por si tienes curiosidad, la query de myBatis es ésta:

alfresco-repository/node-common-SqlMap.xml at 3cb7b125d3290573573d1dd31f8352f30155af6e · Alfresco/al... 

No sé si podrías encontrar alguna condición que identificase que es una petición de CIFS en este punto para poder incluir tu criterio de orden.

En fin, después de todas estas divagaciones, espero haberte ayudado.

Hyland Developer Evangelist