Project

General

Profile

Development #26911

authentic: empêcher celery/kombu de manipuler le timeout par défaut des sockets

Added by Benjamin Dauvergne 8 months ago. Updated 3 months ago.

Status:
Solution proposée
Priority:
Normal
Category:
-
Start date:
02 Oct 2018
Due date:
% Done:

0%

Patch proposed:
Yes
Planning:
No

Description

Actuellement la notification se fait dans un thread qui partage malheureusement
ce timeout avec le reste d'authentic, le but ici est de remplacer cela par un
simple os.fork().

0002-authentic-send-celery-notification-in-a-child-proces.patch View (15.6 KB) Benjamin Dauvergne, 03 Oct 2018 12:13 AM

0001-tests-simplify-fixture-using-standard-ones-26911.patch View (1.11 KB) Benjamin Dauvergne, 03 Oct 2018 12:13 AM

0002-authentic-send-celery-notification-in-a-child-proces.patch View (15.6 KB) Benjamin Dauvergne, 02 Mar 2019 11:30 AM

0001-tests-simplify-fixture-using-standard-ones-26911.patch View (1.11 KB) Benjamin Dauvergne, 02 Mar 2019 11:30 AM

History

#1 Updated by Benjamin Dauvergne 8 months ago

Le premire patch c'est kdo.

Le deuxième c'est assez moche et j'ai du pas mal me contorsionner pour arriver
à vérifier que notify_agents() était bien appelé dans le processus fils (et je
me dis que ça pourrait tout de même foirer si jamais les pickles posé dans la
queue dépasse la taille de buffer des pipes système, en effet il y a un
potentiel deadlock entre le waitpid() dans le parent et l'écriture dans le pipe
qui empêche l'appel à exit() si ça bloque, mais ça ne concerne que les tests).

En attendant ça semble marcher et les tests passent (reste à faire un test
grandeur nature).

#4 Updated by Benjamin Dauvergne 6 months ago

  • Status changed from Solution proposée to Nouveau

#5 Updated by Benjamin Dauvergne 6 months ago

  • Tracker changed from Support to Development
  • Status changed from Nouveau to Solution proposée

Also available in: Atom PDF