Project

General

Profile

Bug #72010

(DeadlockDetected: ERREUR: interblocage (deadlock) détecté)

Added by Guillaume Baffoin 2 months ago. Updated 2 months ago.

Status:
Solution déployée
Priority:
Normal
Target version:
-
Start date:
05 December 2022
Due date:
% Done:

0%

Estimated time:
Patch proposed:
Yes
Planning:
No

Description

On recoit de mails sur le cron de wcs, similaire a #70952 sur des deadlock

Traceback (most recent call last):
  File "/usr/lib/wcs/manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/lib/python3/dist-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
    utility.execute()
  File "/usr/lib/python3/dist-packages/django/core/management/__init__.py", line 375, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/lib/python3/dist-packages/django/core/management/base.py", line 323, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/usr/lib/python3/dist-packages/django/core/management/base.py", line 364, in execute
    output = self.handle(*args, **options)
  File "/usr/lib/python3/dist-packages/wcs/qommon/management/commands/cron.py", line 97, in handle
    cron_status, timestamp = sql.get_and_update_cron_status()
  File "/usr/lib/python3/dist-packages/wcs/sql.py", line 692, in f
    return func(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/wcs/sql.py", line 4624, in get_and_update_cron_status
    cur.execute(
psycopg2.errors.DeadlockDetected: ERREUR:  interblocage (deadlock) détecté
LINE 1: UPDATE wcs_meta

DETAIL:  Le processus 87025 attend RowExclusiveLock sur relation 66395433 de la base de données 66392077 ; bloqué par le processus 87026.
Le processus 87026 attend ShareLock sur transaction 625655053 ; bloqué par le processus 87025.
HINT:  Voir les journaux applicatifs du serveur pour les détails sur la requête.

Files

Associated revisions

Revision 75725a8b (diff)
Added by Pierre Ducroquet 2 months ago

create index only when needed (#72010)

History

#2

Updated by Pierre Ducroquet 2 months ago

Bug trouvé a priori.
C'est parce que do_meta_table fait systématiquement un ALTER sur la table wcs_meta, qui tente de poser un lock global sur la table et qui va donc entrer en conflit avec l'autre tâche.

#3

Updated by Benjamin Dauvergne 2 months ago

  • Status changed from Solution proposée to Solution validée
  • Assignee set to Pierre Ducroquet
#4

Updated by Pierre Ducroquet 2 months ago

  • Status changed from Solution validée to Résolu (à déployer)
commit 75725a8b48f38fffb4bbf53aa88308eaca0b645a (HEAD -> main, origin/wip/72010-sql-extraneous-wcs_meta_key, origin/main, origin/HEAD, wip/72010-sql-extraneous-wcs_meta_key)
Author: Pierre Ducroquet <pducroquet@entrouvert.com>
Date:   Mon Dec 5 10:35:57 2022 +0100

    create index only when needed (#72010)
#5

Updated by Transition automatique 2 months ago

  • Status changed from Résolu (à déployer) to Solution déployée

Also available in: Atom PDF