Commit Graph

266 Commits

Author SHA1 Message Date
Olivier Dony 6da2d94357 [FIX] read_group: remove prohibitive n^2 operations, could freeze the server on large group_by results
This patch replaces two O(n^2) operations, one 
filter and one sort, with O(n) or better operations.
It takes slightly more memory due to the use of
one extra data copy, but takes virtually no time
to process even with 600k result lines, whereas
the previous code would just freeze the server
for a long time.

bzr revid: odo@openerp.com-20120609010549-xdktw6xte7fmxjbq
2012-06-09 03:05:49 +02:00
Olivier Dony fe39e36f35 [FIX] export_data: avoid access error while auto-generating external IDs during export
bzr revid: odo@openerp.com-20120608213018-9oe5wvtn8egp30zm
2012-06-08 23:30:18 +02:00
Olivier Dony 14a6cd841f [FIX] OPW 575395: orm: don't defer function field computation during creation of parent records (inheritS)
An optimization in the set() method of o2m fields
disables the direct computation of function fields
in order to avoid computing them line-by-line.
This is done with context key 'no_store_function',
and deferred at the end of the caller write() or
create() method.
This was unfortunately disabling all function fields
in parent model (via _inheritS) at the time of
creation, even though those were *not* batch-computed
at the end.
The patch removes the 'no_store_function' field in
the context that is passed to inheritS parents during
creation, as it was never meant to be passed.

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

bzr revid: odo@openerp.com-20120604114536-4t6ulwl93zalfgr7
2012-06-04 13:45:36 +02:00
msh-openerp 22681ae55f [FIX]Fixed the issue of translation for node which has avg.
bzr revid: msh@tinyerp.com-20120419040409-ecj6vxddibt9l5vu
2012-04-19 09:34:09 +05:30
Vo Minh Thu 634a1090e0 [MERGE] merged trunk.
bzr revid: vmt@openerp.com-20120323111750-jwvm1m533x2qc25t
2012-03-23 12:17:50 +01:00
olt@tinyerp.com 6aa9f06dae [FIX] 'create_instance' method: the check for parent_model existence need to be done before accessing that object attributes or methods
bzr revid: olt@tinyerp.com-20120309081929-g4b8d34e93at49wf
2012-03-09 09:19:29 +01:00
Vo Minh Thu 43b8317657 [MERGE] merged 6.1.
bzr revid: vmt@openerp.com-20120305163730-tkva77i5hhdy9jd1
2012-03-05 17:37:30 +01:00
Olivier Dony 769ea34281 [FIX] orm: model auto-init - better algorithm for detecting stale constraints during update
bzr revid: odo@openerp.com-20120223175851-bihxp0l0ax1xhf5g
2012-02-23 18:58:51 +01:00
Olivier Dony 819334f0aa [FIX] orm: inherited `active` fields should be used for the implicit filtering
This is for example used by hr.employee which
inherits from resource.resource, with the
`active` field located on the resource model.
Simplified some code too.

bzr revid: odo@openerp.com-20120223141635-p117b5wvvreuj40c
2012-02-23 15:16:35 +01:00
olt@tinyerp.com 3be394de8a [FIX] pep8: tab -> space
bzr revid: olt@tinyerp.com-20120223094355-ejsm256vn58bn4i2
2012-02-23 10:43:55 +01:00
Olivier Dony 3f6524a6e2 [FIX] Correct remaining SQL now() calls, must use UTC
This is essential to have the proper behavior for
timestamps: on the database side we exclusively 
store UTC data (no DST issues, etc.) as naive
timestamps (to prevent Postgres from messing with them).
Inside OpenERP server/addons we work again with
pure UTC data (much simpler), and only render
them according to the user's timezone when they
are displayed in the user interface or rendered
in a PDF report.

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

bzr revid: odo@openerp.com-20120220105943-v3m0i50phrurt8x6
2012-02-20 11:59:43 +01:00
Vo Minh Thu 64ba0da663 [FIX] fields: duplicate float fields per registry (because they are stateful).
lp bug: https://launchpad.net/bugs/929483 fixed

