title: Django allauth bug: users get deleted from database every couple of hours without my doing anything
body: <p>I'm using allauth in my Django app for basic sign-in, sign-up, password reset functionality, etc. I've attached Gmail as the social account and migrated my data tables.</p>
  
  <p>I have two sites set up in the the admin page: one with my domain name <a href="http://owexpenses.herokuapp.com/" rel="nofollow noreferrer">http://owexpenses.herokuapp.com/</a> and one with localhost:8000/</p>
  
  <p>Everything is working fine in localhost. However, when deployed to Heroku, with the Heroku site id set in settings.py, users that sign up keep getting magically deleted and are replaced with the users I've signed up in the localhost site.</p>
  
  <p>I've tried adding users in Heroku, which works. Then a couple hours later, I'll check, and those users will have disappeared. There is no error message, but I thought I'd post this problem in the off-chance that someone has encountered it. I just can't imagine allauth would have such a huge bug. I must be missing something.</p>
  
  <p>Here are my settings, in case that is where the problem lies:</p>
  
  <blockquote>
    <p>""" Django settings for expensesApp project.</p>
  
  <pre><code>Generated by 'django-admin startproject' using Django 1.10.3.
  
  For more information on this file, see
  https://docs.djangoproject.com/en/1.10/topics/settings/
  
  For the full list of settings and their values, see
  https://docs.djangoproject.com/en/1.10/ref/settings/
  """
  
  import os
  
  # Build paths inside the project like this: os.path.join(BASE_DIR, ...)
  BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
  
  
  # Quick-start development settings - unsuitable for production
  # See https://docs.djangoproject.com/en/1.10/howto/deployment/checklist/
  
  # SECURITY WARNING: keep the secret key used in production secret!
  SECRET_KEY = 'vl!7@x=%_l&amp;!ys=m!-@+m3uu@t8-n)(gzgb-9^^osh5ryt@t!5'
  
  # SECURITY WARNING: don't run with debug turned on in production!
  DEBUG = True
  
  #add 'localhost'
  ALLOWED_HOSTS = ['owexpenses.herokuapp.com', 'localhost']
  
  
  # Application definition
  
  INSTALLED_APPS = [
      'django.contrib.sites',
      'registration'
      'django.contrib.admin',
      'django.contrib.auth',
      'django.contrib.contenttypes',
      'django.contrib.sessions',
      'django.contrib.messages',
      'django.contrib.staticfiles',
      'constraints.apps.ConstraintsConfig',
  ]
  
  MIDDLEWARE = [
      'django.middleware.security.SecurityMiddleware',
      'django.contrib.sessions.middleware.SessionMiddleware',
      'django.middleware.common.CommonMiddleware',
      'django.middleware.csrf.CsrfViewMiddleware',
      'django.contrib.auth.middleware.AuthenticationMiddleware',
      'django.contrib.messages.middleware.MessageMiddleware',
      'django.middleware.clickjacking.XFrameOptionsMiddleware',
  ]
  
  ROOT_URLCONF = 'expensesApp.urls'
  
  TEMPLATES = [
      {
          'BACKEND': 'django.template.backends.django.DjangoTemplates',
          'DIRS': [os.path.join(BASE_DIR, 'templates')],
          'APP_DIRS': True,
          'OPTIONS': {
              'context_processors': [
                  'django.template.context_processors.debug',
                  'django.template.context_processors.request',
                  'django.contrib.auth.context_processors.auth',
                  'django.contrib.messages.context_processors.messages',
              ],
          },
      },
  ]
  
  WSGI_APPLICATION = 'expensesApp.wsgi.application'
  
  # Database
  # https://docs.djangoproject.com/en/1.10/ref/settings/#databases
  
  DATABASES = {
      'default': {
          'ENGINE': 'django.db.backends.sqlite3',
          'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
      }
  }
  
  
  # Password validation
  # https://docs.djangoproject.com/en/1.10/ref/settings/#auth-password-validators
  
  AUTH_PASSWORD_VALIDATORS = [
      {
          'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
      },
      {
          'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
      },
      {
          'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
      },
      {
          'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
      },
  ]
  
  # Internationalization
  # https://docs.djangoproject.com/en/1.10/topics/i18n/
  
  LANGUAGE_CODE = 'en-us'
  
  TIME_ZONE = 'UTC'
  
  USE_I18N = True
  
  USE_L10N = True
  
  USE_TZ = True
  
  
  # Static files (CSS, JavaScript, Images)
  # https://docs.djangoproject.com/en/1.10/howto/static-files/
  PROJECT_DIR = os.path.dirname(os.path.abspath(__file__))
  STATICFILES_DIRS = (os.path.join(PROJECT_DIR,'static'),)
  STATIC_ROOT = '/expensesApp/static/'
  STATIC_URL = '/static/'
  
  #Authorization related
  LOGIN_REDIRECT_URL = '/'
  AUTH_PROFILE_MODULE = 'UserProfile'
  AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend']
  # Ensure the SITE_ID is defined 
  #SITE_ID = '3'
  
  # Ensure EMAIL_BACKEND is set so allauth can proceed to send confirmation emails
  # Set to console for development/testing
  
  # EMAIL_BACKEND='django.core.mail.backends.console.EmailBackend'
  EMAIL_HOST = 'smtp.sendgrid.net'
  EMAIL_HOST_USER = 'my_username'
  EMAIL_HOST_PASSWORD = '############'
  EMAIL_PORT = 587
  EMAIL_USE_TLS = True
  DEFAULT_FROM_EMAIL  = 'my_email@gmail.com'
  
  Custom allauth settings
  Use email as the primary identifier
  ACCOUNT_AUTHENTICATION_METHOD = 'email' 
  ACCOUNT_EMAIL_REQUIRED = True
  # Make email verification mandatory to avoid junk email accounts
  ACCOUNT_EMAIL_VERIFICATION = 'mandatory' 
  # Eliminate need to provide username, as it's a very old practice
  ACCOUNT_USERNAME_REQUIRED = True
  ACCOUNT_LOGOUT_ON_GET = True
  </code></pre>
  </blockquote>