Many2one auto-completion too slow with many resources
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Odoo Web (MOVED TO GITHUB) |
Fix Released
|
Medium
|
Unassigned |
Bug Description
Hello,
On the new webclient, about the autocomplete feature when we type a name in a many2one.
As instance, on a database with ~12000 products
- we create new sale order line
- we start typing a product name
- the client starts polling to search the products
- when we have finished to type the product's name, the gears starts (and blocks)
- we can see the list of proposed products growing and changing many times (it's like if i could see the proposition for each new letter typed) and we have to wait around 10 seconds before to have the selection list and no more be stucked
- now, if instead of typing the name in the text box, I write in a text editor and copy-paste it in the box, I get a result instantaneously.
Without further investigation, my feeling is that the autocomplete polls for a auto-complete selection at each char typed.
It works perfectly with a few products, but with a real products database, I think it needs some adjustments, as instance, call for the autocomplete only after after a delay when we stop typing, but I'm not an expert of such web interfaces, I bet on you to find the best solution ;-)
Thanks & Best Regards
Guewen
Related branches
Changed in openerp-web: | |
importance: | Undecided → Medium |
status: | New → Confirmed |
status: | Confirmed → In Progress |
We're investigating this... for the record, here is a set of queries for populating a test database with 100k products for example:
insert into product_template (id, name, supply_method, standard_price, mes_type, uom_id, uom_po_id, type, procure_method, cost_method, categ_id, sale_ok, purchase_ok) select generate_series, ('Product ' || generate_ series: :text), 'buy', 30.0, 'fixed', 4, 4, 'service', 'make_to_stock', 'standard', 1, true, true from generate_ series( 1100000, 1200000) ; series: :text), generate_series, '', true from generate_ series( 1100000, 1200000) ;
insert into product_product (name_template, product_tmpl_id, valuation, active) select ('Product '||generate_
update product_product set active=true;