[entity] ensure the .related(entities=False) parameter is honored all the way down (closes #2755994)
As of today, such a call will always fill the relation cache by
calling .entities() on every single related rset entry.
As a consequence, the `limit` parameter handling also had to be fixed.
It was bogus in the following ways:
* not used in the related_rql, hence potentially huge database
requests, but also actually
* foolishly used in the .entities()-calling cache routine we now
bypass (this changeset ticket's main topic)
Now:
* we set a limit on the rql expression, and
* forbid caching if given a non-None limit (as we don't want to make
the cache handling code more complicated than it is already)
With this, entity.unrelated gets a better limit implementation (so the
code in related/unrelated is nice and symmetric)
Risk:
* _cw_relation_cache disappears completely, which is good, but this is
Python, so you never know ...
.TH cubicweb\-ctl 1 "2010-01-14" cubicweb\-ctl
.SH NAME
.B cubicweb\-ctl
\- cubicweb control utility
.SH SYNOPSIS
.B cubicweb-ctl <command>
[
.I OPTIONS
] [
.I <command arguments>
]
.SH DESCRIPTION
.PP
CubicWeb utility to create and control instances, and more generally do all
cubicweb's related tasks you can have to do using the command line. Available
commands will depends on which part of the framework are installed.
.PP
Type
.B "cubicweb\-ctl <command> \fB\-\-help\fR"
for more information about a specific command.
.SH COPYRIGHT
Copyright (c) 2003-2010 LOGILAB S.A. (Paris, FRANCE).
http://www.logilab.fr/ -- mailto:contact@logilab.fr