Tests / confs/tests.py
TestLegacyConferenceDataMigration::test_drops_legacy_tables_when_uniques_are_mysql_style_indexes
First seen 3 weeks ago in 0c23747
CI
github-actions:test
11 runs
Average
1.13 s
median 1.00 s
max 2.05 s
max 2.05 s
Phases
Setup 2 ms
Call 1.12 s
Teardown 10 ms
Categories
Migrations 697 ms
Database 83 ms
Test code 0.87 ms
Other (DB schema, Imports, Libraries, pytest, ...) 351 ms
229 database queries per run
Needs 376 KB of memory (max 1 MB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 7 hours ago ·
open run
setup0.86 ms0.1%
call829 ms99.8%
TestLegacyConferenceDataMigration.test_drops_legacy_tables_when_uniques_are_mysql_style_indexesconfs/tests.py:450269 ms32.4%
TestLegacyConferenceDataMigration._migrateconfs/tests.py:432 executor.migrate(targets)250 ms30.1%
MigrationExecutor.migratedjango/db/migrations/executor.py:143245 ms29.5%
MigrationExecutor._migrate_all_backwardsdjango/db/migrations/executor.py:221159 ms19.1%
MigrationExecutor.unapply_migrationdjango/db/migrations/executor.py:287101 ms12.1%
Migration.unapplydjango/db/migrations/migration.py:19377 ms9.3%
SeparateDatabaseAndState.database_backwardsdjango/db/migrations/operations/special.py:5860 ms7.2%
DeleteModel.database_backwardsdjango/db/migrations/operations/models.py:40460 ms7.2%
BaseDatabaseSchemaEditor.create_modeldjango/db/backends/base/schema.py:52453 ms6.4%
DatabaseSchemaEditor.executedjango/db/backends/postgresql/schema.py:4553 ms6.4%
BaseDatabaseSchemaEditor.executedjango/db/backends/base/schema.py:21153 ms6.4%
CursorWrapper.executedjango/db/backends/utils.py:7953 ms6.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9253 ms6.4%
CursorWrapper._executedjango/db/backends/utils.py:10353 ms6.4%
Cursor.executepsycopg/cursor.py:11353 ms6.4%
Connection.waitpsycopg/connection.py:49553 ms6.4%
2 smaller frames hidden
DeleteModel.database_backwardsdjango/db/migrations/operations/models.py:40411 ms1.3%
BaseDatabaseSchemaEditor.create_modeldjango/db/backends/base/schema.py:52411 ms1.3%
DatabaseSchemaEditor.executedjango/db/backends/postgresql/schema.py:4511 ms1.3%
BaseDatabaseSchemaEditor.executedjango/db/backends/base/schema.py:21111 ms1.3%
CursorWrapper.executedjango/db/backends/utils.py:7911 ms1.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9211 ms1.3%
CursorWrapper._executedjango/db/backends/utils.py:10311 ms1.3%
Cursor.executepsycopg/cursor.py:11311 ms1.3%
Connection.waitpsycopg/connection.py:49511 ms1.3%
2 smaller frames hidden
Migration.unapplydjango/db/migrations/migration.py:16623 ms2.7%
SeparateDatabaseAndState.state_forwardsdjango/db/migrations/operations/special.py:3123 ms2.7%
AlterTogetherOptionOperation.state_forwardsdjango/db/migrations/operations/models.py:6579 ms1.1%
ProjectState.alter_model_optionsdjango/db/migrations/state.py:1909 ms1.1%
ProjectState.reload_modeldjango/db/migrations/state.py:4267 ms0.8%
ProjectState._reloaddjango/db/migrations/state.py:4617 ms0.8%
StateApps.render_multipledjango/db/migrations/state.py:6917 ms0.8%
ModelState.renderdjango/db/migrations/state.py:9895 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
RemoveConstraint.state_forwardsdjango/db/migrations/operations/models.py:12098 ms1.0%
ProjectState.remove_constraintdjango/db/migrations/state.py:2498 ms1.0%
ProjectState._remove_optiondjango/db/migrations/state.py:2158 ms1.0%
ProjectState.reload_modeldjango/db/migrations/state.py:4267 ms0.8%
ProjectState._reloaddjango/db/migrations/state.py:4617 ms0.8%
StateApps.render_multipledjango/db/migrations/state.py:6917 ms0.8%
1 smaller frames hidden
2 smaller frames hidden
1 smaller frames hidden
MigrationExecutor.unapply_migrationdjango/db/migrations/executor.py:28452 ms6.2%
BaseDatabaseSchemaEditor.__exit__django/db/backends/base/schema.py:17650 ms6.1%
DatabaseSchemaEditor.executedjango/db/backends/postgresql/schema.py:4550 ms6.1%
BaseDatabaseSchemaEditor.executedjango/db/backends/base/schema.py:21149 ms5.9%
CursorWrapper.executedjango/db/backends/utils.py:7949 ms5.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9249 ms5.9%
CursorWrapper._executedjango/db/backends/utils.py:10349 ms5.9%
Cursor.executepsycopg/cursor.py:11349 ms5.9%
Connection.waitpsycopg/connection.py:49549 ms5.9%
1 smaller frames hidden
1 smaller frames hidden
MigrationExecutor.unapply_migrationdjango/db/migrations/executor.py:2887 ms0.8%
MigrationExecutor.record_migrationdjango/db/migrations/executor.py:2777 ms0.8%
MigrationRecorder.record_unapplieddjango/db/migrations/recorder.py:1077 ms0.8%
QuerySet.deletedjango/db/models/query.py:13577 ms0.8%
Collector.deletedjango/db/models/deletion.py:5025 ms0.6%
QuerySet._raw_deletedjango/db/models/query.py:13795 ms0.6%
1 smaller frames hidden
MigrationExecutor._migrate_all_backwardsdjango/db/migrations/executor.py:21661 ms7.3%
Migration.mutate_statedjango/db/migrations/migration.py:9161 ms7.3%
CreateModel.state_forwardsdjango/db/migrations/operations/models.py:8628 ms3.3%
ProjectState.add_modeldjango/db/migrations/state.py:12628 ms3.3%
ProjectState.reload_modeldjango/db/migrations/state.py:42620 ms2.4%
ProjectState._reloaddjango/db/migrations/state.py:46119 ms2.2%
StateApps.render_multipledjango/db/migrations/state.py:69119 ms2.2%
ModelState.renderdjango/db/migrations/state.py:9829 ms1.1%
Field.clonedjango/db/models/fields/__init__.py:7125 ms0.6%
1 smaller frames hidden
ModelState.renderdjango/db/migrations/state.py:9898 ms1.0%
1 smaller frames hidden
1 smaller frames hidden
ProjectState.reload_modeldjango/db/migrations/state.py:4258 ms1.0%
ProjectState._find_reload_modeldjango/db/migrations/state.py:4168 ms1.0%
get_related_models_recursivedjango/db/migrations/state.py:917 ms0.8%
1 smaller frames hidden
AddField.state_forwardsdjango/db/migrations/operations/fields.py:10312 ms1.4%
ProjectState.add_fielddjango/db/migrations/state.py:26912 ms1.4%
ProjectState.reload_modeldjango/db/migrations/state.py:42511 ms1.3%
ProjectState._find_reload_modeldjango/db/migrations/state.py:38711 ms1.3%
get_related_models_tuplesdjango/db/migrations/state.py:6511 ms1.3%
_get_related_modelsdjango/db/migrations/state.py:4211 ms1.3%
Options.get_fieldsdjango/db/models/options.py:87711 ms1.3%
Options._get_fieldsdjango/db/models/options.py:95011 ms1.3%
cached_property.__get__django/utils/functional.py:4711 ms1.3%
Options._relation_treedjango/db/models/options.py:85011 ms1.3%
Options._populate_directed_relation_graphdjango/db/models/options.py:82611 ms1.3%
Options._get_fieldsdjango/db/models/options.py:97011 ms1.3%
make_immutable_fields_listdjango/db/models/options.py:8611 ms1.3%
<GC>~11 ms1.3%
1 smaller frames hidden
AlterField.state_forwardsdjango/db/migrations/operations/fields.py:22712 ms1.4%
ProjectState.alter_fielddjango/db/migrations/state.py:3059 ms1.1%
ProjectState.reload_modeldjango/db/migrations/state.py:4269 ms1.1%
ProjectState._reloaddjango/db/migrations/state.py:4619 ms1.1%
StateApps.render_multipledjango/db/migrations/state.py:6918 ms1.0%
ModelState.renderdjango/db/migrations/state.py:9895 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
AlterTogetherOptionOperation.state_forwardsdjango/db/migrations/operations/models.py:6578 ms1.0%
ProjectState.alter_model_optionsdjango/db/migrations/state.py:1908 ms1.0%
ProjectState.reload_modeldjango/db/migrations/state.py:4268 ms1.0%
ProjectState._reloaddjango/db/migrations/state.py:4618 ms1.0%
StateApps.render_multipledjango/db/migrations/state.py:6918 ms1.0%
ModelState.renderdjango/db/migrations/state.py:9898 ms1.0%
MigrationExecutor._migrate_all_backwardsdjango/db/migrations/executor.py:20615 ms1.8%
cached_property.__get__django/utils/functional.py:4715 ms1.8%
ProjectState.appsdjango/db/migrations/state.py:59215 ms1.8%
__init____init__:-115 ms1.8%
StateApps.__init__django/db/migrations/state.py:65315 ms1.8%
StateApps.render_multipledjango/db/migrations/state.py:69115 ms1.8%
ModelState.renderdjango/db/migrations/state.py:9827 ms0.8%
Field.clonedjango/db/models/fields/__init__.py:7135 ms0.6%
CharField.__init__django/db/models/fields/__init__.py:12495 ms0.6%
Field.__init__django/db/models/fields/__init__.py:2625 ms0.6%
Field.choicesdjango/db/models/fields/__init__.py:5905 ms0.6%
1 smaller frames hidden
ModelState.renderdjango/db/migrations/state.py:9897 ms0.8%
1 smaller frames hidden
MigrationExecutor._migrate_all_backwardsdjango/db/migrations/executor.py:2109 ms1.1%
Migration.mutate_statedjango/db/migrations/migration.py:919 ms1.1%
SeparateDatabaseAndState.state_forwardsdjango/db/migrations/operations/special.py:319 ms1.1%
1 smaller frames hidden
2 smaller frames hidden
TestLegacyConferenceDataMigration._migrateconfs/tests.py:431 executor.loader.build_graph()11 ms1.3%
MigrationLoader.build_graphdjango/db/migrations/loader.py:2885 ms0.6%
2 smaller frames hidden
TestLegacyConferenceDataMigration._migrateconfs/tests.py:430 executor = MigrationExecutor(connection)8 ms1.0%
__init____init__:-18 ms1.0%
MigrationExecutor.__init__django/db/migrations/executor.py:188 ms1.0%
__init____init__:-18 ms1.0%
MigrationLoader.__init__django/db/migrations/loader.py:598 ms1.0%
TransactionTestCase._post_teardowndjango/test/testcases.py:1243 self._fixture_teardown()205 ms24.7%
TransactionTestCase._fixture_teardowndjango/test/testcases.py:1278205 ms24.7%
call_commanddjango/core/management/__init__.py:195204 ms24.6%
BaseCommand.executedjango/core/management/base.py:466204 ms24.6%
Command.handledjango/core/management/commands/flush.py:71146 ms17.5%
BaseDatabaseOperations.execute_sql_flushdjango/db/backends/base/operations.py:493130 ms15.6%
CursorWrapper.executedjango/db/backends/utils.py:79130 ms15.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:92130 ms15.6%
CursorWrapper._executedjango/db/backends/utils.py:103130 ms15.6%
Cursor.executepsycopg/cursor.py:113130 ms15.6%
Connection.waitpsycopg/connection.py:495130 ms15.6%
BaseDatabaseOperations.execute_sql_flushdjango/db/backends/base/operations.py:48716 ms1.9%
Atomic.__exit__django/db/transaction.py:27516 ms1.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2616 ms1.9%
BaseDatabaseWrapper.commitdjango/db/backends/base/base.py:32716 ms1.9%
BaseDatabaseWrapper._commitdjango/db/backends/base/base.py:30316 ms1.9%
Connection.commitpsycopg/connection.py:30916 ms1.9%
Connection.waitpsycopg/connection.py:49516 ms1.9%
Command.handledjango/core/management/commands/flush.py:8954 ms6.5%
emit_post_migrate_signaldjango/core/management/sql.py:5254 ms6.5%
Signal.senddjango/dispatch/dispatcher.py:24954 ms6.5%
create_permissionsdjango/contrib/auth/management/__init__.py:10819 ms2.2%
QuerySet.bulk_createdjango/db/models/query.py:90019 ms2.2%
QuerySet._batched_insertdjango/db/models/query.py:217919 ms2.2%
QuerySet._insertdjango/db/models/query.py:214119 ms2.2%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:193619 ms2.2%
CursorWrapper.executedjango/db/backends/utils.py:7919 ms2.2%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9219 ms2.2%
CursorWrapper._executedjango/db/backends/utils.py:10519 ms2.2%
Cursor.executepsycopg/cursor.py:11319 ms2.2%
Connection.waitpsycopg/connection.py:49519 ms2.2%
create_permissionsdjango/contrib/auth/management/__init__.py:6215 ms1.8%
create_contenttypesdjango/contrib/contenttypes/management/__init__.py:14011 ms1.3%
QuerySet.bulk_createdjango/db/models/query.py:90011 ms1.3%
QuerySet._batched_insertdjango/db/models/query.py:217911 ms1.3%
QuerySet._insertdjango/db/models/query.py:214111 ms1.3%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19369 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:799 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:929 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1059 ms1.1%
Cursor.executepsycopg/cursor.py:1139 ms1.1%
Connection.waitpsycopg/connection.py:4959 ms1.1%
1 smaller frames hidden
1 smaller frames hidden
create_permissionsdjango/contrib/auth/management/__init__.py:8811 ms1.3%
QuerySet.__iter__django/db/models/query.py:43911 ms1.3%
QuerySet._fetch_alldjango/db/models/query.py:226211 ms1.3%
ValuesListIterable.__iter__django/db/models/query.py:26311 ms1.3%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:157411 ms1.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16257 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:797 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:927 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1057 ms0.8%
Cursor.executepsycopg/cursor.py:1137 ms0.8%
Connection.waitpsycopg/connection.py:4957 ms0.8%
1 smaller frames hidden
create_permissionsdjango/contrib/auth/management/__init__.py:817 ms0.8%
ContentTypeManager.get_for_modelsdjango/contrib/contenttypes/models.py:917 ms0.8%
QuerySet.__iter__django/db/models/query.py:4397 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:22627 ms0.8%
ModelIterable.__iter__django/db/models/query.py:1037 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16255 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:795 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms0.6%
CursorWrapper._executedjango/db/backends/utils.py:1055 ms0.6%
Cursor.executepsycopg/cursor.py:1135 ms0.6%
Connection.waitpsycopg/connection.py:4955 ms0.6%
1 smaller frames hidden
2 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
TestLegacyConferenceDataMigration.test_drops_legacy_tables_when_uniques_are_mysql_style_indexesconfs/tests.py:452 self._migrate(latest)195 ms23.4%
TestLegacyConferenceDataMigration._migrateconfs/tests.py:432 executor.migrate(targets)178 ms21.4%
MigrationExecutor.migratedjango/db/migrations/executor.py:137168 ms20.3%
MigrationExecutor._migrate_all_forwardsdjango/db/migrations/executor.py:169158 ms19.0%
MigrationExecutor.apply_migrationdjango/db/migrations/executor.py:257146 ms17.5%
Migration.applydjango/db/migrations/migration.py:132122 ms14.7%
SeparateDatabaseAndState.database_forwardsdjango/db/migrations/operations/special.py:3972 ms8.6%
DeleteModel.database_forwardsdjango/db/migrations/operations/models.py:39972 ms8.6%
BaseDatabaseSchemaEditor.delete_modeldjango/db/backends/base/schema.py:55972 ms8.6%
DatabaseSchemaEditor.executedjango/db/backends/postgresql/schema.py:4872 ms8.6%
BaseDatabaseSchemaEditor.executedjango/db/backends/base/schema.py:21172 ms8.6%
CursorWrapper.executedjango/db/backends/utils.py:7972 ms8.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9272 ms8.6%
CursorWrapper._executedjango/db/backends/utils.py:10372 ms8.6%
Cursor.executepsycopg/cursor.py:11372 ms8.6%
Connection.waitpsycopg/connection.py:49572 ms8.6%
RunPython.database_forwardsdjango/db/migrations/operations/special.py:20342 ms5.1%
migrate_legacy_conferencesconfs/migrations/0033_remove_legacy_conference_tables.py:55519 ms2.2%
migrate_legacy_pairconfs/migrations/0033_remove_legacy_conference_tables.py:398 legacy_accounts = list(account_model.objects.all())11 ms1.3%
QuerySet.__iter__django/db/models/query.py:43911 ms1.3%
QuerySet._fetch_alldjango/db/models/query.py:226211 ms1.3%
ModelIterable.__iter__django/db/models/query.py:1039 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16258 ms1.0%
CursorWrapper.executedjango/db/backends/utils.py:798 ms1.0%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:928 ms1.0%
CursorWrapper._executedjango/db/backends/utils.py:1055 ms0.6%
Cursor.executepsycopg/cursor.py:1135 ms0.6%
Connection.waitpsycopg/connection.py:4955 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
migrate_legacy_pairconfs/migrations/0033_remove_legacy_conference_tables.py:4195 ms0.6%
_refresh_account_countsconfs/migrations/0033_remove_legacy_conference_tables.py:325 counts = list(5 ms0.6%
QuerySet.__iter__django/db/models/query.py:4395 ms0.6%
QuerySet._fetch_alldjango/db/models/query.py:22625 ms0.6%
ValuesIterable.__iter__django/db/models/query.py:2475 ms0.6%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15745 ms0.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16255 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:795 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms0.6%
CursorWrapper._executedjango/db/backends/utils.py:1055 ms0.6%
Cursor.executepsycopg/cursor.py:1135 ms0.6%
Connection.waitpsycopg/connection.py:4955 ms0.6%
1 smaller frames hidden
migrate_legacy_conferencesconfs/migrations/0033_remove_legacy_conference_tables.py:55012 ms1.4%
_get_or_create_conferenceconfs/migrations/0033_remove_legacy_conference_tables.py:388 conference, _created = conference_model.objects.get_or_create(slug=spec["slug"], defaults=defaults)12 ms1.4%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:8712 ms1.4%
QuerySet.get_or_createdjango/db/models/query.py:10617 ms0.8%
QuerySet.createdjango/db/models/query.py:7367 ms0.8%
Model.savedjango/db/models/base.py:9047 ms0.8%
Model.save_basedjango/db/models/base.py:9967 ms0.8%
Model._save_tabledjango/db/models/base.py:11997 ms0.8%
Model._do_insertdjango/db/models/base.py:12517 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:877 ms0.8%
QuerySet._insertdjango/db/models/query.py:21417 ms0.8%
QuerySet.get_or_createdjango/db/models/query.py:10545 ms0.6%
QuerySet.getdjango/db/models/query.py:7025 ms0.6%
QuerySet.__len__django/db/models/query.py:4215 ms0.6%
QuerySet._fetch_alldjango/db/models/query.py:22625 ms0.6%
ModelIterable.__iter__django/db/models/query.py:1035 ms0.6%
migrate_legacy_conferencesconfs/migrations/0033_remove_legacy_conference_tables.py:5519 ms1.1%
1 smaller frames hidden
DeleteModel.database_forwardsdjango/db/migrations/operations/models.py:3997 ms0.8%
BaseDatabaseSchemaEditor.delete_modeldjango/db/backends/base/schema.py:5597 ms0.8%
DatabaseSchemaEditor.executedjango/db/backends/postgresql/schema.py:487 ms0.8%
BaseDatabaseSchemaEditor.executedjango/db/backends/base/schema.py:2117 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:797 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:927 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1037 ms0.8%
Cursor.executepsycopg/cursor.py:1137 ms0.8%
Connection.waitpsycopg/connection.py:4957 ms0.8%
1 smaller frames hidden
Migration.applydjango/db/migrations/migration.py:11824 ms2.9%
SeparateDatabaseAndState.state_forwardsdjango/db/migrations/operations/special.py:3124 ms2.9%
RemoveConstraint.state_forwardsdjango/db/migrations/operations/models.py:12099 ms1.1%
ProjectState.remove_constraintdjango/db/migrations/state.py:2499 ms1.1%
ProjectState._remove_optiondjango/db/migrations/state.py:2159 ms1.1%
ProjectState.reload_modeldjango/db/migrations/state.py:4269 ms1.1%
ProjectState._reloaddjango/db/migrations/state.py:4619 ms1.1%
StateApps.render_multipledjango/db/migrations/state.py:6919 ms1.1%
ModelState.renderdjango/db/migrations/state.py:9827 ms0.8%
Field.clonedjango/db/models/fields/__init__.py:7137 ms0.8%
URLField.__init__django/db/models/fields/__init__.py:27265 ms0.6%
CharField.__init__django/db/models/fields/__init__.py:12525 ms0.6%
deconstructible.<locals>.decorator.<locals>.__new__django/utils/deconstruct.py:175 ms0.6%
deconstructible.<locals>.decorator.<locals>.__new__django/utils/deconstruct.py:175 ms0.6%
<GC>~5 ms0.6%
1 smaller frames hidden
AlterTogetherOptionOperation.state_forwardsdjango/db/migrations/operations/models.py:6579 ms1.1%
ProjectState.alter_model_optionsdjango/db/migrations/state.py:1909 ms1.1%
ProjectState.reload_modeldjango/db/migrations/state.py:4269 ms1.1%
ProjectState._reloaddjango/db/migrations/state.py:4618 ms1.0%
StateApps.render_multipledjango/db/migrations/state.py:6918 ms1.0%
ModelState.renderdjango/db/migrations/state.py:9895 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
3 smaller frames hidden
MigrationExecutor.apply_migrationdjango/db/migrations/executor.py:25411 ms1.3%
BaseDatabaseSchemaEditor.__exit__django/db/backends/base/schema.py:17811 ms1.3%
Atomic.__exit__django/db/transaction.py:27511 ms1.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2611 ms1.3%
BaseDatabaseWrapper.commitdjango/db/backends/base/base.py:32711 ms1.3%
BaseDatabaseWrapper._commitdjango/db/backends/base/base.py:30311 ms1.3%
Connection.commitpsycopg/connection.py:30911 ms1.3%
Connection.waitpsycopg/connection.py:49511 ms1.3%
1 smaller frames hidden
MigrationExecutor._migrate_all_forwardsdjango/db/migrations/executor.py:16611 ms1.3%
cached_property.__get__django/utils/functional.py:4711 ms1.3%
ProjectState.appsdjango/db/migrations/state.py:59211 ms1.3%
__init____init__:-111 ms1.3%
StateApps.__init__django/db/migrations/state.py:65311 ms1.3%
StateApps.render_multipledjango/db/migrations/state.py:69111 ms1.3%
ModelState.renderdjango/db/migrations/state.py:9898 ms1.0%
ModelBase.__new__django/db/models/base.py:2145 ms0.6%
2 smaller frames hidden
1 smaller frames hidden
3 smaller frames hidden
TestLegacyConferenceDataMigration._migrateconfs/tests.py:431 executor.loader.build_graph()9 ms1.1%
MigrationLoader.build_graphdjango/db/migrations/loader.py:2885 ms0.6%
2 smaller frames hidden
TestLegacyConferenceDataMigration._migrateconfs/tests.py:430 executor = MigrationExecutor(connection)8 ms1.0%
__init____init__:-18 ms1.0%
MigrationExecutor.__init__django/db/migrations/executor.py:188 ms1.0%
__init____init__:-18 ms1.0%
MigrationLoader.__init__django/db/migrations/loader.py:598 ms1.0%
TestLegacyConferenceDataMigration.test_drops_legacy_tables_when_uniques_are_mysql_style_indexesconfs/tests.py:45183 ms10.0%
TestLegacyConferenceDataMigration._replace_unique_constraints_with_mysql_style_indexesconfs/tests.py:472 constraints = connection.introspection.get_constraints(cursor, table)37 ms4.5%
DatabaseIntrospection.get_constraintsdjango/db/backends/postgresql/introspection.py:25121 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:7921 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9221 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:10521 ms2.6%
Cursor.executepsycopg/cursor.py:11321 ms2.6%
Connection.waitpsycopg/connection.py:49521 ms2.6%
DatabaseIntrospection.get_constraintsdjango/db/backends/postgresql/introspection.py:21416 ms1.9%
CursorWrapper.executedjango/db/backends/utils.py:7916 ms1.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9216 ms1.9%
CursorWrapper._executedjango/db/backends/utils.py:10512 ms1.4%
Cursor.executepsycopg/cursor.py:11312 ms1.4%
Connection.waitpsycopg/connection.py:49512 ms1.4%
TestLegacyConferenceDataMigration._replace_unique_constraints_with_mysql_style_indexesconfs/tests.py:476 cursor.execute(f"ALTER TABLE {quote(table)} DROP CONSTRAINT IF EXISTS {quote(name)}")24 ms2.9%
CursorWrapper.executedjango/db/backends/utils.py:7924 ms2.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9224 ms2.9%
CursorWrapper._executedjango/db/backends/utils.py:10324 ms2.9%
Cursor.executepsycopg/cursor.py:11323 ms2.7%
Connection.waitpsycopg/connection.py:49523 ms2.7%
TestLegacyConferenceDataMigration._replace_unique_constraints_with_mysql_style_indexesconfs/tests.py:480 cursor.execute(f"CREATE UNIQUE INDEX {quote(index_name)} ON {quote(table)} ({columns})")21 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:7921 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9221 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:10321 ms2.6%
Cursor.executepsycopg/cursor.py:11321 ms2.6%
Connection.waitpsycopg/connection.py:49521 ms2.6%
1 smaller frames hidden
TestLegacyConferenceDataMigration.test_drops_legacy_tables_when_uniques_are_mysql_style_indexesconfs/tests.py:44733 ms4.0%
TestLegacyConferenceDataMigration._leaf_targetsconfs/tests.py:412 executor = MigrationExecutor(connection)33 ms4.0%
__init____init__:-133 ms4.0%
MigrationExecutor.__init__django/db/migrations/executor.py:1833 ms4.0%
__init____init__:-133 ms4.0%
MigrationLoader.__init__django/db/migrations/loader.py:5933 ms4.0%
MigrationLoader.build_graphdjango/db/migrations/loader.py:28829 ms3.5%
MigrationRecorder.applied_migrationsdjango/db/migrations/recorder.py:8928 ms3.3%
MigrationRecorder.has_tabledjango/db/migrations/recorder.py:6417 ms2.1%
BaseDatabaseIntrospection.table_namesdjango/db/backends/base/introspection.py:7017 ms2.1%
BaseDatabaseIntrospection.table_names.<locals>.get_namesdjango/db/backends/base/introspection.py:6317 ms2.1%
DatabaseIntrospection.get_table_listdjango/db/backends/postgresql/introspection.py:6717 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:7917 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9217 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:10317 ms2.1%
Cursor.executepsycopg/cursor.py:11317 ms2.1%
Connection.waitpsycopg/connection.py:49517 ms2.1%
MigrationRecorder.has_tabledjango/db/migrations/recorder.py:6311 ms1.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2611 ms1.3%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:32011 ms1.3%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:29611 ms1.3%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:30411 ms1.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2611 ms1.3%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:27911 ms1.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2611 ms1.3%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:25611 ms1.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2611 ms1.3%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:34511 ms1.3%
Connection.connectpsycopg/connection.py:10911 ms1.3%
wait_connpsycopg/waiting.py:1457 ms0.8%
BaseConnection._connect_genpsycopg/_connection_base.py:4397 ms0.8%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
TestLegacyConferenceDataMigration.test_drops_legacy_tables_when_uniques_are_mysql_style_indexesconfs/tests.py:45829 ms3.5%
TestLegacyConferenceDataMigration._migrateconfs/tests.py:430 executor = MigrationExecutor(connection)12 ms1.4%
__init____init__:-112 ms1.4%
MigrationExecutor.__init__django/db/migrations/executor.py:1812 ms1.4%
__init____init__:-112 ms1.4%
MigrationLoader.__init__django/db/migrations/loader.py:5912 ms1.4%
MigrationLoader.build_graphdjango/db/migrations/loader.py:2885 ms0.6%
MigrationLoader.build_graphdjango/db/migrations/loader.py:2825 ms0.6%
1 smaller frames hidden
TestLegacyConferenceDataMigration._migrateconfs/tests.py:431 executor.loader.build_graph()11 ms1.3%
MigrationLoader.build_graphdjango/db/migrations/loader.py:2885 ms0.6%
2 smaller frames hidden
TestLegacyConferenceDataMigration._migrateconfs/tests.py:432 executor.migrate(targets)7 ms0.8%
TestLegacyConferenceDataMigration.test_drops_legacy_tables_when_uniques_are_mysql_style_indexesconfs/tests.py:44811 ms1.3%
TestLegacyConferenceDataMigration._targets_withconfs/tests.py:41811 ms1.3%
TestLegacyConferenceDataMigration._leaf_targetsconfs/tests.py:412 executor = MigrationExecutor(connection)11 ms1.3%
__init____init__:-111 ms1.3%
MigrationExecutor.__init__django/db/migrations/executor.py:1811 ms1.3%
__init____init__:-111 ms1.3%
MigrationLoader.__init__django/db/migrations/loader.py:5911 ms1.3%
MigrationLoader.build_graphdjango/db/migrations/loader.py:2825 ms0.6%
2 smaller frames hidden
1 smaller frames hidden
Estimated from 627 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
confs/tests.py:432
executor.migrate(targets)
TestLegacyConferenceDataMigration._migrate
· Migrations
|
388 ms |
|
confs/tests.py:412
executor = MigrationExecutor(connection)
TestLegacyConferenceDataMigration._leaf_targets
· Migrations
|
44 ms |
|
confs/tests.py:472
constraints = connection.introspection.get_constraints(cursor, table)
TestLegacyConferenceDataMigration._replace_unique_constraints_with_mysql_style_indexes
· Database
|
37 ms |
|
confs/tests.py:431
executor.loader.build_graph()
TestLegacyConferenceDataMigration._migrate
· Migrations
|
30 ms |
|
confs/tests.py:430
executor = MigrationExecutor(connection)
TestLegacyConferenceDataMigration._migrate
· Migrations
|
28 ms |
|
confs/tests.py:476
cursor.execute(f"ALTER TABLE {quote(table)} DROP CONSTRAINT IF EXISTS {quote(name)}")
TestLegacyConferenceDataMigration._replace_unique_constraints_with_mysql_style_indexes
· Database
|
24 ms |
|
confs/tests.py:480
cursor.execute(f"CREATE UNIQUE INDEX {quote(index_name)} ON {quote(table)} ({columns})")
TestLegacyConferenceDataMigration._replace_unique_constraints_with_mysql_style_indexes
· Database
|
21 ms |
|
confs/migrations/0033_remove_legacy_conference_tables.py:388
conference, _created = conference_model.objects.get_or_create(slug=spec["slug"], defaults=defaults)
_get_or_create_conference
· Migrations
|
12 ms |
|
confs/migrations/0033_remove_legacy_conference_tables.py:398
legacy_accounts = list(account_model.objects.all())
migrate_legacy_pair
· Migrations
|
11 ms |
|
confs/migrations/0033_remove_legacy_conference_tables.py:325
counts = list(
_refresh_account_counts
· Migrations
|
5 ms |
Fixtures
Exact setup time| _dj_autoclear_mailbox function | 0.05 ms |
| _template_string_if_invalid_marker function | 0.04 ms |
| _django_db_marker function | 0.04 ms |
| _django_isolate_apps function | 0.03 ms |
| _live_server_helper function | 0.03 ms |
| _django_set_urlconf function | 0.03 ms |
| _django_clear_site_cache function | 0.03 ms |
| monkeypatch function | 0.02 ms |
Database
228 queries · 423 ms
Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).
22×
SELECT "django_content_type"."model" AS "model" FROM "django_content_type" WHERE "django_content_type"."app_label" = %s
13×
SELECT c.relname, CASE WHEN c.relispartition THEN ? WHEN c.relkind IN (…) THEN ? ELSE ? END, obj_description(c.oid, ?) FROM pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace WHERE c.relkind IN (…) AND n.nspname NOT IN (…) AND pg_catalog.pg_table_is_visible(c.oid)
11×
SELECT "django_migrations"."id", "django_migrations"."app", "django_migrations"."name", "django_migrations"."applied" FROM "django_migrations"
11×
SELECT "django_content_type"."id", "django_content_type"."app_label", "django_content_type"."model" FROM "django_content_type" WHERE ("django_content_type"."app_label" = %s AND "django_content_type"."model" IN (…))
11×
SELECT "auth_permission"."content_type_id" AS "content_type", "auth_permission"."codename" AS "codename" FROM "auth_permission" INNER JOIN "django_content_type" ON ("auth_permission"."content_type_id" = "django_content_type"."id") WHERE "auth_permission"."content_type_id" IN (…) ORDER BY "django_co…
Biggest pieces of work
|
call test body
confs/tests.py:452
|
624 ms |
|
call _post_teardown
django/test/testcases.py:1243
|
205 ms |
| setup pytest internals | 0.86 ms |
Reliability
12 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 12 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| 7 hours ago | CI github-actions:test | passed | 831 ms | Profile |
| 16 hours ago | CI github-actions:test | passed | 555 ms | Profile |
| 22 hours ago | CI github-actions:test | passed | 908 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 1.00 s | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 1.05 s | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 1.13 s | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 939 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 760 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 1.73 s | Profile |
| 3 weeks ago | CI github-actions:test | passed | 2.05 s | Profile |
| 3 weeks ago | CI github-actions:test | passed | 1.49 s | Profile |
| 3 weeks ago | CI github-actions:test | passed | 1.19 s | Run |