OBJECTSEMANTICS / SmallSuiteGenerator

Powered by SEMANTICS SRL
http://semantics.bo
MIT License
3 stars 2 forks source link

typeInfo generation too slow #185

Open Lin777 opened 4 years ago

Lin777 commented 4 years ago

Cuando se tiene un typeInfo que tiene una gran cantidad de scalars que no tienen una buena implementacion de igualdad como por ejemplo #UnitValue , se puede llegar a listas enormes de mas de 4000 elementos, lo cual hace que el desempenio sea lento, tanto en la gneeracion del typeInfo como en la generacion de tests, ya que esta lista va creciendo rapidamente y al hacer joinScalars: tarda mucho.

Para replicar esto ejecutar:

|typeInfo aBlock generated |
aBlock := [PDFDemos runAllDemos ].

typeInfo := STypeInfo asTypeInfo: (
        SSTypeCollector profile: aBlock onPackagesMatching: 'Artefact*').

para corregir se podria tener un limite al agregar escalares por cada tipo

Lin777 commented 4 years ago

Intente corregir usando el metodo snapshot de Spy2, sin embargo esto no da los resultados esperados por lo cual este error aun esta pendiente de correccion.

Lin777 commented 4 years ago

Al utilizar Sets se usa como referencia el Hash de los objetos, sin embargo existen algunos objetos que no se reescriben correctamente este metodo, por lo que objetos iguales generan diferentes hash, haciendo que el Set pueda tener varios objetos iguales