In calculation cache

Idea created by Vincent_L on Jan 31, 2016
    Active
    Score6

    This is potentially a huge performance benefit for legacy and newbies solutions.

     

    Nowadays, if you have a calc like that

     

    foreign_table::complex_unstored_calcA + foreign_table::complex_unstored_calcA + foreign_table::complex_unstored_calcA

     

    It's 3 times slower than

     

    Let(r=foreign_table::complex_unstored_calcA;

    r+r+r)

     

    That's because in that calc, the foreign_table::complex_unstored_calcA is called 3 times, instead of 1. This is no benefits : it's slow, and even if in a micro-second complex_unstored_calcA would change between first and last call, it would be terrible and cause wrong results.

     

    So, the calc should only call each field once.

     

    Yes we currently have the let workaround, but it's not known by newbies,  or still present in legacy solution. Fixing this would instantly speed up many solutions.