Projet

Général

Profil

Bug #86451

Trace dans cached_db.SessionStore.load() (était: Passerelle pas bien recette)

Ajouté par Emmanuel Cazenave il y a 3 mois. Mis à jour il y a 3 mois.

Statut:
Fermé
Priorité:
Haut
Assigné à:
Version cible:
-
Début:
01 février 2024
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

De Guillaume sur la salon.

| je ne sais pas quel est le problème, surement lié a la montée de version bookworm. | en tout cas j'ai arreté passerelle sur les 2 front de test

Révisions associées

Révision 244ca2ab (diff)
Ajouté par Benjamin Dauvergne il y a 3 mois

misc: do not read not_on_or_after if session is not loaded (#86451)

Historique

#2

Mis à jour par Guillaume Baffoin il y a 3 mois

beaucoup d'erreur sur passerelle qui ressemble a ca :

févr. 01 15:21:26 front2 uwsgi/passerelle[2032270]: AttributeError: 'SessionStore' object has no attribute '_session_cache'
févr. 01 15:21:26 front2 uwsgi/passerelle[2032270]: During handling of the above exception, another exception occurred:
févr. 01 15:21:26 front2 uwsgi/passerelle[2032270]: Traceback (most recent call last):
févr. 01 15:21:26 front2 uwsgi/passerelle[2032270]:   File "/usr/lib/python3/dist-packages/django/contrib/sessions/backends/base.py", line 233, in _get_session
févr. 01 15:21:26 front2 uwsgi/passerelle[2032270]:     return self._session_cache
févr. 01 15:21:26 front2 uwsgi/passerelle[2032270]:            ^^^^^^^^^^^^^^^^^^^
#3

Mis à jour par Emmanuel Cazenave il y a 3 mois

Vraisemblablement la mise à jour de mellon, qui s'est passé tranquille, et ça se met à péter quand je met à jour passerelle qui redémarre le service qui charge le dernier mellon :

Start-Date: 2024-02-01  12:14:41
Commandline: apt full-upgrade -y -o Dpkg::Options::=--force-confold
Requested-By: bdauvergne (1200)
Upgrade: python3-django-mellon:amd64 (1.48-1~eob120+1, 1.50-1~eob120+1)
End-Date: 2024-02-01  12:14:41

Start-Date: 2024-02-01  14:58:43
Commandline: apt full-upgrade -y -o Dpkg::Options::=--force-confold
Requested-By: ecazenave (1215)
Upgrade: python3-passerelle:amd64 (7.87-1~eob120+1, 7.88-1~eob120+1), passerelle:amd64 (7.87-1~eob120+1, 7.88-1~eob120+1)
End-Date: 2024-02-01  14:58:58
#5

Mis à jour par Robot Gitea il y a 3 mois

  • Statut changé de Nouveau à En cours
  • Assigné à changé de Guillaume Baffoin à Benjamin Dauvergne

Benjamin Dauvergne (bdauvergne) a ouvert une pull request sur Gitea concernant cette demande :

#6

Mis à jour par Guillaume Baffoin il y a 3 mois

downgrade temporaire de python3-django-mellon sur front1 et redemarrage de passerelle ==> RAS.

je laisse les devs trouver la vrai solution.

#7

Mis à jour par Robot Gitea il y a 3 mois

  • Statut changé de En cours à Solution proposée
#8

Mis à jour par Benjamin Dauvergne il y a 3 mois

En fait la version mellon de session_backends.cached_db était cassée depuis un bail, elle utilisait en fait la version "db" simple du backend de session, là au passage j'ai corrigé ça et ça a cassé car en fait ça n'a jamais été testé avec la version "cached_db" qui quand elle lit de la base essaie de mettre en cache la session et appelle SessionStore.get_expiry_age() pour calculer le TTL du cache mais get_expiry_age() appelle get_session_not_on_or_after() qui essaie de lire dans self._session_cache qui n'existe pas encore.

La solution ici c'est de renvoyer None si self._session_cache n'existe pas (s'il n'existe pas c'est que la session est toute fraîche ou pas encore dans le cache, ou qu'on vient de passer d'un backend à l'autre, « session dans la db mais pas dans le cache »).

#9

Mis à jour par Benjamin Dauvergne il y a 3 mois

  • Projet changé de Admin système à django-mellon
#10

Mis à jour par Benjamin Dauvergne il y a 3 mois

  • Sujet changé de Passerelle pas bien recette à Trace dans cached_db.SessionStore.load() (était: Passerelle pas bien recette)
#11

Mis à jour par Robot Gitea il y a 3 mois

  • Statut changé de Solution proposée à Solution validée

Paul Marillonnet (pmarillonnet) a approuvé une pull request sur Gitea concernant cette demande :

#12

Mis à jour par Robot Gitea il y a 3 mois

  • Statut changé de Solution validée à Résolu (à déployer)

Benjamin Dauvergne (bdauvergne) a mergé une pull request sur Gitea concernant cette demande :

#13

Mis à jour par Transition automatique il y a 3 mois

  • Statut changé de Résolu (à déployer) à Solution déployée
#14

Mis à jour par Transition automatique il y a 20 jours

Automatic expiration

Formats disponibles : Atom PDF