openerp-expert-framework team mailing list archive
-
openerp-expert-framework team
-
Mailing list archive
-
Message #00321
Trunk vs. trunk-pg84
Let me share my progress over the last days:
I have been trying to see which features of my server work should be pushed
into v6.0 (if ever accepted).
The most important of them would be the "pg84" feature, which is a set of
optimizations that push some of the processing down to the database (postgres
8.4, if available). Most of my work on the framework, fyi, is at that
"trunk-pg84" branch.
The obvious question is, does it deliver anything? does it break anything
else?
I discovered the 'base_quality_interrogation.py' script, that is supposed to
run the server and perform the trivial tasks (run server, create db etc.) in a
controlled manner. The first time I run it, sadly, it proved that no sense of
quality had ever been considered into the script. So, spent a couple of days
fixing the interrogation script, first.
The two versions that would be compared are the "trunk-xrg" and "trunk-pg84"
branches, respectively containing trivial fixes and the optimizations. I
couldn't do that against the official trunk, because this is broken to the level
that the interrogation script wouldn't work.
Then, a feature was added into both branches, so that the server would report
its process times. Easy feature, I think many of us need. A couple of patches
later, both branches were operational.
Now, I could run the b-q-i (with the "create-db" operation):
trunk-pg84: Server ending at: User: 11.300, Sys: 2.200
trunk-xrg: Server ending at: User: 12.200, Sys: 2.250
Given that in both cases most of the processing time would be parsing the xml
files and filling the same objects with the same amount of data, this 0.9sec is
enough to make me smile.
todo: using the 'set-pgmode' script and the 'get_os_time' feature, I could
measure the time needed for some standard operations (like running a wizard or
so) in both pg84 and 'old' database mode.
I would be happy to assist any of you trying this branch, too, for the sake of
performance dimensioning.