CI
github-actions:test
3 runs
Average
4.20 s
median 3.78 s
max 5.34 s
max 5.34 s
Phases
Setup 3.76 s
Call 434 ms
Teardown 3 ms
Categories
Migrations 2.99 s
Database 4 ms
Other (Imports, DB schema, Libraries, pytest, ...) 1.21 s
512 database queries per run
Needs 34 MB of memory (max 35 MB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 6 hours ago ·
open run
setup4.55 s85.1%
django_db_setuppytest_django/fixtures.py:198 db_cfg = setup_databases(4.52 s84.5%
setup_databasesdjango/test/utils.py:2074.52 s84.5%
create_test_dbdjango/db/backends/base/creation.py:854.10 s76.8%
call_commanddjango/core/management/__init__.py:1953.89 s72.9%
executedjango/core/management/base.py:4603.89 s72.9%
wrapperdjango/core/management/base.py:1073.89 s72.8%
handledjango/core/management/commands/migrate.py:3543.26 s61.0%
migratedjango/db/migrations/executor.py:1373.26 s61.0%
_migrate_all_forwardsdjango/db/migrations/executor.py:1693.26 s61.0%
apply_migrationdjango/db/migrations/executor.py:2573.03 s56.7%
applydjango/db/migrations/migration.py:1182.30 s43.1%
state_forwardsdjango/db/migrations/operations/fields.py:1081.01 s18.9%
add_fielddjango/db/migrations/state.py:2681.01 s18.9%
reload_modeldjango/db/migrations/state.py:425964 ms18.0%
_reloaddjango/db/migrations/state.py:460964 ms18.0%
render_multipledjango/db/migrations/state.py:690948 ms17.7%
renderdjango/db/migrations/state.py:988550 ms10.3%
__new__django/db/models/base.py:213207 ms3.9%
add_to_classdjango/db/models/base.py:393159 ms3.0%
contribute_to_classdjango/db/models/fields/related.py:2005119 ms2.2%
create_many_to_many_intermediary_modeldjango/db/models/fields/related.py:1343111 ms2.1%
__new__django/db/models/base.py:163104 ms1.9%
subclass_exceptiondjango/db/models/base.py:82104 ms1.9%
1 smaller frames hidden
1 smaller frames hidden
5 smaller frames hidden
subclass_exceptiondjango/db/models/base.py:8232 ms0.6%
__new__django/db/models/base.py:16364 ms1.2%
subclass_exceptiondjango/db/models/base.py:8264 ms1.2%
contribute_to_classdjango/db/models/options.py:23832 ms0.6%
__new__django/db/models/base.py:17748 ms0.9%
__new__django/db/models/base.py:12240 ms0.7%
__new__django/db/models/base.py:14940 ms0.7%
__new__django/db/models/base.py:14540 ms0.7%
__new__django/db/models/base.py:38732 ms0.6%
9 smaller frames hidden
renderdjango/db/migrations/state.py:981350 ms6.6%
clonedjango/db/models/fields/__init__.py:671255 ms4.8%
deconstructdjango/db/models/fields/__init__.py:131272 ms1.3%
deconstructdjango/db/models/fields/__init__.py:63664 ms1.2%
1 smaller frames hidden
__init__django/db/models/fields/__init__.py:278932 ms0.6%
deconstructdjango/db/models/fields/related.py:109532 ms0.6%
12 smaller frames hidden
clonedjango/db/models/fields/__init__.py:67288 ms1.6%
renderdjango/db/migrations/state.py:96840 ms0.7%
1 smaller frames hidden
1 smaller frames hidden
reload_modeldjango/db/migrations/state.py:42448 ms0.9%
_find_reload_modeldjango/db/migrations/state.py:38832 ms0.6%
1 smaller frames hidden
state_forwardsdjango/db/migrations/operations/fields.py:232828 ms15.5%
alter_fielddjango/db/migrations/state.py:304828 ms15.5%
reload_modeldjango/db/migrations/state.py:425780 ms14.6%
_reloaddjango/db/migrations/state.py:460780 ms14.6%
render_multipledjango/db/migrations/state.py:690780 ms14.6%
renderdjango/db/migrations/state.py:988621 ms11.6%
__new__django/db/models/base.py:213223 ms4.2%
add_to_classdjango/db/models/base.py:393159 ms3.0%
contribute_to_classdjango/db/models/fields/related.py:92764 ms1.2%
contribute_to_classdjango/db/models/fields/related.py:37864 ms1.2%
lazy_related_operationdjango/db/models/fields/related.py:8656 ms1.0%
lazy_model_operationdjango/apps/registry.py:42256 ms1.0%
get_registered_modeldjango/apps/registry.py:27056 ms1.0%
1 smaller frames hidden
8 smaller frames hidden
subclass_exceptiondjango/db/models/base.py:8240 ms0.7%
1 smaller frames hidden
__new__django/db/models/base.py:12296 ms1.8%
__new__django/db/models/base.py:16364 ms1.2%
subclass_exceptiondjango/db/models/base.py:8248 ms0.9%
2 smaller frames hidden
__new__django/db/models/base.py:17740 ms0.7%
__new__django/db/models/base.py:14532 ms0.6%
__new__django/db/models/base.py:38832 ms0.6%
10 smaller frames hidden
renderdjango/db/migrations/state.py:981127 ms2.4%
clonedjango/db/models/fields/__init__.py:67264 ms1.2%
clonedjango/db/models/fields/__init__.py:67156 ms1.0%
3 smaller frames hidden
reload_modeldjango/db/migrations/state.py:42448 ms0.9%
_find_reload_modeldjango/db/migrations/state.py:38832 ms0.6%
2 smaller frames hidden
state_forwardsdjango/db/migrations/operations/models.py:901255 ms4.8%
add_indexdjango/db/migrations/state.py:225255 ms4.8%
_append_optiondjango/db/migrations/state.py:208255 ms4.8%
reload_modeldjango/db/migrations/state.py:425247 ms4.6%
_reloaddjango/db/migrations/state.py:460247 ms4.6%
render_multipledjango/db/migrations/state.py:690247 ms4.6%
renderdjango/db/migrations/state.py:988135 ms2.5%
__new__django/db/models/base.py:21356 ms1.0%
add_to_classdjango/db/models/base.py:39340 ms0.7%
1 smaller frames hidden
8 smaller frames hidden
renderdjango/db/migrations/state.py:98196 ms1.8%
clonedjango/db/models/fields/__init__.py:67164 ms1.2%
clonedjango/db/models/fields/__init__.py:67232 ms0.6%
2 smaller frames hidden
1 smaller frames hidden
state_forwardsdjango/db/migrations/operations/models.py:66080 ms1.5%
alter_model_optionsdjango/db/migrations/state.py:19080 ms1.5%
reload_modeldjango/db/migrations/state.py:42572 ms1.3%
_reloaddjango/db/migrations/state.py:46072 ms1.3%
render_multipledjango/db/migrations/state.py:69072 ms1.3%
renderdjango/db/migrations/state.py:98848 ms0.9%
1 smaller frames hidden
1 smaller frames hidden
state_forwardsdjango/db/migrations/operations/models.py:8780 ms1.5%
add_modeldjango/db/migrations/state.py:12680 ms1.5%
reload_modeldjango/db/migrations/state.py:42580 ms1.5%
_reloaddjango/db/migrations/state.py:46080 ms1.5%
render_multipledjango/db/migrations/state.py:69080 ms1.5%
renderdjango/db/migrations/state.py:98848 ms0.9%
2 smaller frames hidden
state_forwardsdjango/db/migrations/operations/models.py:96140 ms0.7%
remove_indexdjango/db/migrations/state.py:22840 ms0.7%
_remove_optiondjango/db/migrations/state.py:21440 ms0.7%
reload_modeldjango/db/migrations/state.py:42540 ms0.7%
_reloaddjango/db/migrations/state.py:46040 ms0.7%
render_multipledjango/db/migrations/state.py:69040 ms0.7%
renderdjango/db/migrations/state.py:98832 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
applydjango/db/migrations/migration.py:133629 ms11.8%
database_forwardsdjango/db/migrations/operations/fields.py:243374 ms7.0%
alter_fielddjango/db/backends/base/schema.py:921374 ms7.0%
_alter_fielddjango/db/backends/postgresql/schema.py:282366 ms6.9%
_alter_fielddjango/db/backends/base/schema.py:959135 ms2.5%
_constraint_namesdjango/db/backends/base/schema.py:1993135 ms2.5%
get_constraintsdjango/db/backends/postgresql/introspection.py:21164 ms1.2%
executedjango/db/backends/utils.py:7964 ms1.2%
_execute_with_wrappersdjango/db/backends/utils.py:9264 ms1.2%
_executedjango/db/backends/utils.py:10556 ms1.0%
executepsycopg/cursor.py:11456 ms1.0%
waitpsycopg/connection.py:48356 ms1.0%
_execute_genpsycopg/_cursor_base.py:20648 ms0.9%
_maybe_prepare_genpsycopg/_cursor_base.py:28648 ms0.9%
_execute_sendpsycopg/client_cursor.py:7848 ms0.9%
1 smaller frames hidden
get_constraintsdjango/db/backends/postgresql/introspection.py:26656 ms1.0%
executedjango/db/backends/utils.py:7956 ms1.0%
_execute_with_wrappersdjango/db/backends/utils.py:9256 ms1.0%
_executedjango/db/backends/utils.py:10556 ms1.0%
executepsycopg/cursor.py:11456 ms1.0%
waitpsycopg/connection.py:48356 ms1.0%
_execute_genpsycopg/_cursor_base.py:20656 ms1.0%
_maybe_prepare_genpsycopg/_cursor_base.py:28656 ms1.0%
_execute_sendpsycopg/client_cursor.py:7856 ms1.0%
2 smaller frames hidden
_alter_fielddjango/db/backends/base/schema.py:1041111 ms2.1%
_constraint_namesdjango/db/backends/base/schema.py:1993104 ms1.9%
get_constraintsdjango/db/backends/postgresql/introspection.py:26664 ms1.2%
executedjango/db/backends/utils.py:7964 ms1.2%
_execute_with_wrappersdjango/db/backends/utils.py:9264 ms1.2%
_executedjango/db/backends/utils.py:10564 ms1.2%
executepsycopg/cursor.py:11464 ms1.2%
waitpsycopg/connection.py:48364 ms1.2%
_execute_genpsycopg/_cursor_base.py:20664 ms1.2%
_maybe_prepare_genpsycopg/_cursor_base.py:28664 ms1.2%
_execute_sendpsycopg/client_cursor.py:7864 ms1.2%
get_constraintsdjango/db/backends/postgresql/introspection.py:21132 ms0.6%
executedjango/db/backends/utils.py:7932 ms0.6%
_execute_with_wrappersdjango/db/backends/utils.py:9232 ms0.6%
1 smaller frames hidden
7 smaller frames hidden
1 smaller frames hidden
database_forwardsdjango/db/migrations/operations/models.py:100104 ms1.9%
create_modeldjango/db/backends/base/schema.py:51388 ms1.6%
executedjango/db/backends/postgresql/schema.py:4588 ms1.6%
executedjango/db/backends/base/schema.py:20580 ms1.5%
executedjango/db/backends/utils.py:7980 ms1.5%
_execute_with_wrappersdjango/db/backends/utils.py:9280 ms1.5%
_executedjango/db/backends/utils.py:10380 ms1.5%
executepsycopg/cursor.py:11480 ms1.5%
waitpsycopg/connection.py:48380 ms1.5%
1 smaller frames hidden
2 smaller frames hidden
database_forwardsdjango/db/migrations/operations/fields.py:12072 ms1.3%
add_fielddjango/db/backends/base/schema.py:77656 ms1.0%
executedjango/db/backends/postgresql/schema.py:4532 ms0.6%
executedjango/db/backends/base/schema.py:20532 ms0.6%
executedjango/db/backends/utils.py:7932 ms0.6%
_execute_with_wrappersdjango/db/backends/utils.py:9232 ms0.6%
_executedjango/db/backends/utils.py:10332 ms0.6%
executepsycopg/cursor.py:11432 ms0.6%
waitpsycopg/connection.py:48332 ms0.6%
_execute_genpsycopg/_cursor_base.py:20632 ms0.6%
_maybe_prepare_genpsycopg/_cursor_base.py:28632 ms0.6%
_execute_sendpsycopg/client_cursor.py:7832 ms0.6%
1 smaller frames hidden
2 smaller frames hidden
5 smaller frames hidden
applydjango/db/migrations/migration.py:11788 ms1.6%
clonedjango/db/migrations/state.py:57772 ms1.3%
clonedjango/db/migrations/state.py:94856 ms1.0%
2 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
apply_migrationdjango/db/migrations/executor.py:254183 ms3.4%
__exit__django/db/backends/base/schema.py:170135 ms2.5%
executedjango/db/backends/postgresql/schema.py:45135 ms2.5%
executedjango/db/backends/base/schema.py:205127 ms2.4%
executedjango/db/backends/utils.py:79127 ms2.4%
_execute_with_wrappersdjango/db/backends/utils.py:92127 ms2.4%
_executedjango/db/backends/utils.py:103127 ms2.4%
executepsycopg/cursor.py:114127 ms2.4%
waitpsycopg/connection.py:483127 ms2.4%
1 smaller frames hidden
__exit__django/db/backends/base/schema.py:17248 ms0.9%
__exit__django/db/transaction.py:26348 ms0.9%
innerdjango/utils/asyncio.py:2648 ms0.9%
commitdjango/db/backends/base/base.py:32748 ms0.9%
_commitdjango/db/backends/base/base.py:30348 ms0.9%
commitpsycopg/connection.py:30448 ms0.9%
waitpsycopg/connection.py:48348 ms0.9%
apply_migrationdjango/db/migrations/executor.py:26232 ms0.6%
record_migrationdjango/db/migrations/executor.py:27532 ms0.6%
record_applieddjango/db/migrations/recorder.py:10232 ms0.6%
createdjango/db/models/query.py:66932 ms0.6%
savedjango/db/models/base.py:87432 ms0.6%
save_basedjango/db/models/base.py:97232 ms0.6%
_save_tabledjango/db/models/base.py:116832 ms0.6%
_do_insertdjango/db/models/base.py:121832 ms0.6%
manager_methoddjango/db/models/manager.py:8732 ms0.6%
_insertdjango/db/models/query.py:191832 ms0.6%
execute_sqldjango/db/models/sql/compiler.py:192532 ms0.6%
executedjango/db/backends/utils.py:7932 ms0.6%
_execute_with_wrappersdjango/db/backends/utils.py:9232 ms0.6%
_executedjango/db/backends/utils.py:10532 ms0.6%
executepsycopg/cursor.py:11432 ms0.6%
waitpsycopg/connection.py:48332 ms0.6%
1 smaller frames hidden
handledjango/core/management/commands/migrate.py:381342 ms6.4%
emit_post_migrate_signaldjango/core/management/sql.py:52342 ms6.4%
senddjango/dispatch/dispatcher.py:209342 ms6.4%
create_permissionsdjango/contrib/auth/management/__init__.py:107104 ms1.9%
bulk_createdjango/db/models/query.py:833104 ms1.9%
_batched_insertdjango/db/models/query.py:195696 ms1.8%
_insertdjango/db/models/query.py:191896 ms1.8%
execute_sqldjango/db/models/sql/compiler.py:192588 ms1.6%
executedjango/db/backends/utils.py:7988 ms1.6%
_execute_with_wrappersdjango/db/backends/utils.py:9288 ms1.6%
_executedjango/db/backends/utils.py:10588 ms1.6%
executepsycopg/cursor.py:11488 ms1.6%
waitpsycopg/connection.py:48388 ms1.6%
_execute_genpsycopg/_cursor_base.py:20664 ms1.2%
_maybe_prepare_genpsycopg/_cursor_base.py:28656 ms1.0%
_execute_sendpsycopg/client_cursor.py:7856 ms1.0%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
create_permissionsdjango/contrib/auth/management/__init__.py:6180 ms1.5%
create_contenttypesdjango/contrib/contenttypes/management/__init__.py:13248 ms0.9%
bulk_createdjango/db/models/query.py:83332 ms0.6%
_batched_insertdjango/db/models/query.py:195632 ms0.6%
_insertdjango/db/models/query.py:191832 ms0.6%
execute_sqldjango/db/models/sql/compiler.py:192532 ms0.6%
executedjango/db/backends/utils.py:7932 ms0.6%
_execute_with_wrappersdjango/db/backends/utils.py:9232 ms0.6%
_executedjango/db/backends/utils.py:10532 ms0.6%
executepsycopg/cursor.py:11432 ms0.6%
waitpsycopg/connection.py:48332 ms0.6%
2 smaller frames hidden
2 smaller frames hidden
create_permissionsdjango/contrib/auth/management/__init__.py:9256 ms1.0%
__iter__django/db/models/query.py:39048 ms0.9%
_fetch_alldjango/db/models/query.py:200048 ms0.9%
__iter__django/db/models/query.py:23848 ms0.9%
results_iterdjango/db/models/sql/compiler.py:157348 ms0.9%
execute_sqldjango/db/models/sql/compiler.py:162440 ms0.7%
executedjango/db/backends/utils.py:7940 ms0.7%
_execute_with_wrappersdjango/db/backends/utils.py:9240 ms0.7%
_executedjango/db/backends/utils.py:10540 ms0.7%
executepsycopg/cursor.py:11440 ms0.7%
waitpsycopg/connection.py:48340 ms0.7%
1 smaller frames hidden
1 smaller frames hidden
create_permissionsdjango/contrib/auth/management/__init__.py:8040 ms0.7%
get_for_modelsdjango/contrib/contenttypes/models.py:9140 ms0.7%
__iter__django/db/models/query.py:39040 ms0.7%
_fetch_alldjango/db/models/query.py:200040 ms0.7%
__iter__django/db/models/query.py:9540 ms0.7%
create_contenttypesdjango/contrib/contenttypes/management/__init__.py:12532 ms0.6%
__iter__django/db/models/query.py:39032 ms0.6%
_fetch_alldjango/db/models/query.py:200032 ms0.6%
__iter__django/db/models/query.py:27732 ms0.6%
3 smaller frames hidden
handledjango/core/management/commands/migrate.py:114207 ms3.9%
__init__django/db/migrations/executor.py:18207 ms3.9%
__init__django/db/migrations/loader.py:59207 ms3.9%
build_graphdjango/db/migrations/loader.py:282151 ms2.8%
load_diskdjango/db/migrations/loader.py:121135 ms2.5%
import_module<stdlib>/importlib/__init__.py:88135 ms2.5%
_gcd_import<frozen importlib._bootstrap>:1406135 ms2.5%
_find_and_load<frozen importlib._bootstrap>:1371135 ms2.5%
_find_and_load_unlocked<frozen importlib._bootstrap>:1342111 ms2.1%
_load_unlocked<frozen importlib._bootstrap>:938111 ms2.1%
exec_module<frozen importlib._bootstrap_external>:75988 ms1.6%
get_code<frozen importlib._bootstrap_external>:89788 ms1.6%
source_to_code<frozen importlib._bootstrap_external>:82780 ms1.5%
_call_with_frames_removed<frozen importlib._bootstrap>:49180 ms1.5%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
build_graphdjango/db/migrations/loader.py:28856 ms1.0%
applied_migrationsdjango/db/migrations/recorder.py:8956 ms1.0%
has_tabledjango/db/migrations/recorder.py:6340 ms0.7%
innerdjango/utils/asyncio.py:2640 ms0.7%
cursordjango/db/backends/base/base.py:32040 ms0.7%
_cursordjango/db/backends/base/base.py:29640 ms0.7%
innerdjango/utils/asyncio.py:2640 ms0.7%
ensure_connectiondjango/db/backends/base/base.py:27940 ms0.7%
innerdjango/utils/asyncio.py:2640 ms0.7%
connectdjango/db/backends/base/base.py:25632 ms0.6%
innerdjango/utils/asyncio.py:2632 ms0.6%
get_new_connectiondjango/db/backends/postgresql/base.py:33332 ms0.6%
connectpsycopg/connection.py:10932 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
handledjango/core/management/commands/migrate.py:36456 ms1.0%
__get__django/utils/functional.py:4756 ms1.0%
appsdjango/db/migrations/state.py:59156 ms1.0%
__init__django/db/migrations/state.py:65256 ms1.0%
render_multipledjango/db/migrations/state.py:69056 ms1.0%
renderdjango/db/migrations/state.py:98840 ms0.7%
1 smaller frames hidden
2 smaller frames hidden
1 smaller frames hidden
call_commanddjango/core/management/__init__.py:118207 ms3.9%
load_command_classdjango/core/management/__init__.py:48207 ms3.9%
import_module<stdlib>/importlib/__init__.py:88207 ms3.9%
_gcd_import<frozen importlib._bootstrap>:1406207 ms3.9%
_find_and_load<frozen importlib._bootstrap>:1371207 ms3.9%
_find_and_load_unlocked<frozen importlib._bootstrap>:1342199 ms3.7%
_load_unlocked<frozen importlib._bootstrap>:938199 ms3.7%
exec_module<frozen importlib._bootstrap_external>:763191 ms3.6%
_call_with_frames_removed<frozen importlib._bootstrap>:491191 ms3.6%
<module>django/core/management/commands/migrate.py:9143 ms2.7%
_find_and_load<frozen importlib._bootstrap>:1371143 ms2.7%
_find_and_load_unlocked<frozen importlib._bootstrap>:1342143 ms2.7%
_load_unlocked<frozen importlib._bootstrap>:938143 ms2.7%
exec_module<frozen importlib._bootstrap_external>:75988 ms1.6%
get_code<frozen importlib._bootstrap_external>:89780 ms1.5%
source_to_code<frozen importlib._bootstrap_external>:82780 ms1.5%
_call_with_frames_removed<frozen importlib._bootstrap>:49180 ms1.5%
1 smaller frames hidden
exec_module<frozen importlib._bootstrap_external>:76356 ms1.0%
_call_with_frames_removed<frozen importlib._bootstrap>:49156 ms1.0%
<module>django/db/migrations/autodetector.py:1456 ms1.0%
_find_and_load<frozen importlib._bootstrap>:137156 ms1.0%
_find_and_load_unlocked<frozen importlib._bootstrap>:134256 ms1.0%
_load_unlocked<frozen importlib._bootstrap>:93856 ms1.0%
exec_module<frozen importlib._bootstrap_external>:76340 ms0.7%
_call_with_frames_removed<frozen importlib._bootstrap>:49140 ms0.7%
<module>django/db/migrations/questioner.py:1240 ms0.7%
_find_and_load<frozen importlib._bootstrap>:137140 ms0.7%
_find_and_load_unlocked<frozen importlib._bootstrap>:134240 ms0.7%
_load_unlocked<frozen importlib._bootstrap>:93840 ms0.7%
1 smaller frames hidden
<module>django/core/management/commands/migrate.py:1048 ms0.9%
_find_and_load<frozen importlib._bootstrap>:137148 ms0.9%
_find_and_load_unlocked<frozen importlib._bootstrap>:134248 ms0.9%
_load_unlocked<frozen importlib._bootstrap>:93848 ms0.9%
exec_module<frozen importlib._bootstrap_external>:75948 ms0.9%
get_code<frozen importlib._bootstrap_external>:89740 ms0.7%
source_to_code<frozen importlib._bootstrap_external>:82740 ms0.7%
_call_with_frames_removed<frozen importlib._bootstrap>:49140 ms0.7%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
create_test_dbdjango/db/backends/base/creation.py:69334 ms6.3%
_create_test_dbdjango/db/backends/base/creation.py:223287 ms5.4%
_execute_create_test_dbdjango/db/backends/postgresql/creation.py:46287 ms5.4%
_execute_create_test_dbdjango/db/backends/base/creation.py:209287 ms5.4%
executedjango/db/backends/utils.py:79287 ms5.4%
_execute_with_wrappersdjango/db/backends/utils.py:92287 ms5.4%
_executedjango/db/backends/utils.py:103287 ms5.4%
executepsycopg/cursor.py:114287 ms5.4%
waitpsycopg/connection.py:483287 ms5.4%
_create_test_dbdjango/db/backends/base/creation.py:22148 ms0.9%
_nodb_cursordjango/db/backends/postgresql/base.py:50848 ms0.9%
_nodb_cursordjango/db/backends/base/base.py:71248 ms0.9%
innerdjango/utils/asyncio.py:2648 ms0.9%
cursordjango/db/backends/base/base.py:32048 ms0.9%
_cursordjango/db/backends/base/base.py:29648 ms0.9%
innerdjango/utils/asyncio.py:2648 ms0.9%
ensure_connectiondjango/db/backends/base/base.py:27948 ms0.9%
innerdjango/utils/asyncio.py:2648 ms0.9%
connectdjango/db/backends/base/base.py:25648 ms0.9%
innerdjango/utils/asyncio.py:2648 ms0.9%
get_new_connectiondjango/db/backends/postgresql/base.py:33348 ms0.9%
connectpsycopg/connection.py:10948 ms0.9%
wait_connpsycopg/waiting.py:11232 ms0.6%
select<stdlib>/selectors.py:45232 ms0.6%
1 smaller frames hidden
create_test_dbdjango/db/backends/base/creation.py:11480 ms1.5%
call_commanddjango/core/management/__init__.py:11872 ms1.3%
load_command_classdjango/core/management/__init__.py:4872 ms1.3%
import_module<stdlib>/importlib/__init__.py:8872 ms1.3%
_gcd_import<frozen importlib._bootstrap>:140672 ms1.3%
_find_and_load<frozen importlib._bootstrap>:137172 ms1.3%
_find_and_load_unlocked<frozen importlib._bootstrap>:134272 ms1.3%
_load_unlocked<frozen importlib._bootstrap>:93872 ms1.3%
exec_module<frozen importlib._bootstrap_external>:76348 ms0.9%
_call_with_frames_removed<frozen importlib._bootstrap>:49148 ms0.9%
<module>django/core/management/commands/createcachetable.py:348 ms0.9%
_find_and_load<frozen importlib._bootstrap>:137148 ms0.9%
_find_and_load_unlocked<frozen importlib._bootstrap>:134248 ms0.9%
_load_unlocked<frozen importlib._bootstrap>:93848 ms0.9%
exec_module<frozen importlib._bootstrap_external>:75948 ms0.9%
get_code<frozen importlib._bootstrap_external>:89748 ms0.9%
source_to_code<frozen importlib._bootstrap_external>:82748 ms0.9%
_call_with_frames_removed<frozen importlib._bootstrap>:49148 ms0.9%
1 smaller frames hidden
1 smaller frames hidden
2 smaller frames hidden
call788 ms14.7%
test_indexapps/api/tests.py:42 response = self.client.get("/api/v1/")770 ms14.4%
getdjango/test/client.py:1124770 ms14.4%
getdjango/test/client.py:475770 ms14.4%
genericdjango/test/client.py:671770 ms14.4%
requestdjango/test/client.py:1082770 ms14.4%
__call__django/test/client.py:186541 ms10.1%
get_responsedjango/core/handlers/base.py:141541 ms10.1%
innerdjango/core/handlers/exception.py:55541 ms10.1%
__call__debug_toolbar/middleware.py:130541 ms10.1%
innerdjango/core/handlers/exception.py:55541 ms10.1%
__call__django/utils/deprecation.py:309541 ms10.1%
innerdjango/core/handlers/exception.py:55541 ms10.1%
__call__whitenoise/middleware.py:123541 ms10.1%
innerdjango/core/handlers/exception.py:55541 ms10.1%
__call__django/utils/deprecation.py:309541 ms10.1%
innerdjango/core/handlers/exception.py:55541 ms10.1%
__call__django/utils/deprecation.py:309536 ms10.0%
innerdjango/core/handlers/exception.py:55536 ms10.0%
__call__django/utils/deprecation.py:309536 ms10.0%
innerdjango/core/handlers/exception.py:55536 ms10.0%
__call__django/utils/deprecation.py:309536 ms10.0%
innerdjango/core/handlers/exception.py:55536 ms10.0%
__call__django/utils/deprecation.py:309530 ms9.9%
innerdjango/core/handlers/exception.py:55530 ms9.9%
__call__django/utils/deprecation.py:309530 ms9.9%
innerdjango/core/handlers/exception.py:55530 ms9.9%
middlewareallauth/account/middleware.py:34530 ms9.9%
innerdjango/core/handlers/exception.py:55530 ms9.9%
_get_responsedjango/core/handlers/base.py:182530 ms9.9%
resolve_requestdjango/core/handlers/base.py:314530 ms9.9%
resolvedjango/urls/resolvers.py:676525 ms9.8%
__get__django/utils/functional.py:47525 ms9.8%
url_patternsdjango/urls/resolvers.py:729525 ms9.8%
__get__django/utils/functional.py:47525 ms9.8%
urlconf_moduledjango/urls/resolvers.py:722525 ms9.8%
import_module<stdlib>/importlib/__init__.py:88525 ms9.8%
_gcd_import<frozen importlib._bootstrap>:1406525 ms9.8%
_find_and_load<frozen importlib._bootstrap>:1371525 ms9.8%
_find_and_load_unlocked<frozen importlib._bootstrap>:1342525 ms9.8%
_load_unlocked<frozen importlib._bootstrap>:938525 ms9.8%
exec_module<frozen importlib._bootstrap_external>:763518 ms9.7%
_call_with_frames_removed<frozen importlib._bootstrap>:491518 ms9.7%
<module>ft/urls.py:35 from apps.projects.urls import project_urlpatterns397 ms7.4%
_find_and_load<frozen importlib._bootstrap>:1371397 ms7.4%
_find_and_load_unlocked<frozen importlib._bootstrap>:1342397 ms7.4%
_load_unlocked<frozen importlib._bootstrap>:938397 ms7.4%
exec_module<frozen importlib._bootstrap_external>:759379 ms7.1%
get_code<frozen importlib._bootstrap_external>:897377 ms7.1%
source_to_code<frozen importlib._bootstrap_external>:827377 ms7.1%
_call_with_frames_removed<frozen importlib._bootstrap>:491377 ms7.1%
1 smaller frames hidden
1 smaller frames hidden
<module>ft/urls.py:152 path("accounts/", include("allauth.urls")),99 ms1.8%
includedjango/urls/conf.py:3999 ms1.8%
import_module<stdlib>/importlib/__init__.py:8899 ms1.8%
_gcd_import<frozen importlib._bootstrap>:140699 ms1.8%
_find_and_load<frozen importlib._bootstrap>:137199 ms1.8%
_find_and_load_unlocked<frozen importlib._bootstrap>:134299 ms1.8%
_load_unlocked<frozen importlib._bootstrap>:93899 ms1.8%
exec_module<frozen importlib._bootstrap_external>:76394 ms1.8%
_call_with_frames_removed<frozen importlib._bootstrap>:49194 ms1.8%
<module>allauth/urls.py:3481 ms1.5%
includedjango/urls/conf.py:3981 ms1.5%
import_module<stdlib>/importlib/__init__.py:8881 ms1.5%
_gcd_import<frozen importlib._bootstrap>:140681 ms1.5%
_find_and_load<frozen importlib._bootstrap>:137181 ms1.5%
_find_and_load_unlocked<frozen importlib._bootstrap>:134281 ms1.5%
_load_unlocked<frozen importlib._bootstrap>:93881 ms1.5%
exec_module<frozen importlib._bootstrap_external>:76381 ms1.5%
_call_with_frames_removed<frozen importlib._bootstrap>:49181 ms1.5%
<module>allauth/account/urls.py:779 ms1.5%
_handle_fromlist<frozen importlib._bootstrap>:143479 ms1.5%
_call_with_frames_removed<frozen importlib._bootstrap>:49179 ms1.5%
_find_and_load<frozen importlib._bootstrap>:137179 ms1.5%
_find_and_load_unlocked<frozen importlib._bootstrap>:134276 ms1.4%
_load_unlocked<frozen importlib._bootstrap>:93876 ms1.4%
exec_module<frozen importlib._bootstrap_external>:76340 ms0.8%
_call_with_frames_removed<frozen importlib._bootstrap>:49140 ms0.8%
<module>allauth/account/views.py:2129 ms0.5%
_find_and_load<frozen importlib._bootstrap>:137129 ms0.5%
_find_and_load_unlocked<frozen importlib._bootstrap>:134229 ms0.5%
_load_unlocked<frozen importlib._bootstrap>:93829 ms0.5%
3 smaller frames hidden
exec_module<frozen importlib._bootstrap_external>:75936 ms0.7%
get_code<frozen importlib._bootstrap_external>:89734 ms0.6%
source_to_code<frozen importlib._bootstrap_external>:82734 ms0.6%
_call_with_frames_removed<frozen importlib._bootstrap>:49134 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
3 smaller frames hidden
1 smaller frames hidden
5 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
__call__django/test/client.py:173229 ms4.3%
load_middlewaredjango/core/handlers/base.py:62119 ms2.2%
__init__whitenoise/middleware.py:104112 ms2.1%
add_fileswhitenoise/base.py:108112 ms2.1%
update_files_dictionarywhitenoise/base.py:120101 ms1.9%
add_file_to_dictionarywhitenoise/base.py:131101 ms1.9%
get_static_filewhitenoise/base.py:20881 ms1.5%
__init__whitenoise/responders.py:7734 ms0.6%
4 smaller frames hidden
3 smaller frames hidden
1 smaller frames hidden
2 smaller frames hidden
load_middlewaredjango/core/handlers/base.py:41108 ms2.0%
import_stringdjango/utils/module_loading.py:30108 ms2.0%
cached_importdjango/utils/module_loading.py:15108 ms2.0%
import_module<stdlib>/importlib/__init__.py:88108 ms2.0%
_gcd_import<frozen importlib._bootstrap>:1406108 ms2.0%
_find_and_load<frozen importlib._bootstrap>:1371108 ms2.0%
_find_and_load_unlocked<frozen importlib._bootstrap>:1342101 ms1.9%
_load_unlocked<frozen importlib._bootstrap>:938101 ms1.9%
exec_module<frozen importlib._bootstrap_external>:76358 ms1.1%
_call_with_frames_removed<frozen importlib._bootstrap>:49158 ms1.1%
exec_module<frozen importlib._bootstrap_external>:75943 ms0.8%
get_code<frozen importlib._bootstrap_external>:89736 ms0.7%
source_to_code<frozen importlib._bootstrap_external>:82734 ms0.6%
_call_with_frames_removed<frozen importlib._bootstrap>:49134 ms0.6%
1 smaller frames hidden
2 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
3 smaller frames hidden
teardown7 ms0.1%
Estimated from 930 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
ft/urls.py:35
from apps.projects.urls import project_urlpatterns
<module>
· Imports
|
379 ms |
|
apps/api/tests.py:42
response = self.client.get("/api/v1/")
test_index
· Imports
|
251 ms |
|
ft/urls.py:152
path("accounts/", include("allauth.urls")),
<module>
· Imports
|
99 ms |
|
apps/projects/urls.py:8
from django.contrib.humanize.templatetags.humanize import naturaltime
<module>
· Imports
|
16 ms |
|
apps/projects/migrations/0011_environments_profiles.py:182
models.ForeignKey(
Migration
· Imports
|
8 ms |
|
ft/urls.py:181
path("api/v1/", include("apps.api.urls")),
<module>
· Imports
|
7 ms |
|
ft/urls.py:151
path("admin/", admin.site.urls),
<module>
· Imports
|
7 ms |
|
ft/urls.py:153
path("__debug__/", include("debug_toolbar.urls")),
<module>
· Imports
|
4 ms |
|
apps/projects/urls.py:627
class ProjectSettingsForm(forms.ModelForm):
<module>
· Imports
|
2 ms |
|
ft/urls.py:83
def tos(request):
<module>
· Imports
|
2 ms |
Fixtures
Exact setup time| _django_setup_unittest class | 4.54 s |
| django_db_setup session | 4.54 s |
| _unittest_setUpClass_fixture_TestApiIndex class | 0.44 ms |
| _fail_for_invalid_template_variable session | 0.28 ms |
| django_test_environment session | 0.23 ms |
| django_db_use_migrations session | 0.14 ms |
| _django_set_urlconf function | 0.09 ms |
| _template_string_if_invalid_marker function | 0.08 ms |
| _django_db_marker function | 0.07 ms |
| _dj_autoclear_mailbox function | 0.07 ms |
Database
512 queries · 651 ms
Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).
66×
INSERT INTO "django_migrations" ("app", "name", "applied") VALUES (%s, %s, %s) RETURNING "django_migrations"."id"
20×
SELECT "django_content_type"."model" AS "model" FROM "django_content_type" WHERE "django_content_type"."app_label" = %s
18×
SELECT c.conname, array( SELECT attname FROM unnest(c.conkey) WITH ORDINALITY cols(colid, arridx) JOIN pg_attribute AS ca ON cols.colid = ca.attnum WHERE ca.attrelid = c.conrelid ORDER BY cols.arridx ), c.contype, (SELECT fkc.relname || ? || fka.attname FROM pg_attribute AS fka JOIN pg_class AS fkc…
18×
SELECT indexname, array_agg(attname ORDER BY arridx), indisunique, indisprimary, array_agg(ordering ORDER BY arridx), amname, exprdef, s2.attoptions FROM ( SELECT c2.relname as indexname, idx.*, attr.attname, am.amname, CASE WHEN idx.indexprs IS NOT NULL THEN pg_get_indexdef(idx.indexrelid) END AS …
10×
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 (…))
Biggest pieces of work
|
setup fixture django_db_setup (session scope)
pytest_django/fixtures.py:198
|
4.52 s |
|
call test body
apps/api/tests.py:42
|
772 ms |
|
setup signature
<stdlib>/inspect.py:3334
|
16 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
9 ms |
|
setup sysmon_py_start
coverage/sysmon.py:351
|
8 ms |
Reliability
3 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 50 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| 6 hours ago | CI github-actions:test | passed | 5.34 s | Profile |
| 6 hours ago | CI github-actions:test | passed | 3.78 s | Profile |
| 6 hours ago | CI github-actions:test | passed | 3.48 s | Profile |
| 2 years ago | CI github-actions | passed | 256 ms | Run |
| 2 years, 2 months ago | CI github-actions | passed | 310 ms | Run |
| 2 years, 3 months ago | CI github-actions | passed | 225 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 271 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 170 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 268 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 156 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 223 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 229 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 233 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 222 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 233 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 242 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 241 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 257 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 230 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 659 ms | Run |