odoo/openerp/osv
Thibault Delavallée bd0bae6625 [MERGE] Perform auto-join and mailboxes+needaction speed udpate. Server-side branch, holding a refactoring of expression.parse and the addition of _auto_join feature on relational fields.
expression.parse: refactored the main parsing loop, now using source and result stacks. Leaf elements are encapsulated into a specific object, allowing to delegate the join condition formation, working table management and table aliases generation to them. The parsing is now a simple loop taking a leaf, doing one action on it, and putting the result back to be analyzed or in the results. This allows to avoid having nested loops and uncontrolled results.

Other modifications :
- updated the generation of order_by to take into account the table now referred using aliases
- updated Query object to use the aliases
- fixed an outstanding bug about _order, now handled as order. This means that putting direct SQL into _order of models will not be supported anymore, because of the computing complexity now that we have multiple joins in queries. The branch holds the patch from Paulius Sladkevičius
- updated and added tests
- added a basic documentation for the freature

lp bug: https://launchpad.net/bugs/1070757 fixed

bzr revid: tde@openerp.com-20121210154652-6sab9usb38i7adlh
2012-12-10 16:46:52 +01:00
..
__init__.py API docs: settings file and titles at modules 2011-06-23 12:03:57 +03:00
expression.py [IMP] Added an assert on the alias length. 2012-12-07 17:09:33 +01:00
fields.py [MERGE] Sync with trunk. 2012-12-10 09:38:05 +01:00
orm.py [MERGE] Sync with trunk. 2012-12-10 09:38:05 +01:00
osv.py [IMP] dbname on localthread for logging 2012-12-09 04:49:10 +01:00
query.py [MERGE] Perform auto-join and mailboxes+needaction speed udpate. Server-side branch, holding a refactoring of expression.parse and the addition of _auto_join feature on relational fields. 2012-12-10 16:46:52 +01:00