Comment 15 for bug 307718

Revision history for this message
Fabien (Open ERP) (fp-tinyerp) wrote : Re: [Bug 307718] Re: TOO MANY READS WHEN VIEWING A FORM VIEW: VERY SERIOUS PERF KILLER!

Hello Raphaël,

Open ERP does not impose O(1) results for everything. For us, the
editor, O(1) is part of our quality policies (and the
base_module_quality module has been made to check it). To be more exact,
we try to make module with a complexity of max: O(log(n)).

But you can develop modules in O(n) complexities. Most of the time it's
not a problem (having 80 requests to load a list of 80 records is
acceptable for the end-users delay).

The big problem is not in the O(n). O(n) is acceptable in all
computations. The real problem is O(n²), it's when a module has a
complexity for some computation of O(n) and, this modules call another
module that also has a function of a complexity of O(n). Then, it can
become a O(n²) which is not acceptable. As integrator, most of the time,
simply adds a layer above editor's module, if the editor continues to
develop module with complexity of maximum O(1), then integrators can
develop modules of O(n) without too much risks of time explosion. That's
why I am strict. But being strict at the editor side, allows integrators
to be less strict for customers's specific modules.

Raphaël Valyi - http://www.Smile.fr wrote:
> Ok, might be on our side then. Not time to check again.
>
> Still, your default choice makes coding modules harder. I'm not sure
> that's a good policy to make it the only choice because customers
> already tend not to be willing to pay for all the verticalization
> development (which certainly balance a part of the open source and free
> of charge advantage), and this extra quality requirement only add to
> this. I mean it's very okay to have it and even great for customers who
> can afford having only top O(1) modules, but I'm still not sure it's
> smart to impose it. We will look after this later on then.

Another point: if you don't do this quality checks in upstream, you may
have to pay more later to fix this, when the customer will think his
software is slow, when you have more data.

--
Fabien Pinckaers
CEO Tiny - OpenERP Editor
Chaussée de Namur 40
B-1367 Grand-Rosière
Belgium
Phone: +32.81.81.37.00
Fax: +32.81.73.35.01
Web: http://openerp.com

Great Achievements Start With Tiny Investments
   -- Marty, 2005