summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Cutler <bruce@sumebrius.net>2022-06-13 15:48:43 +1200
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2022-06-13 08:49:35 +0200
commita7f398ae597536d0cee67cb525f165d87ca2fe49 (patch)
tree2b2162f9db28b667c061df9b7647cfbd545999e3
parent9d8b694205f2617477faac0ba0edbd06c4d07605 (diff)
[4.1.x] Fixed #33773 -- Made Index with multiple fields respect DEFAULT_INDEX_TABLESPACE.
Thanks to Simon Charette for locating where issue lay. Backport of de1c8320cedee5d4f91b153a7fe82eb63876470f from main
-rw-r--r--django/db/backends/base/schema.py3
-rw-r--r--tests/model_indexes/tests.py3
2 files changed, 5 insertions, 1 deletions
diff --git a/django/db/backends/base/schema.py b/django/db/backends/base/schema.py
index 03f0f11507..54f13be798 100644
--- a/django/db/backends/base/schema.py
+++ b/django/db/backends/base/schema.py
@@ -2,6 +2,7 @@ import logging
import operator
from datetime import datetime
+from django.conf import settings
from django.db.backends.ddl_references import (
Columns,
Expressions,
@@ -1306,6 +1307,8 @@ class BaseDatabaseSchemaEditor:
if db_tablespace is None:
if len(fields) == 1 and fields[0].db_tablespace:
db_tablespace = fields[0].db_tablespace
+ elif settings.DEFAULT_INDEX_TABLESPACE:
+ db_tablespace = settings.DEFAULT_INDEX_TABLESPACE
elif model._meta.db_tablespace:
db_tablespace = model._meta.db_tablespace
if db_tablespace is not None:
diff --git a/tests/model_indexes/tests.py b/tests/model_indexes/tests.py
index 6f40011a5b..0c8378f624 100644
--- a/tests/model_indexes/tests.py
+++ b/tests/model_indexes/tests.py
@@ -3,7 +3,7 @@ from unittest import mock
from django.conf import settings
from django.db import connection, models
from django.db.models.functions import Lower, Upper
-from django.test import SimpleTestCase, TestCase, skipUnlessDBFeature
+from django.test import SimpleTestCase, TestCase, override_settings, skipUnlessDBFeature
from django.test.utils import isolate_apps
from .models import Book, ChildModel1, ChildModel2
@@ -305,6 +305,7 @@ class SimpleIndexesTests(SimpleTestCase):
)
+@override_settings(DEFAULT_TABLESPACE=None)
class IndexesTests(TestCase):
@skipUnlessDBFeature("supports_tablespaces")
def test_db_tablespace(self):