From 7b5cbe0aeb73ee9f5ef61e0eed0085c40330b496 Mon Sep 17 00:00:00 2001 From: Antoine Nguyen Date: Sun, 15 Nov 2015 16:07:31 +0100 Subject: [PATCH] Django now closes connection as expected. see #787 --- .../management/commands/export_domains.py | 3 +-- .../management/commands/export_identities.py | 3 +-- .../commands/handle_mailbox_operations.py | 3 +-- .../management/commands/import_domains.py | 3 +-- .../management/commands/import_identities.py | 3 +-- modoboa/core/management/commands/__init__.py | 18 ------------------ modoboa/core/management/commands/cleanlogs.py | 4 +--- .../management/commands/load_initial_data.py | 3 +-- .../management/commands/set_default_site.py | 4 +--- 9 files changed, 8 insertions(+), 36 deletions(-) diff --git a/modoboa/admin/management/commands/export_domains.py b/modoboa/admin/management/commands/export_domains.py index 0f1114619..c4fc5edc6 100644 --- a/modoboa/admin/management/commands/export_domains.py +++ b/modoboa/admin/management/commands/export_domains.py @@ -6,11 +6,10 @@ from django.core.management.base import BaseCommand from modoboa.core import load_core_settings from modoboa.core.extensions import exts_pool -from modoboa.core.management.commands import CloseConnectionMixin from ...models import Domain -class Command(BaseCommand, CloseConnectionMixin): +class Command(BaseCommand): help = 'Export domains and domain aliases to a csv' option_list = BaseCommand.option_list + ( diff --git a/modoboa/admin/management/commands/export_identities.py b/modoboa/admin/management/commands/export_identities.py index 95551647e..6d3bb1f46 100644 --- a/modoboa/admin/management/commands/export_identities.py +++ b/modoboa/admin/management/commands/export_identities.py @@ -7,11 +7,10 @@ from django.core.management.base import BaseCommand from modoboa.core import load_core_settings from modoboa.core.models import User from modoboa.core.extensions import exts_pool -from modoboa.core.management.commands import CloseConnectionMixin from ...models import Alias -class Command(BaseCommand, CloseConnectionMixin): +class Command(BaseCommand): help = 'Export identities (mailbox and aliases) to a csv' option_list = BaseCommand.option_list + ( diff --git a/modoboa/admin/management/commands/handle_mailbox_operations.py b/modoboa/admin/management/commands/handle_mailbox_operations.py index b87823be4..200280036 100644 --- a/modoboa/admin/management/commands/handle_mailbox_operations.py +++ b/modoboa/admin/management/commands/handle_mailbox_operations.py @@ -5,7 +5,6 @@ import os from django.core.management.base import BaseCommand -from modoboa.core.management.commands import CloseConnectionMixin from modoboa.lib import parameters from modoboa.lib.sysutils import exec_cmd from modoboa.lib.exceptions import InternalError @@ -18,7 +17,7 @@ class OperationError(Exception): pass -class Command(BaseCommand, CloseConnectionMixin): +class Command(BaseCommand): help = 'Handles rename and delete operations on mailboxes' option_list = BaseCommand.option_list + ( diff --git a/modoboa/admin/management/commands/import_domains.py b/modoboa/admin/management/commands/import_domains.py index a4669da14..aafbbe2ef 100644 --- a/modoboa/admin/management/commands/import_domains.py +++ b/modoboa/admin/management/commands/import_domains.py @@ -5,12 +5,11 @@ from django.core.management.base import BaseCommand from modoboa.core import load_core_settings from modoboa.core.extensions import exts_pool -from modoboa.core.management.commands import CloseConnectionMixin from ._import import import_csv -class Command(BaseCommand, CloseConnectionMixin): +class Command(BaseCommand): args = 'csvfile' help = 'Import domains and domain aliases from a csv file' diff --git a/modoboa/admin/management/commands/import_identities.py b/modoboa/admin/management/commands/import_identities.py index 1cf710bd7..28487bc61 100644 --- a/modoboa/admin/management/commands/import_identities.py +++ b/modoboa/admin/management/commands/import_identities.py @@ -4,12 +4,11 @@ from django.core.management.base import BaseCommand from modoboa.core import load_core_settings from modoboa.core.extensions import exts_pool -from modoboa.core.management.commands import CloseConnectionMixin from ._import import import_csv -class Command(BaseCommand, CloseConnectionMixin): +class Command(BaseCommand): args = 'csvfile' help = 'Import identities from a csv file' diff --git a/modoboa/core/management/commands/__init__.py b/modoboa/core/management/commands/__init__.py index bcc7f3a46..e69de29bb 100644 --- a/modoboa/core/management/commands/__init__.py +++ b/modoboa/core/management/commands/__init__.py @@ -1,18 +0,0 @@ -""" -Extra classes for management commands. -""" - -from django.db import connection - - -class CloseConnectionMixin(object): - - """ - A simple mixin used to close all database connections after - command execution. - """ - - def execute(self, *args, **options): - """Execute will call handle so we can close the connection here.""" - super(CloseConnectionMixin, self).execute(*args, **options) - connection.close() diff --git a/modoboa/core/management/commands/cleanlogs.py b/modoboa/core/management/commands/cleanlogs.py index 26219dc38..7840615f1 100644 --- a/modoboa/core/management/commands/cleanlogs.py +++ b/modoboa/core/management/commands/cleanlogs.py @@ -10,10 +10,8 @@ from modoboa.core import load_core_settings from modoboa.core.models import Log from modoboa.lib import parameters -from . import CloseConnectionMixin - -class Command(BaseCommand, CloseConnectionMixin): +class Command(BaseCommand): args = '' help = 'Log table cleanup' diff --git a/modoboa/core/management/commands/load_initial_data.py b/modoboa/core/management/commands/load_initial_data.py index bc600ac31..1bf92aa23 100644 --- a/modoboa/core/management/commands/load_initial_data.py +++ b/modoboa/core/management/commands/load_initial_data.py @@ -18,10 +18,9 @@ from modoboa.lib import models as lib_models from modoboa.lib.permissions import add_permissions_to_group from modoboa.limits.app_settings import load_limits_settings import modoboa.relaydomains.models as relay_models -from . import CloseConnectionMixin -class Command(BaseCommand, CloseConnectionMixin): +class Command(BaseCommand): """Command defintion.""" diff --git a/modoboa/core/management/commands/set_default_site.py b/modoboa/core/management/commands/set_default_site.py index 3aea3ea07..03f703267 100644 --- a/modoboa/core/management/commands/set_default_site.py +++ b/modoboa/core/management/commands/set_default_site.py @@ -9,10 +9,8 @@ from django.core.management.base import BaseCommand, CommandError from django.contrib.sites.models import Site -from . import CloseConnectionMixin - -class Command(BaseCommand, CloseConnectionMixin): +class Command(BaseCommand): """Management command to set the default site."""