Yes, Context. You can create your own class containing a bundle of properties you are interested in, put an instance inside a Context (so that it gets returned if someone calls Context.unwrap(YourClass.class)) and pass that Context to your planner's constructor.
It will be available via RelOptPlanner.getContext(), hence available in every RelNode (via cluster) and in every RelOptRuleCall. See interface org.apache.calcite.plan.Context, class org.apache.calcite.plan.Contexts. You could add a method to Contexts to chain several Context instances together, if it helps. Julian On Wed, Mar 11, 2015 at 4:30 PM, Jesus Camachorodriguez <[email protected]> wrote: > Hello, > > Is there a way already implemented in Calcite to register properties e.g. max > memory size, max split size, in the cluster so they can be used all over the > optimization process? > > Thanks, > Jesús
