uner-digital / DSpace

UNER-Digital es el repositorio institucional de la Universidad Nacional de Entre Ríos (UNER - http://www.uner.edu.ar/). El desarrollo está basado en DSpace y customizado por el equipo de desarrollo de SEDICI.
Other
1 stars 1 forks source link

Revisar reporte de checksum checker #89

Closed arieljlira closed 7 years ago

arieljlira commented 7 years ago

Revisar reporte de checksum checker para que sólo mande correos en caso de PROBLEMA. Analizar por qué motivo esto no pasa (o sí) en CIC-DIGITAL.

Subject: Checksum checker Report - 26 Bitstreams found with POSSIBLE issues on uner.sedici.unlp.edu.ar Attach: checksum_checker_report.txt

FacundoAdorno commented 7 years ago

Actualmente, la cron del checksum checker se ejecuta una vez al día a las 04hs:

0 4 * * * <dspace_user> ./bin/dspace checker -p -d 1h

Me imagino que puede estar sucediendo este escenario:

El ChecksumChecker se ejecuta una vez al día, una hora al día (-d 1h). Pasada la hora deja de ejecutarse. Como tiene el parámetro prune (-p) siempre recalcula los checksums de todos los bitstreams nuevamente. Como no tiene el parámetro looping (-l), siempre queda una tanda de bitstreams sin procesar, y esa tanda va creciendo a medida que el repositorio crece.

Viendo el código del CLI del ChecksumChecker, veo que las opciones -l y -d son mutuamente excluyentes. El parámetro -l indica que se ejecute el ChecksumChecker una única vez sobre todos los bitstreams y luego termina su ejecución (en comparación al -L que indica al ChecksumChecker que se ejecute infinitamente).

Quizás cambiando la cronjob a la siguiente se solucione la cuestión:

0 4 * * * <dspace_user> ./bin/dspace checker -p -l

También se puede considerar de cambiar la frecuencia, en vez de todos los días sólo los domingos....

arieljlira commented 7 years ago

El ResultPruner del checksumChecker revisa los controles realizados y registrados en la BD y elimina los viejos de acuerdo a las configuraciones del dspace,cfg:

#### Checksum Checker Settings ####
#Checksum retention history settings: these two options specify how long a single checksum verification action is kept within your DSpace database.   
checker.retention.default=10y
checker.retention.CHECKSUM_MATCH=8w

En cuanto al uso de los parámetros, efectivamente -l, -L , -b, -d y -c son excluyentes. Por lo que veo -L, -d procesan los bitstreams en modo loop en tanto que -l, -b y -c los procesan sólo una vez.

Por ello, quizás podríamos usar sólo -l dado que no son muchos bitstreams.

En https://wiki.duraspace.org/display/DSPACE/Configure+checksum+checker está la documentación del módulo y parámetros

FacundoAdorno commented 7 years ago

Se actualizó la cron para ejecutarse los sábados utilizando el siguiente comando:

./bin/dspace checker -l

Ya lo ejecuté localmente y aparentemente procesó todo bien. Luego ejecuté el checker-emailer a mano y no se recibió ningún email con los "unchecked".

Voy a esperar al lunes a ver si recibo algún email con los famosos "unchecked".

FacundoAdorno commented 7 years ago

Ayer se ejecutó la tarea de checksum-emailer y no se envió ningum mensaje a la cuenta de RIUNER. Parece que ya se solucionó.

FacundoAdorno commented 7 years ago

Sin embargo, en un futuro habría que verificar porqué el conjunto de opciones ./bin/dspace checker -p -d 1h no resulta como es esperado...