QueryPlan

QueryPlan is what we call the ability to statically analyze a viewmodel to know ahead of time what data it will use.

QueryPlan is used to efficiently fetch the data for a view.

Since views may shift what data they show (seekers or when base nesting on variables) the QueryPlan logic is active even after view creation - to make sure the slow performing lazy fetch does not kick in.

Lazy fetch is a strategy to fetch the object needed for a object locator just in time. This is practical but if every object would fetch itself with a roundtrip to server the application would not scale at all.

QueryPlan has multiple steps:

  1. Statically figure out Hierarcy building expressions (the nestings). On this level we only collect Class and Relation + the classes that expressions used the allinstances operator on
  2. Statically figure out what the other columns use (the non nestings)

From these 2 steps we have static information about what TYPE of information that will - at one point or another - be used by the view - per hierarcy level

This page was edited 23 days ago on 03/26/2024. What links here