From 1ce7098037ecf36929357443523979d6e01e3ff5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Thu, 6 Mar 2008 11:00:25 +0100 Subject: [PATCH] Fix change language on user to Many2One and add some traceback --- trytond/osv/osv.py | 2 +- trytond/web_service/db.py | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/trytond/osv/osv.py b/trytond/osv/osv.py index 08d4f73e85..9cdb54795e 100644 --- a/trytond/osv/osv.py +++ b/trytond/osv/osv.py @@ -66,7 +66,7 @@ class OSVService(Service): sys.exc_type, sys.exc_value, sys.exc_traceback)) logger = Logger() logger.notify_channel("web-services", LOG_ERROR, - 'Exception in call: ' + tb_s) + 'Exception in call: \n' + tb_s) raise def execute(self, dbname, user, object_name, method, *args, **kargs): diff --git a/trytond/web_service/db.py b/trytond/web_service/db.py index 90621e4c11..5e925ef924 100644 --- a/trytond/web_service/db.py +++ b/trytond/web_service/db.py @@ -34,7 +34,8 @@ class DB(Service): cursor.conn.set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT) try: try: - cursor.execute('CREATE DATABASE ' + db_name + ' ENCODING \'unicode\'') + cursor.execute('CREATE DATABASE ' + db_name + \ + ' ENCODING \'unicode\'') cursor.commit() cursor.close() @@ -50,7 +51,8 @@ class DB(Service): 'SET translatable = True ' \ 'WHERE code = %s', (lang,)) cursor.execute('UPDATE res_user ' \ - 'SET language = %s ' \ + 'SET language = ' \ + '(SELECT id FROM ir_lang WHERE code = %s LIMIT 1) '\ 'WHERE login <> \'root\'', (lang,)) cursor.commit() cursor.execute('SELECT login, login as password, name ' \ @@ -60,6 +62,11 @@ class DB(Service): except: logger.notify_channel("web-service", LOG_ERROR, 'CREATE DB: %s failed' % (db_name,)) + import traceback, sys + tb_s = reduce(lambda x, y: x+y, traceback.format_exception( + sys.exc_type, sys.exc_value, sys.exc_traceback)) + logger.notify_channel("web-service", LOG_ERROR, + 'Exception in call: \n' + tb_s) raise else: logger.notify_channel("web-service", LOG_INFO, @@ -83,6 +90,11 @@ class DB(Service): except: logger.notify_channel("web-service", LOG_ERROR, 'DROP DB: %s failed' % (db_name,)) + import traceback, sys + tb_s = reduce(lambda x, y: x+y, traceback.format_exception( + sys.exc_type, sys.exc_value, sys.exc_traceback)) + logger.notify_channel("web-service", LOG_ERROR, + 'Exception in call: \n' + tb_s) raise else: logger.notify_channel("web-services", LOG_INFO,