From 22084bc52edf4fe620e33aed675a4464ef95f8f1 Mon Sep 17 00:00:00 2001 From: Nicolas Martinelli Date: Thu, 14 Jun 2018 14:21:02 +0200 Subject: [PATCH] [FIX] website_quote: token assignation Speed up assignation of initial access tokens for large databases. opw-1856946 --- addons/website_quote/models/order.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/addons/website_quote/models/order.py b/addons/website_quote/models/order.py index 72852c2a083..b6af2b227cc 100644 --- a/addons/website_quote/models/order.py +++ b/addons/website_quote/models/order.py @@ -314,6 +314,17 @@ class sale_order(osv.osv): def _get_payment_type(self, cr, uid, ids, context=None): return 'form' + def _set_default_value_on_column(self, cr, column_name, context=None): + if column_name != 'access_token': + super(sale_order, self)._set_default_value_on_column(cr, column_name, context=context) + else: + query = """UPDATE %(table_name)s + SET %(column_name)s = md5(random()::text || clock_timestamp()::text)::uuid + WHERE %(column_name)s IS NULL + """ % {'table_name': self._table, 'column_name': column_name} + cr.execute(query) + + class sale_quote_option(osv.osv): _name = "sale.quote.option" _description = "Quotation Option"