Caché del Entity Index (Índice de entidades)
Cuando se inicia RIMMF, crea el Entity Index (Índice de entidades) (al que llamamos el 'EI') –una base de datos de todos los registros que existen en la carpeta de datos actual. A diferencia de un sistema de gestión de bibliotecas real, que alamacena las tablas de tu base de datos en un disco, RIMMF las almacena en la memoria. De esa forma, al iniciar a RIMMF le lleva un poquito de tiempo (dependiendo de la cantidad de registros), pero tiene como contrapartida el rendimiento más rápido una vez que se ha creado el EI.
Al crear el EI, el programa también genera desde cero todas las tablas necesarias para soportar el enlazado dinámico, la exposición del RTree, las búsquedas y así sucesivamente. Normalmente, esto no lleva más de un segundo, pero si la carpeta es grande, con más de unos pocos centenares de registros, puedes ver que le lleva algo de tiempo 1). Al mismo tiempo, el programa también comprueba todos los registros para ver si se han perdido enlaces inversos y los añade cuando es necesario.
Hay una opción, en el Menú principal, soporte de la caché del EI:
El valor por defecto es 'Rebuild daily' (Reconstruir diariamente), lo que significa que la primera vez que se abre la carpeta de datos cada día, RIMMF quita cualesquiera archivos de caché existentes y crea uno nuevo.
La primera opción, 'Do not cache', significa que no se usará nunca una caché –el EI se regenerará siempre a partir de los datos de tus registros cuando el programa comience.
Y la última opción es la opuesta: el EI siempre se generará a partir de la caché.
Excepciones
En los siguientes casos, RIMMF ignora las opciones de caché anteriores y reconstruye el EI:
- si la carpeta de datos en uso tiene menos de 100 registros
- si la versión del programa ha cambiado
- si el número de archivos presente en la carpeta de datos que se está utilizando no cuadra con el número de archivos representados en la caché
- se inició el programa utilizando la opción 'No cache' 2)
- if there was an error saving the cache the last time the data folder was used