DiegoEmilio01 / IIC3413

Repositorio del curso Implementación de Sistemas de Bases de Datos
16 stars 2 forks source link

Error en la inicialización de `IsamNonClustered` #26

Open jtcaraball opened 2 months ago

jtcaraball commented 2 months ago

Hola! Perdón por levantar esta issue tan tarde en la tarea pero tuve que usar el cupón de atraso y acabo de encontrar el problema. Me di cuenta que cuando se inicializa un indice de la clase IsamNonClusterd no se marcan como dirty las paginas correspondientes a sus hojas lo que puede causar errores. En particular si no se editan (y marcan como dirty) hojas en el mismo run en que se instancia el indice, en subsecuentes runs estas hojas quedan con todos sus bytes en 0 lo que genera, entre otras cosas, que cuando se llama al destructor del objeto IsamNonClusteredLeaf correspondiente falla el assert de la linea 58 del archivo isam_nonclustered_leaf.cc.

Gracias por su tiempo y perdón por la molestia.

cirojas commented 2 months ago

Tienes razón, había un error que debería arreglarse con el último commit https://github.com/DiegoEmilio01/IIC3413/commit/f893450116836f90bf4eb13b72576a71d2db8687. Se me había pasado eso por el flujo de los tests que hice, ya que las hojas donde se insertan records no tienen ese problema, y luego las consultas que hacía usaban esas mismas hojas.

DiegoEmilio01 commented 2 months ago

Muchas gracias por reportar el bug, los tests finales lo considerarán y no se producirán errores durante la corrección