Changes between Initial Version and Version 1 of Ticket #33256, comment 8


Ignore:
Timestamp:
Mar 16, 2022, 4:28:16 PM (3 years ago)
Author:
Tim Graham

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #33256, comment 8

    initial v1  
    1 Replying to [ticket:33256 Tim Graham]:
    2 > Some test errors on a second consecutive run of `./tests/runtests.py --settings=test_postgres  --parallel=1 --keepdb schema` shows that some tests leave behind their tables. Attached is an initial patch for a couple of the cases.
    3 > {{{
    4 > ======================================================================
    5 > ERROR: test_add_foreign_key_quoted_db_table (schema.tests.SchemaTests)
    6 > ----------------------------------------------------------------------
    7 > Traceback (most recent call last):
    8 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    9 >     return self.cursor.execute(sql)
    10 > psycopg2.errors.DuplicateTable: relation "table_author_double_quoted" already exists
    11 >
    12 >
    13 > The above exception was the direct cause of the following exception:
    14 >
    15 > Traceback (most recent call last):
    16 >   File "/home/tim/code/django/django/test/utils.py", line 437, in inner
    17 >     return func(*args, **kwargs)
    18 >   File "/home/tim/code/django/django/test/testcases.py", line 1305, in skip_wrapper
    19 >     return test_func(*args, **kwargs)
    20 >   File "/home/tim/code/django/tests/schema/tests.py", line 3229, in test_add_foreign_key_quoted_db_table
    21 >     editor.create_model(Author)
    22 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 355, in create_model
    23 >     self.execute(sql, params or None)
    24 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 151, in execute
    25 >     cursor.execute(sql, params)
    26 >   File "/home/tim/code/django/django/db/backends/utils.py", line 66, in execute
    27 >     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
    28 >   File "/home/tim/code/django/django/db/backends/utils.py", line 75, in _execute_with_wrappers
    29 >     return executor(sql, params, many, context)
    30 >   File "/home/tim/code/django/django/db/backends/utils.py", line 84, in _execute
    31 >     return self.cursor.execute(sql, params)
    32 >   File "/home/tim/code/django/django/db/utils.py", line 90, in __exit__
    33 >     raise dj_exc_value.with_traceback(traceback) from exc_value
    34 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    35 >     return self.cursor.execute(sql)
    36 > django.db.utils.ProgrammingError: relation "table_author_double_quoted" already exists
    37 >
    38 >
    39 > ======================================================================
    40 > ERROR: test_add_foreign_object (schema.tests.SchemaTests)
    41 > ----------------------------------------------------------------------
    42 > Traceback (most recent call last):
    43 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    44 >     return self.cursor.execute(sql)
    45 > psycopg2.errors.DuplicateTable: relation "schema_bookforeignobj" already exists
    46 >
    47 >
    48 > The above exception was the direct cause of the following exception:
    49 >
    50 > Traceback (most recent call last):
    51 >   File "/home/tim/code/django/tests/schema/tests.py", line 3238, in test_add_foreign_object
    52 >     editor.create_model(BookForeignObj)
    53 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 355, in create_model
    54 >     self.execute(sql, params or None)
    55 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 151, in execute
    56 >     cursor.execute(sql, params)
    57 >   File "/home/tim/code/django/django/db/backends/utils.py", line 66, in execute
    58 >     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
    59 >   File "/home/tim/code/django/django/db/backends/utils.py", line 75, in _execute_with_wrappers
    60 >     return executor(sql, params, many, context)
    61 >   File "/home/tim/code/django/django/db/backends/utils.py", line 84, in _execute
    62 >     return self.cursor.execute(sql, params)
    63 >   File "/home/tim/code/django/django/db/utils.py", line 90, in __exit__
    64 >     raise dj_exc_value.with_traceback(traceback) from exc_value
    65 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    66 >     return self.cursor.execute(sql)
    67 > django.db.utils.ProgrammingError: relation "schema_bookforeignobj" already exists
    68 >
    69 >
    70 > ======================================================================
    71 > ERROR: test_remove_db_index_doesnt_remove_custom_indexes (schema.tests.SchemaTests)
    72 > Changing db_index to False doesn't remove indexes from Meta.indexes.
    73 > ----------------------------------------------------------------------
    74 > Traceback (most recent call last):
    75 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    76 >     return self.cursor.execute(sql)
    77 > psycopg2.errors.DuplicateTable: relation "schema_authorwithindexedname" already exists
    78 >
    79 >
    80 > The above exception was the direct cause of the following exception:
    81 >
    82 > Traceback (most recent call last):
    83 >   File "/home/tim/code/django/tests/schema/tests.py", line 2659, in test_remove_db_index_doesnt_remove_custom_indexes
    84 >     editor.create_model(AuthorWithIndexedName)
    85 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 355, in create_model
    86 >     self.execute(sql, params or None)
    87 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 151, in execute
    88 >     cursor.execute(sql, params)
    89 >   File "/home/tim/code/django/django/db/backends/utils.py", line 66, in execute
    90 >     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
    91 >   File "/home/tim/code/django/django/db/backends/utils.py", line 75, in _execute_with_wrappers
    92 >     return executor(sql, params, many, context)
    93 >   File "/home/tim/code/django/django/db/backends/utils.py", line 84, in _execute
    94 >     return self.cursor.execute(sql, params)
    95 >   File "/home/tim/code/django/django/db/utils.py", line 90, in __exit__
    96 >     raise dj_exc_value.with_traceback(traceback) from exc_value
    97 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    98 >     return self.cursor.execute(sql)
    99 > django.db.utils.ProgrammingError: relation "schema_authorwithindexedname" already exists
    100 >
    101 >
    102 > ======================================================================
    103 > ERROR: test_remove_field_unique_does_not_remove_meta_constraints (schema.tests.SchemaTests)
    104 > ----------------------------------------------------------------------
    105 > Traceback (most recent call last):
    106 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    107 >     return self.cursor.execute(sql)
    108 > psycopg2.errors.DuplicateTable: relation "schema_authorwithuniquename" already exists
    109 >
    110 >
    111 > The above exception was the direct cause of the following exception:
    112 >
    113 > Traceback (most recent call last):
    114 >   File "/home/tim/code/django/django/test/testcases.py", line 1305, in skip_wrapper
    115 >     return test_func(*args, **kwargs)
    116 >   File "/home/tim/code/django/tests/schema/tests.py", line 2057, in test_remove_field_unique_does_not_remove_meta_constraints
    117 >     editor.create_model(AuthorWithUniqueName)
    118 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 355, in create_model
    119 >     self.execute(sql, params or None)
    120 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 151, in execute
    121 >     cursor.execute(sql, params)
    122 >   File "/home/tim/code/django/django/db/backends/utils.py", line 66, in execute
    123 >     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
    124 >   File "/home/tim/code/django/django/db/backends/utils.py", line 75, in _execute_with_wrappers
    125 >     return executor(sql, params, many, context)
    126 >   File "/home/tim/code/django/django/db/backends/utils.py", line 84, in _execute
    127 >     return self.cursor.execute(sql, params)
    128 >   File "/home/tim/code/django/django/db/utils.py", line 90, in __exit__
    129 >     raise dj_exc_value.with_traceback(traceback) from exc_value
    130 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    131 >     return self.cursor.execute(sql)
    132 > django.db.utils.ProgrammingError: relation "schema_authorwithuniquename" already exists
    133 >
    134 >
    135 > ======================================================================
    136 > ERROR: test_remove_index_together_does_not_remove_meta_indexes (schema.tests.SchemaTests)
    137 > ----------------------------------------------------------------------
    138 > Traceback (most recent call last):
    139 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    140 >     return self.cursor.execute(sql)
    141 > psycopg2.errors.DuplicateTable: relation "schema_authorwithindexednameandbirthday" already exists
    142 >
    143 >
    144 > The above exception was the direct cause of the following exception:
    145 >
    146 > Traceback (most recent call last):
    147 >   File "/home/tim/code/django/django/test/testcases.py", line 1305, in skip_wrapper
    148 >     return test_func(*args, **kwargs)
    149 >   File "/home/tim/code/django/tests/schema/tests.py", line 2554, in test_remove_index_together_does_not_remove_meta_indexes
    150 >     editor.create_model(AuthorWithIndexedNameAndBirthday)
    151 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 355, in create_model
    152 >     self.execute(sql, params or None)
    153 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 151, in execute
    154 >     cursor.execute(sql, params)
    155 >   File "/home/tim/code/django/django/db/backends/utils.py", line 66, in execute
    156 >     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
    157 >   File "/home/tim/code/django/django/db/backends/utils.py", line 75, in _execute_with_wrappers
    158 >     return executor(sql, params, many, context)
    159 >   File "/home/tim/code/django/django/db/backends/utils.py", line 84, in _execute
    160 >     return self.cursor.execute(sql, params)
    161 >   File "/home/tim/code/django/django/db/utils.py", line 90, in __exit__
    162 >     raise dj_exc_value.with_traceback(traceback) from exc_value
    163 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    164 >     return self.cursor.execute(sql)
    165 > django.db.utils.ProgrammingError: relation "schema_authorwithindexednameandbirthday" already exists
    166 >
    167 >
    168 > ======================================================================
    169 > ERROR: test_remove_unique_together_does_not_remove_meta_constraints (schema.tests.SchemaTests)
    170 > ----------------------------------------------------------------------
    171 > Traceback (most recent call last):
    172 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    173 >     return self.cursor.execute(sql)
    174 > psycopg2.errors.DuplicateTable: relation "schema_authorwithuniquenameandbirthday" already exists
    175 >
    176 >
    177 > The above exception was the direct cause of the following exception:
    178 >
    179 > Traceback (most recent call last):
    180 >   File "/home/tim/code/django/django/test/testcases.py", line 1305, in skip_wrapper
    181 >     return test_func(*args, **kwargs)
    182 >   File "/home/tim/code/django/tests/schema/tests.py", line 2176, in test_remove_unique_together_does_not_remove_meta_constraints
    183 >     editor.create_model(AuthorWithUniqueNameAndBirthday)
    184 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 355, in create_model
    185 >     self.execute(sql, params or None)
    186 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 151, in execute
    187 >     cursor.execute(sql, params)
    188 >   File "/home/tim/code/django/django/db/backends/utils.py", line 66, in execute
    189 >     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
    190 >   File "/home/tim/code/django/django/db/backends/utils.py", line 75, in _execute_with_wrappers
    191 >     return executor(sql, params, many, context)
    192 >   File "/home/tim/code/django/django/db/backends/utils.py", line 84, in _execute
    193 >     return self.cursor.execute(sql, params)
    194 >   File "/home/tim/code/django/django/db/utils.py", line 90, in __exit__
    195 >     raise dj_exc_value.with_traceback(traceback) from exc_value
    196 >   File "/home/tim/code/django/django/db/backends/utils.py", line 82, in _execute
    197 >     return self.cursor.execute(sql)
    198 > django.db.utils.ProgrammingError: relation "schema_authorwithuniquenameandbirthday" already exists
    199 >
    200 >
    201 > ======================================================================
    202 > ERROR: test_unique_name_quoting (schema.tests.SchemaTests)
    203 > ----------------------------------------------------------------------
    204 > Traceback (most recent call last):
    205 >   File "/home/tim/code/django/django/db/backends/utils.py", line 84, in _execute
    206 >     return self.cursor.execute(sql, params)
    207 > psycopg2.errors.DuplicateTable: relation "unique-table" already exists
    208 >
    209 >
    210 > The above exception was the direct cause of the following exception:
    211 >
    212 > Traceback (most recent call last):
    213 >   File "/home/tim/code/django/tests/schema/tests.py", line 1978, in test_unique_name_quoting
    214 >     editor.alter_db_table(TagUniqueRename, old_table_name, 'unique-table')
    215 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 474, in alter_db_table
    216 >     self.execute(self.sql_rename_table % {
    217 >   File "/home/tim/code/django/django/db/backends/base/schema.py", line 151, in execute
    218 >     cursor.execute(sql, params)
    219 >   File "/home/tim/code/django/django/db/backends/utils.py", line 66, in execute
    220 >     return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
    221 >   File "/home/tim/code/django/django/db/backends/utils.py", line 75, in _execute_with_wrappers
    222 >     return executor(sql, params, many, context)
    223 >   File "/home/tim/code/django/django/db/backends/utils.py", line 84, in _execute
    224 >     return self.cursor.execute(sql, params)
    225 >   File "/home/tim/code/django/django/db/utils.py", line 90, in __exit__
    226 >     raise dj_exc_value.with_traceback(traceback) from exc_value
    227 >   File "/home/tim/code/django/django/db/backends/utils.py", line 84, in _execute
    228 >     return self.cursor.execute(sql, params)
    229 > django.db.utils.ProgrammingError: relation "unique-table" already exists
    230 > }}}
    231 
    232 
    2331I run the command but I can't produce errors, every thing works nice.
    2342
Back to Top