A case for deferred TT creation - Forum - OpenEdge Development - Progress Community
 Forum

A case for deferred TT creation

  • One doesn't need anything that sophisticated.  Some fairly simple scripting should be able to run through a code base and report instance in which a TT is defined but not referenced

    I'm in doubt your code parser will any closely be able to estimate how much I/O temp-tables will cause at runtime. There are more use cases for those VST's than just the TMTT issue.

  • I think the TT VSTs are a great addition and will be helpful at diagnosing many TT performance issues ... I just think that they are unneeded and possibly even unhelpful for the problem addressed by this thread.  One imagines that a defined but non-instantiated TT will not show up in the VST at all because it doesn't exist yet.

    Consulting in Model-Based Development, Transformation, and Object-Oriented Best Practice  http://www.cintegrity.com

  • I think the TT VSTs are a great addition and will be helpful at diagnosing many TT performance issues ... I just think that they are unneeded and possibly even unhelpful for the problem addressed by this thread. One imagines that a defined but non-instantiated TT will not show up in the VST at all because it doesn't exist yet.

    With the delayed instantiation it will probably not show up in the VST (but we don't know before we have details about the implementation). But unused temp tables will also not slow down the runtime anymore as it does now.

    Well done, Tim and dev team!

  • unused temp tables

    Where Tim and I seem to differ is how common are unused temp tables in most sites.

    Consulting in Model-Based Development, Transformation, and Object-Oriented Best Practice  http://www.cintegrity.com

  • Not that this will help the situation described in your current verion, but quite some work has been done in this area since OE 11, specifically wrt delayed temp-table instantiation (which is the case you're making ;)

    TT's creation are delayed by default to the point in the code where records in the temp-table are queried or created, thereby alleviating the performant impact when instantiating a proceedure/class that uses loads of TT's and completely avoid having to spend resources on TT's that aren't needed. Cool hey?

    The -nottdelay has to be specified to revert this behavior in OE 11 to the current situation you're describing by disabling delayed TT instantiation in OE 11.