Message3567
I had some slightly different solutions. Although "getnodes" I've called
"fetch()". It fetches nodes based on a collection of ids and using the
'using' SQL-keyword. It also features defaults for other backends.
There are also a few smaller optimisations, including caching
pre:fetch() for batch()es. Also, in a few places identified by
profiling, I've replaced multiple self.db-calls, with a local
db-variable. (Tip from
http://wiki.python.org/moin/PythonSpeed/PerformanceTips#Avoidingdots...)
In general, though, I think that filter() returning complete nodes is
the way to go. The get()-API will probably only ever perform well on
DBM-style direct-file databases. Other databases, in particular *SQL,
should attempt to fetch as many rows in one go as possible, and the API
should encourage that. |
|
Date |
User |
Action |
Args |
2009-02-21 15:06:07 | rawler | set | messageid: <1235228767.04.0.988744097846.issue2550514@psf.upfronthosting.co.za> |
2009-02-21 15:06:07 | rawler | set | recipients:
+ rawler, richard, stefan |
2009-02-21 15:06:06 | rawler | link | issue2550514 messages |
2009-02-21 15:06:06 | rawler | create | |
|