From 4f8cd89bb7c13d971897ef56559e86126a872f2f Mon Sep 17 00:00:00 2001 From: Bruno Alla Date: Mon, 13 Nov 2017 20:08:47 +0000 Subject: [PATCH] Set CONN_MAX_AGE to 60 seconds -- fixes #710 (#1382) * Set CONN_MAX_AGE to 60 seconds -- fixes #710 Setting the value in the production config. * Get CONN_MAX_AGE from the environment, default to 60 in .env * Add test for CONN_MAX_AGE setting * Remove duplication in default value & test cleanup * Remove test for CONN_MAX_AGE value in settings --- {{cookiecutter.project_slug}}/config/settings/production.py | 4 +++- {{cookiecutter.project_slug}}/env.example | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/{{cookiecutter.project_slug}}/config/settings/production.py b/{{cookiecutter.project_slug}}/config/settings/production.py index cc518644..9eeb46bc 100644 --- a/{{cookiecutter.project_slug}}/config/settings/production.py +++ b/{{cookiecutter.project_slug}}/config/settings/production.py @@ -169,7 +169,7 @@ TEMPLATES[0]['OPTIONS']['loaders'] = [ ('django.template.loaders.cached.Loader', [ 'django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader', ]), ] - +{% set _DEFAULT_CONN_MAX_AGE=60 %} # DATABASE CONFIGURATION # ------------------------------------------------------------------------------ {% if cookiecutter.use_elasticbeanstalk_experimental.lower() == 'y' -%} @@ -182,12 +182,14 @@ DATABASES = { 'PASSWORD': env('RDS_PASSWORD'), 'HOST': env('RDS_HOSTNAME'), 'PORT': env('RDS_PORT'), + 'CONN_MAX_AGE': env.int('CONN_MAX_AGE', default={{ _DEFAULT_CONN_MAX_AGE }}), } } {% else %} # Use the Heroku-style specification # Raises ImproperlyConfigured exception if DATABASE_URL not in os.environ DATABASES['default'] = env.db('DATABASE_URL') +DATABASES['default']['CONN_MAX_AGE'] = env.int('CONN_MAX_AGE', default={{ _DEFAULT_CONN_MAX_AGE }}) {%- endif %} # CACHING diff --git a/{{cookiecutter.project_slug}}/env.example b/{{cookiecutter.project_slug}}/env.example index cbde7649..420ab4a5 100644 --- a/{{cookiecutter.project_slug}}/env.example +++ b/{{cookiecutter.project_slug}}/env.example @@ -2,6 +2,7 @@ # PostgreSQL POSTGRES_PASSWORD=mysecretpass POSTGRES_USER=postgresuser +CONN_MAX_AGE= # Domain name, used by caddy DOMAIN_NAME={{ cookiecutter.domain_name }}