bzr revid: vmt@openerp.com-20120215101714-zjsdcizzb1m2x6k5
2012-02-15 11:17:14 +01:00
Vo Minh Thu 589c12ada0 [IMP] gunicorn: moved database signaling to RegistryManager.
bzr revid: vmt@openerp.com-20120208142834-52oxaq72gghj687h
2012-02-08 15:28:34 +01:00
Vo Minh Thu 1ab6f8883c [IMP] logging: _logger.warn() replaced by _logger.warning().
bzr revid: vmt@openerp.com-20120202092634-pylu3098p5c0mays
2012-02-02 10:26:34 +01:00
Antony Lesuisse 91ef8c1c51 [FIX] review according to xmo :)
bzr revid: al@openerp.com-20120201235604-tr5iq676pzk8bi1m
2012-02-02 00:56:04 +01:00
Antony Lesuisse 1a62602c86 [MERGE] trunk
bzr revid: al@openerp.com-20120131211744-whzzo0dh6w1kptng
2012-01-31 22:17:44 +01:00
Vo Minh Thu 283304f9a2 [IMP] warnings: turn warnings.warn into logging.warning:
Warnings are handled with the other logs (and not always sent to stderr),
they also appear under a module __name__ channel instead of py.warn.
The disadvantage is that there is no longer specific warnings,
such as pending deprecation warning or deprecation warning.

bzr revid: vmt@openerp.com-20120125132407-u33idc0qh7ecs1i5
2012-01-25 14:24:07 +01:00
Xavier Morel d181a5e7ac [IMP] move browse_record to logging, __init__ docstring to sphinx info fields
bzr revid: xmo@openerp.com-20120125113429-6stglci05rxpfo5j
2012-01-25 12:34:29 +01:00
Vo Minh Thu f057f2afa5 [IMP] openerp.loglevels: removed calls to openerp.loglevels.Logger().
bzr revid: vmt@openerp.com-20120124173017-c66z3kq11wmbrrke
2012-01-24 18:30:17 +01:00
Vo Minh Thu f22f2fc770 [IMP] openerp.{modules,osv}: _logger with fully qualified module name.
bzr revid: vmt@openerp.com-20120124124252-91g3ysf33zsq4nhd
2012-01-24 13:42:52 +01:00
Vo Minh Thu 0ed4377cf8 [MERGE] merged trunk.
bzr revid: vmt@openerp.com-20120112155027-u3bagec0g9fqr0yi
bzr revid: vmt@openerp.com-20120116110434-ckhp01ze83cwm32y
2012-01-16 12:04:34 +01:00
Vo Minh Thu daa41b61c1 [MERGE] merged trunk.
bzr revid: vmt@openerp.com-20120110154333-kdwsff0faftcwvku
2012-01-10 16:43:33 +01:00
Vo Minh Thu 013794b978 [IMP] orm: cosmetics (and the runbot will build this branch again).
bzr revid: vmt@openerp.com-20120110153448-ot1vpcmwjbeykx9t
2012-01-10 16:34:48 +01:00
Vo Minh Thu 455e47e5e8 [IMP] openerp.addons: openerp.addons is used instead of
openerp.modules as the namespace of the OpenERP addons.

bzr revid: vmt@openerp.com-20120109124120-06gguu3lzxv49i3j
2012-01-09 13:41:20 +01:00
Vo Minh Thu f24a29717e [FIX] orm: correctly set the module name on the model, even when imported with
`import openerp.modules.<module_name>`.

bzr revid: vmt@openerp.com-20120109101647-4hvy3n6eifzeozzq
2012-01-09 11:16:47 +01:00
Fabien Pinckaers 91cafbee7e [FIX] import/export fully working through web interface
bzr revid: fp@tinyerp.com-20111228205757-vxdw1j6gcsyvjj3m
2011-12-28 21:57:57 +01:00
Fabien Pinckaers ae92ec17ea [FIX] import/export
bzr revid: fp@tinyerp.com-20111228194506-nag2kqk1w1uyk43p
2011-12-28 20:45:06 +01:00
Olivier Dony a58a2a5e18 [MERGE] orm: dead code removal, courtesy of Olivier Macchioni
bzr revid: odo@openerp.com-20111222212859-z8svmrd3yosduelo
2011-12-22 22:28:59 +01:00
Olivier Dony 24b283567d [FIX] orm: typos
bzr revid: odo@openerp.com-20111222182023-kspwaukocijhh4cq
2011-12-22 19:20:23 +01:00
Olivier Dony d925235e62 [MERGE] sync with trunk
bzr revid: odo@openerp.com-20111222102555-bydsozbdu6urkj31
2011-12-22 11:25:55 +01:00
Olivier Dony 250772d403 [FIX] read_group: NULL->False for grouped boolean fields
We need to coalesce NULLs to False when grouping
boolean fields, otherwise we get duplicate groups
sharing the same rows.

bzr revid: odo@openerp.com-20111220151131-xir8dv7sdy9hbrfx
2011-12-20 16:11:31 +01:00
Fabien Pinckaers 3d364c3de1 [IMP] allow non integer for ID's
bzr revid: fp@tinyerp.com-20111219220954-mlqe3f6gkonlzor3
2011-12-19 23:09:54 +01:00
Olivier Macchioni f3eedcd6e3 [FIX] removed dead code
bzr revid: mac@olivier-macchionis-macbook-pro-2.local-20111214222102-s22izy21xejtwrmu
2011-12-14 23:21:02 +01:00
Naresh (OpenERP) 74fbbc36e1 [FIX]:Properties should be deleted when the related record is deleted
lp bug: https://launchpad.net/bugs/891580 fixed

