Thibault Delavallée (OpenERP) has proposed merging 
lp:~openerp-dev/openobject-server/trunk-fix-unread-results-tde into 
lp:openobject-server.

Requested reviews:
  OpenERP Core Team (openerp)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-fix-unread-results-tde/+merge/140912
-- 
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-fix-unread-results-tde/+merge/140912
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openobject-server/trunk-fix-unread-results-tde.
=== modified file 'openerp/addons/base/ir/ir_needaction.py'
--- openerp/addons/base/ir/ir_needaction.py	2012-12-17 14:47:53 +0000
+++ openerp/addons/base/ir/ir_needaction.py	2012-12-20 14:36:24 +0000
@@ -61,5 +61,5 @@
         dom = self._needaction_domain_get(cr, uid, context=context)
         if not dom:
             return 0
-        res = self.search(cr, uid, (domain or []) + dom, limit=100, order='id DESC', context=context)
+        res = self.search(cr, uid, (domain or []) + dom, limit=1000, order='id DESC', context=context)
         return len(res)

=== modified file 'openerp/osv/orm.py'
--- openerp/osv/orm.py	2012-12-18 22:39:59 +0000
+++ openerp/osv/orm.py	2012-12-20 14:36:24 +0000
@@ -4857,7 +4857,15 @@
             return res[0][0]
         cr.execute('SELECT "%s".id FROM ' % self._table + from_clause + where_str + order_by + limit_str + offset_str, where_clause_params)
         res = cr.fetchall()
-        return [x[0] for x in res]
+
+        # TDE note: with auto_join, we could have several lines about the same result
+        # i.e. a lead with several unread messages; we uniquify the result using
+        # a fast way to do it while preserving order (http://www.peterbe.com/plog/uniqifiers-benchmark)
+        def _uniquify_list(seq):
+            seen = set()
+            return [x for x in seq if x not in seen and not seen.add(x)]
+
+        return _uniquify_list([x[0] for x in res])
 
     # returns the different values ever entered for one field
     # this is used, for example, in the client when the user hits enter on

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : openerp-dev-gtk@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to