Projet

Général

Profil

Bug #34546

crash sur suppresion utilisateur

Ajouté par Emmanuel Cazenave il y a presque 5 ans. Mis à jour il y a presque 5 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
-
Début:
04 juillet 2019
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

En local uniquement (pas reproduit sur recette), création puis suppression d'un utilisateur via le manage :

Internal Server Error: /manage/users/2/delete/
Traceback (most recent call last):
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/core/handlers/exception.py", line 41, in inner                                                                                      
    response = get_response(request)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 249, in _legacy_get_response                                                                           
    response = self._get_response(request)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 187, in _get_response                                                                                  
    response = self.process_exception_by_middleware(e, request)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 185, in _get_response                                                                                  
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/contrib/auth/decorators.py", line 23, in _wrapped_view                                                                              
    return view_func(request, *args, **kwargs)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/views/generic/base.py", line 68, in view                                                                                            
    return self.dispatch(request, *args, **kwargs)
  File "/home/cazino/src/authentic/src/authentic2/manager/views.py", line 144, in dispatch
    return super(PermissionMixin, self).dispatch(request, *args, **kwargs)
  File "/home/cazino/src/authentic/src/authentic2/manager/views.py", line 265, in dispatch
    **kwargs)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/views/generic/base.py", line 88, in dispatch                                                                                        
    return handler(request, *args, **kwargs)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/views/generic/edit.py", line 269, in post                                                                                           
    return self.delete(request, *args, **kwargs)
  File "/home/cazino/src/authentic/src/authentic2/manager/user_views.py", line 629, in delete
    response = super(UserDeleteView, self).delete(request, *args, **kwargs)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/views/generic/edit.py", line 264, in delete                                                                                         
    self.object.delete()
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/db/models/base.py", line 973, in delete                                                                                             
    collector.collect([self], keep_parents=keep_parents)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/db/models/deletion.py", line 223, in collect                                                                                        
    elif sub_objs:
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/db/models/query.py", line 258, in __nonzero__                                                                                       
    return type(self).__bool__(self)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/db/models/query.py", line 254, in __bool__                                                                                          
    self._fetch_all()
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/db/models/query.py", line 1121, in _fetch_all                                                                                       
    self._result_cache = list(self._iterable_class(self))
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/db/models/query.py", line 53, in __iter__                                                                                           
    results = compiler.execute_sql(chunked_fetch=self.chunked_fetch)
  File "/home/cazino/envs/publik-env/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 899, in execute_sql                                                                                
    raise original_exception
ProgrammingError: relation "auth2_ssl_clientcertificate" does not exist
LINE 1: ...rt", "auth2_ssl_clientcertificate"."user_id" FROM "auth2_ssl...

Essayé de debugger mais ça plonge bien profond dans l'ORM.

Je me suis arrêté à django/db/models/opions.py::813 :

ipdb> pprint(self._get_fields_cache[cache_key])
...
<ManyToOneRel: auth2_ssl.clientcertificate>

...

Historique

#1

Mis à jour par Emmanuel Cazenave il y a presque 5 ans

  • Statut changé de Nouveau à Rejeté

Des .pyc qui trainent, c'est pas mon jour.

Formats disponibles : Atom PDF