ppazos / yupp

Automatically exported from code.google.com/p/yupp
0 stars 0 forks source link

Evaluar cambios a la estrategia de identificación de registros MTI #111

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Ahora cada registro en cada tabla tiene un identificador único, aunque 
registros en distintas tablas representen realmente una única instancias de 
una clase, debido a la herencia persistida en distintas tablas o MTI.

Hoy es complejo el manejo de éste tipo de registros, por ejemplo en la carga 
se deben joinear los registros de distintas tablas para armar un solo objeto, y 
para esto son necesarias algunas consultas previas para hallar la clase 
concreta y el identificador correspondiente al registro de la subclase 
específica en la estructura de herencia.

La pregunta a plantear es ¿no será más sencillo cambiar la estrategia de 
identificación a que todos los registros tengan el mismo id que los registros 
en la tabla que persiste la superclase (raíz en la estructura de herencia)? De 
esta forma, siempre se sabrá el identificador del registro de la subclase 
específica porque será el mismo que el id de todas sus superclases, y se hace 
innecesaria la gestión del atributo super_id, y del propio atributo super_id 
que podría desaparecer.

También simplificaría la persistencia de información ya que no se necesita 
hacer una consulta por tabla para hallar el id del nuevo registro en cada tabla 
de la estructura de herencia.

Creo que este cambio no solo simplificaría el código, si no que lo haría 
más performante, por requerir menos consultas SQL.

Original issue reported on code.google.com by pablo.swp@gmail.com on 25 May 2011 at 6:26

GoogleCodeExporter commented 8 years ago
El cambio está hecho, necesita un poco más de testing. Va a salir en v0.4.

Original comment by pablo.swp@gmail.com on 28 May 2011 at 3:02

GoogleCodeExporter commented 8 years ago
Hecho. El cambio de estrategia de identificacion está funcionando 
correctamente.

Original comment by pablo.swp@gmail.com on 31 May 2011 at 4:12