Users unable to login
Any user who attempts to login is getting a Server Error.
Error log below:
`ERROR 2018-11-06 14:49:23,903 32 django.request Internal Server Error: /accounts/login/ Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/allauth/account/utils.py", line 304, in send_email_confirmation email_address = EmailAddress.objects.get_for_user(user, email) File "/usr/local/lib/python3.6/site-packages/allauth/account/managers.py", line 49, in get_for_user email__iexact=email) File "/usr/local/lib/python3.6/site-packages/django/db/models/manager.py", line 82, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 403, in get self.model._meta.object_name allauth.account.models.DoesNotExist: EmailAddress matching query does not exist.
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 487, in get_or_create return self.get(**lookup), False File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 403, in get self.model._meta.object_name allauth.account.models.DoesNotExist: EmailAddress matching query does not exist.
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 85, in _execute return self.cursor.execute(sql, params) psycopg2.IntegrityError: duplicate key value violates unique constraint "account_emailaddress_email_key" DETAIL: Key (email)=(*********) already exists.
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/django/core/handlers/exception.py", line 35, in inner response = get_response(request) File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py", line 128, in _get_response response = self.process_exception_by_middleware(e, request) File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py", line 126, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/usr/local/lib/python3.6/site-packages/django/views/generic/base.py", line 69, in view return self.dispatch(request, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/utils/decorators.py", line 62, in _wrapper return bound_func(args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/views/decorators/debug.py", line 76, in sensitive_post_parameters_wrapper return view(request, args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/utils/decorators.py", line 58, in bound_func return func.get(self, type(self))(args2, **kwargs2) File "/usr/local/lib/python3.6/site-packages/allauth/account/views.py", line 137, in dispatch return super(LoginView, self).dispatch(request, args, **kwargs) File "/usr/local/lib/python3.6/site-packages/allauth/account/views.py", line 80, in dispatch **kwargs) File "/usr/local/lib/python3.6/site-packages/django/views/generic/base.py", line 89, in dispatch return handler(request, args, **kwargs) File "/usr/local/lib/python3.6/site-packages/allauth/account/views.py", line 103, in post response = self.form_valid(form) File "/usr/local/lib/python3.6/site-packages/allauth/account/views.py", line 150, in form_valid return form.login(self.request, redirect_url=success_url) File "/usr/local/lib/python3.6/site-packages/allauth/account/forms.py", line 197, in login redirect_url=redirect_url) File "/usr/local/lib/python3.6/site-packages/allauth/account/utils.py", line 146, in perform_login send_email_confirmation(request, user, signup=signup) File "/usr/local/lib/python3.6/site-packages/allauth/account/utils.py", line 323, in send_email_confirmation confirm=True) File "/usr/local/lib/python3.6/site-packages/allauth/account/managers.py", line 15, in add_email user=user, email__iexact=email, defaults={"email": email} File "/usr/local/lib/python3.6/site-packages/django/db/models/manager.py", line 82, in manager_method return getattr(self.get_queryset(), name)(args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 489, in get_or_create return self._create_object_from_params(lookup, params) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 528, in _create_object_from_params raise e File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 521, in _create_object_from_params obj = self.create(**params) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 417, in create obj.save(force_insert=True, using=self.db) File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py", line 729, in save force_update=force_update, update_fields=update_fields) File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py", line 759, in save_base updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields) File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py", line 842, in _save_table result = self._do_insert(cls._base_manager, using, fields, update_pk, raw) File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py", line 880, in _do_insert using=using, raw=raw) File "/usr/local/lib/python3.6/site-packages/django/db/models/manager.py", line 82, in manager_method return getattr(self.get_queryset(), name)(args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 1125, in _insert return query.get_compiler(using=using).execute_sql(return_id) File "/usr/local/lib/python3.6/site-packages/django/db/models/sql/compiler.py", line 1283, in execute_sql cursor.execute(sql, params) File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 68, in execute return self._execute_with_wrappers(sql, params, many=False, executor=self._execute) File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 77, in _execute_with_wrappers return executor(sql, params, many, context) File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 85, in _execute return self.cursor.execute(sql, params) File "/usr/local/lib/python3.6/site-packages/django/db/utils.py", line 89, in exit raise dj_exc_value.with_traceback(traceback) from exc_value File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 85, in _execute return self.cursor.execute(sql, params) django.db.utils.IntegrityError: duplicate key value violates unique constraint "account_emailaddress_email_key" DETAIL: Key (email)=() already exists.
ERROR 2018-11-06 14:49:23,903 32 django.request Internal Server Error: /accounts/login/ Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/allauth/account/utils.py", line 304, in send_email_confirmation email_address = EmailAddress.objects.get_for_user(user, email) File "/usr/local/lib/python3.6/site-packages/allauth/account/managers.py", line 49, in get_for_user email__iexact=email) File "/usr/local/lib/python3.6/site-packages/django/db/models/manager.py", line 82, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 403, in get self.model._meta.object_name allauth.account.models.DoesNotExist: EmailAddress matching query does not exist. During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 487, in get_or_create return self.get(**lookup), False File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 403, in get self.model._meta.object_name allauth.account.models.DoesNotExist: EmailAddress matching query does not exist.
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 85, in _execute return self.cursor.execute(sql, params) psycopg2.IntegrityError: duplicate key value violates unique constraint "account_emailaddress_email_key" DETAIL: Key (email)=(********) already exists.
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "/usr/local/lib/python3.6/site-packages/django/core/handlers/exception.py", line 35, in inner response = get_response(request) File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py", line 128, in _get_response response = self.process_exception_by_middleware(e, request) File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py", line 126, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/usr/local/lib/python3.6/site-packages/django/views/generic/base.py", line 69, in view return self.dispatch(request, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/utils/decorators.py", line 62, in _wrapper return bound_func(*args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/views/decorators/debug.py", line 76, in sensitive_post_parameters_wrapper return view(request, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/django/utils/decorators.py", line 58, in bound_func return func.get(self, type(self))(*args2, **kwargs2) File "/usr/local/lib/python3.6/site-packages/allauth/account/views.py", line 137, in dispatch return super(LoginView, self).dispatch(request, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/allauth/account/views.py", line 80, in dispatch **kwargs) File "/usr/local/lib/python3.6/site-packages/django/views/generic/base.py", line 89, in dispatch return handler(request, *args, **kwargs) File "/usr/local/lib/python3.6/site-packages/allauth/account/views.py", line 103, in post response = self.form_valid(form) File "/usr/local/lib/python3.6/site-packages/allauth/account/views.py", line 150, in form_valid return form.login(self.request, redirect_url=success_url) File "/usr/local/lib/python3.6/site-packages/allauth/account/forms.py", line 197, in login redirect_url=redirect_url) File "/usr/local/lib/python3.6/site-packages/allauth/account/utils.py", line 146, in perform_login send_email_confirmation(request, user, signup=signup) File "/usr/local/lib/python3.6/site-packages/allauth/account/utils.py", line 323, in send_email_confirmation confirm=True) File "/usr/local/lib/python3.6/site-packages/allauth/account/managers.py", line 15, in add_email user=user, email__iexact=email, defaults={"email": email}
** File "/usr/local/lib/python3.6/site-packages/django/db/models/manager.py", line 82, in manager_method return getattr(self.get_queryset(), name)(*args, *kwargs) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 489, in get_or_create return self._create_object_from_params(lookup, params) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 528, in _create_object_from_params raise e File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 521, in _create_object_from_params obj = self.create(params) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 417, in create obj.save(force_insert=True, using=self.db) File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py", line 729, in save force_update=force_update, update_fields=update_fields) File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py", line 759, in save_base updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields) File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py", line 842, in _save_table result = self._do_insert(cls._base_manager, using, fields, update_pk, raw) File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py", line 880, in _do_insert using=using, raw=raw) File "/usr/local/lib/python3.6/site-packages/django/db/models/manager.py", line 82, in manager_method return getattr(self.get_queryset(), name)(args, kwargs) File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 1125, in _insert return query.get_compiler(using=using).execute_sql(return_id) File "/usr/local/lib/python3.6/site-packages/django/db/models/sql/compiler.py", line 1283, in execute_sql cursor.execute(sql, params) File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 68, in execute return self._execute_with_wrappers(sql, params, many=False, executor=self._execute) File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 77, in _execute_with_wrappers return executor(sql, params, many, context) File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 85, in _execute return self.cursor.execute(sql, params) File "/usr/local/lib/python3.6/site-packages/django/db/utils.py", line 89, in exit raise dj_exc_value.with_traceback(traceback) from exc_value File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 85, in _execute return self.cursor.execute(sql, params) django.db.utils.IntegrityError: duplicate key value violates unique constraint "account_emailaddress_email_key" DETAIL: Key (email)=() already exists. `
Running with an unedited docker file on an NGINX web server with the following config:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location /static/ {
alias /opt/mailman/web/static/;
}
location / {
# First attempt to serve request as file, then
proxy_pass http://172.19.199.3:8000;
include uwsgi_params;
uwsgi_read_timeout 300;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
This is weird, not sure how there are duplicate emails in your database but not corresponding social logins.
Can you check the state of your database and see what emails and users exist there? It seems your database is in a corrupt state. It doesn't really look like a bug though.
Correct me if I am wrong, here is the process I took to migrate mailman 2 to 3.
Also keep in mind, I am the sysadmin who took over. It is possible that something was buggered before I got in haha.
-
Each list was contained in it's own folder on the mailman 2 server. I migrated the data from there to the mailman 3 server.
-
Ran mailman import21 as a script importing each folder and the pickle file.
-
Complete.
Also, I removed every user from the auth db and recreated the superuser just to be sure.
Users still can't login. Getting a socket error now. See below:
How did you remove all the users from the auth db? It looks like it wasn't removed properly, hence existing user when one tries to sign up.
Which tables did you delete?
This issue has not been updated for more than 1year