← Back to team overview

launchpad-dev team mailing list archive

Re: Block the use of non-cached References on model objects

 

On Mon, May 9, 2011 at 8:59 PM, Robert Collins
<robertc@xxxxxxxxxxxxxxxxx> wrote:
> On Mon, May 9, 2011 at 8:41 PM, Jeroen Vermeulen <jtv@xxxxxxxxxxxxx> wrote:
>> My vague and unsubstantiated concerns are that: (1) Eager-loading the colder
>> portions of a reference graph may sometimes be a net loss in the grand
>> scheme of things (considering cold-load speed, hot-load speed, oopses,
>> engineering time etc.).  And that (2) Brittleness in requiring explicit
>> exceptions to break out of eager-loading may provide false justification for
>> accepting those losses.
>
> If we use it in a request, we use it, and eager loading along an
> appropriate dimension is better. If we don't use it we shouldn't load
> it at all.
> I don't understand (2).
>
>> I'm sure wholesale eager loading is faster than no eager loading, but do we
>> know how much bad we'd be accepting with the good?  This is where
>> policy/mechanism separation comes in.  Wouldn't we end up with the
>> hoop-jumping required for optimization, and the pain from the oopses we
>> introduced, driving our priorities when they should be driven by our actual
>> performance goals?  AFAICS non-intrusive profiling ahead of optimization
>> would show us the same data and support the same changes, but without these
>> problems.
>
> I'm very data driven, all the eager loading I've put in, or advised
> others to put in has been data driven.
>
> I don't see - in practice - the issues you talk about. We have
> specific service entry points that are entirely suited for stating
> their needs, and tolerable idioms to do so.
>
> I don't want to let the perfect be the enemy of the good.

Addendum: I think you are arguing against a strawman; I didn't observe
anyone suggest turning on a block for all pages all at once or even
for a single page in all circumstances without thought; the question
was 'is a block specific to references a useful tool to have', to
which I argued 'yes because you be confident that everything is eager
loaded'.

-Rob


References