diff options
| author | Xavier Morel <xmo@openerp.com> | 2012-07-16 08:49:03 +0200 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2012-07-16 08:49:03 +0200 |
| commit | 835cb5bcfac1400f87c78a813cfa160cf927d942 (patch) | |
| tree | 3a7ef07e3b5170bc47ca4f2040b9e25fd41750a7 /addons/web/doc/module/static/src/css/web_example.css.1.diff | |
| parent | e7f4ebc00024fbde96fce3ca6fa71b1609d55b86 (diff) | |
[FIX] concurrency issue when installing base_crypt from web client
Basically (and apparently), as base_crypt performs its conversion of
passwords to encrypted passwords a new request arrives and tries to
check its login, blowing up during the update.
* For the conversion, lock the whole table before updating the
passwords, as we need to touch every record anyway we can just put a
big exclusive lock on res_users
* Ideally we'd be able to just lock the relevant row of res_users in
check/_login, but for some reason I don't quite get this does not
work and still yields
> TransactionRollbackError: could not serialize access due to concurrent update
except on the SELECT FOR UPDATE query instead of the UPDATE one. The
docs don't seem to help, and replacing the FOR UPDATE row-level lock
by a table lock works even though they appear pretty much at the
same point. Me no get.
bzr revid: xmo@openerp.com-20120716064903-403pth90kupgfdv3
Diffstat (limited to 'addons/web/doc/module/static/src/css/web_example.css.1.diff')
0 files changed, 0 insertions, 0 deletions