bzr revid: nch@tinyerp.com-20111202102202-0jzzlqu68fypbbl3
2011-12-02 15:52:02 +05:30
Olivier Dony 7fa02d56b2 [MERGE] Bug 303455: orm.create() - use local before inherited, courtesy of Thibaut DIRLIK (Logica)
bzr revid: odo@openerp.com-20111201121503-bf7671is06atteb4
2011-12-01 13:15:03 +01:00
Xavier Morel 84004e8923 [REM] import_data: unused variables, redundant parens and variables
bzr revid: xmo@openerp.com-20111201121257-3uq3fyjumd9bvi9a
2011-12-01 13:12:57 +01:00
Xavier Morel f17633dad7 [FIX] correctly restore partial import index when restarting an import
bzr revid: xmo@openerp.com-20111201121040-c0547g8ev38r6u7t
2011-12-01 13:10:40 +01:00
Olivier Dony 90041e5d81 [IMP] read_group: pass superuser uid to group_by_full methods to avoid access right issues
This helps avoid access right issues in restricted
contexts, such as embedded web client, or shared
access (via portal or share wizard).

bzr revid: odo@openerp.com-20111123133312-a4ywnivnex97xtk2
2011-11-23 14:33:12 +01:00
Olivier Dony a50af56a05 [FIX] orm.read_group: fix merge logic for read_group_full:
- Properly merge results with list of values, even with reversed sort
- Pass `read_group_order` to `_group_by_full` implementations to let them
  handle sorting if they want.

bzr revid: odo@openerp.com-20111121164326-un722g5nsuzq94m5
2011-11-21 17:43:26 +01:00
Olivier Dony e17b51e384 [FIX] orm.read_group: check for empty groupby list
This is very ugly and needs a real refactoring,
just adding one more test for the time being.

bzr revid: odo@openerp.com-20111118153333-2skgbd197q8tb7uc
2011-11-18 16:33:33 +01:00
Olivier Dony 57d0d62b38 [MERGE] orm.read_group: partial refactoring, by xmo
bzr revid: odo@openerp.com-20111118152629-o4ult41v905dfj1t
2011-11-18 16:26:29 +01:00
Olivier Dony ca458dd539 [FIX] orm.read_group: fix issues in read_group_full and rewrite/cleanup
Attempt to make it into a more maintainable/readable
separate method.

bzr revid: odo@openerp.com-20111118133642-b3126a5sph8bivmu
2011-11-18 14:36:42 +01:00
Fabien Pinckaers 34a9ecf339 fix
bzr revid: fp@tinyerp.com-20111118121103-vmlus5c14icgpvdv
2011-11-18 13:11:03 +01:00
Olivier Dony ca5fcc2bdf [IMP] orm,fields: some cleanup for sparse field implementation (wip)
bzr revid: odo@openerp.com-20111117143010-9nv7inr5ijzykgem
2011-11-17 15:30:10 +01:00
Olivier Dony 3bf3279f25 [MERGE] Implementation of sparse field (to review), by Sebastien Beau, Akretion
bzr revid: odo@openerp.com-20111116172525-rmri79n9hpf2plwg
2011-11-16 18:25:25 +01:00
Olivier Dony 61c0e012b9 [MERGE] warn when create()/write() touches unknown field, courtesy of Stefan Rijnhart (Therp)
A patch will follow in addons to get rid of most of the
warnings introduced here.

bzr revid: odo@openerp.com-20111116113858-52nzw58ts7xnlxhe
2011-11-16 12:38:58 +01:00
Christophe Simonis 19e7261bc0 [FIX] group_by_full
bzr revid: chs@openerp.com-20111115155355-s7j3s27i2hl7xi11
2011-11-15 16:53:55 +01:00
Xavier Morel c83d6d88a0 [IMP] selection of fields to aggregate in read_group
bzr revid: xmo@openerp.com-20111115120028-wal8o839s4u427m3
2011-11-15 13:00:28 +01:00
Xavier Morel 2b7a072a3e [IMP] orm: make creation of dict from key names (with constant value) clearer
also only generate False values for float and integer fields, since they're the only aggregated values in the first place

bzr revid: xmo@openerp.com-20111115114527-t92a37kdw4yqqs4p
2011-11-15 12:45:27 +01:00
Fabien Pinckaers 1c2ab2927d unusedcode
bzr revid: fp@tinyerp.com-20111114001216-etl5g0dl3ya1xfvs
2011-11-14 01:12:16 +01:00