lunes, 22 de junio de 2015

Lunes 22/06/2015 (NULOS)

Tiempo invertido: 4 horas y 30 minutos, aproximadamente

15:00-19:30

Uno de los mayores causantes de inconsistencias o errores en una base de datos son los mencionados Nulos, ya que si no se saben tratar o manejar de la mejor forma, causan muchos estragos a la hora de querer realizar alguna consulta o ejecutar algún procedimiento o función, en los proyectos programados anteriores pudimos resolver de una forma rápida y eficiente los Nulos, y pensamos que en este proyecto seria de igual manera.

En este proyecto programado el tratamiento de nulos fue un poco mas complicado de lo que esperábamos, pensamos que con la forma que los estábamos manejando iba a ser suficiente para que no mostrar ningún error o inconsistencia en la base de datos, pero no resulto así, ya que empezamos a tener una serie de problemas y errores a la hora de realizar la migracion de datos desde el archivo que fue creado por un grupo de compañeros para realizar la migracion a nuestra base de datos, y de los mayores errores que nos dio la migracion fue que no podíamos insertar datos que fueran NULOS, lo cual a primera vista nos pareció muy extraño, ya que antes de insertar todos los datos a las variables tablas creadas, la información parseada se revisa por medio de la función ISNULL para comprobar que no se inserte un campo NULO. 

Como tuvimos este error de NULOS empezamos a organizar y revisar nuestro código de migracion para ver si encontrábamos alguna falla o error que fuera el culpa de que no se pudiera realizar de una forma correcta la migracion de datos, pero no pudimos encontrar ninguna inconsistencia en el código, lo cual nos resulto aun mas extraño, ya que después de revisar minuciosa mente el código lo ejecutamos nuevamente y nos aparecía el mismo error. 

Como no encontrábamos una respuesta lógica para este error decidimos empezar a correr pequeñas fracciones del código de migracion por aparte para ver en cual de todos las tablas se insertaba un nulo o nos devolvía el error que nos daba antes, y así de esta manera luego de largos tiempos de espera pudimos encontrar que serie de errores que no provenian de nuestra código de migracion, sino que se encontraban en el archivo XML que nuestros compañeros habían creado, los cuales eran los principales sospechosos de que causaran los errores en nuestra base de datos.

Como pudimos encontrar esas inconsistencias en el archivo XML empezamos a ver de que manera podíamos encontrar estos errores, ya que al ser un archivo tan extenso pensamos que este estaría bien revisado por nuestros compañeros y no traería fallas o errores, pero nos dimos cuenta que no fue así.

Luego de un largo tiempo de estar lidiando con este error de NULOS pudimos dar con el paradero del origen del error, el cual era que en el archivo XML habían nombres de variables incompletos y mal escritos, o tenían un nombre que no era el de ese atributo, estos pequeños errores de nuestros compañeros nos causo gran desesperacion y estres ya que pasamos mucho tiempo resolviendo algo que no era falla de nosotros y de nuestro código.

Después de resolver este problema de NULOS que nos llevo demasiado tiempo en encontrarlo, procedimos a realizar nuevamente la migracion de datos, la cual se realiza de una forma perfecta y se ingresaron todos los datos a la base de datos sin ningún inconveniente o inconsistencia.


No hay comentarios:

Publicar un comentario