flakytest.dev anze3db flakytest
Tests / apps/projects/tests.py

LegacyUrlTest::test_by_id

First seen 7 hours ago in 78a4357
CI github-actions:test 5 runs
Average
133 ms
median 141 ms
max 155 ms
Phases
Setup 61 ms Call 72 ms Teardown 0.22 ms
Categories
Database 98 ms App code 0.88 ms Factories 0.78 ms Other (Libraries, pytest, Serialization, Unsampled) 34 ms

115 database queries per run

Needs 747 KB of memory (max 836 KB)

Duration per run

Where the time goes

Latest run in ci:github-actions:test, 14 minutes ago · open run
Show pytest frames
setup65 ms45.8%
TestCase.setUpClassdjango/test/testcases.py:1439 cls.setUpTestData()51 ms36.3%
LegacyUrlTest.setUpTestDataapps/projects/tests.py:37435 ms25.1%
store_profileapps/projects/testing.py:37318 ms13.0%
process_profile_partapps/projects/profiles.py:342 profile = claim_part(part, document)9 ms6.1%
claim_partapps/projects/profiles.py:3782 ms1.7%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(2 ms1.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.7%
QuerySet.get_or_createdjango/db/models/query.py:9922 ms1.7%
Atomic.__enter__django/db/transaction.py:2111 ms0.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms0.9%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4001 ms0.9%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3671 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
Atomic.__exit__django/db/transaction.py:2471 ms0.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms0.9%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4311 ms0.9%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3751 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
claim_partapps/projects/profiles.py:383 commit, _ = Commit.objects.get_or_create(2 ms1.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.7%
QuerySet.get_or_createdjango/db/models/query.py:9871 ms0.9%
QuerySet.getdjango/db/models/query.py:6351 ms0.9%
QuerySet.__len__django/db/models/query.py:3721 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
QuerySet.get_or_createdjango/db/models/query.py:9941 ms0.9%
QuerySet.createdjango/db/models/query.py:6691 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
claim_partapps/projects/profiles.py:358 profile = Profile.objects.select_for_update(no_key=True).get(pk=part.profile_id)1 ms0.9%
QuerySet.getdjango/db/models/query.py:6351 ms0.9%
QuerySet.__len__django/db/models/query.py:3721 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
claim_partapps/projects/profiles.py:359 ProfilePart.objects.filter(pk=part.pk).update(status=ProfilePart.StatusTypes.PENDING)1 ms0.9%
QuerySet.updatedjango/db/models/query.py:13001 ms0.9%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21111 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
Atomic.__exit__django/db/transaction.py:2471 ms0.9%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms0.9%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4311 ms0.9%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3751 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
BaseCursor._execute_genpsycopg/_cursor_base.py:2061 ms0.9%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2861 ms0.9%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:781 ms0.9%
process_profile_partapps/projects/profiles.py:335 part = ProfilePart.objects.filter(pk=part.pk).first()2 ms1.7%
QuerySet.firstdjango/db/models/query.py:11452 ms1.7%
QuerySet.__iter__django/db/models/query.py:3902 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.7%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16111 ms0.9%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7671 ms0.9%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:871 ms0.9%
SQLCompiler.get_order_bydjango/db/models/sql/compiler.py:4921 ms0.9%
BaseExpression.resolve_expressiondjango/db/models/expressions.py:2971 ms0.9%
ModelIterable.__iter__django/db/models/query.py:1281 ms0.9%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15811 ms0.9%
SQLCompiler.has_composite_fieldsdjango/db/models/sql/compiler.py:15491 ms0.9%
process_profile_partapps/projects/profiles.py:3442 ms1.7%
upsert_testsapps/projects/profiles.py:4512 ms1.7%
TestManager.upsertapps/projects/models.py:230 self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order1 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet.bulk_createdjango/db/models/query.py:8331 ms0.9%
QuerySet._batched_insertdjango/db/models/query.py:19561 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
TestManager.upsertapps/projects/models.py:236 return {test.name: test for test in self.filter(project=project, name__in=names)}1 ms0.9%
QuerySet.__iter__django/db/models/query.py:3901 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
process_profile_partapps/projects/profiles.py:345 write_perfs(profile, part, entries, tests)2 ms1.7%
write_perfsapps/projects/profiles.py:457 TestPerf.objects.filter(profile=profile, part=part.index).delete()1 ms0.9%
QuerySet.deletedjango/db/models/query.py:12381 ms0.9%
Collector.deletedjango/db/models/deletion.py:4711 ms0.9%
QuerySet._raw_deletedjango/db/models/query.py:12601 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
write_perfsapps/projects/profiles.py:458 TestPerf.objects.bulk_create(1 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet.bulk_createdjango/db/models/query.py:8331 ms0.9%
QuerySet._batched_insertdjango/db/models/query.py:19561 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
process_profile_partapps/projects/profiles.py:3411 ms0.9%
load_documentapps/projects/profiles.py:112 return json.loads(gzip.decompress(bytes(part.document)))1 ms0.9%
loads<stdlib>/json/__init__.py:3711 ms0.9%
JSONDecoder.decode<stdlib>/json/decoder.py:3581 ms0.9%
JSONDecoder.raw_decode<stdlib>/json/decoder.py:3741 ms0.9%
process_profile_partapps/projects/profiles.py:3461 ms0.9%
write_snapshotsapps/projects/profiles.py:3121 ms0.9%
write_snapshots.<locals>.<genexpr>apps/projects/profiles.py:3101 ms0.9%
write_snapshots.<locals>.rowapps/projects/profiles.py:306 compress(json.dumps(snapshot_document(document, entry), separators=(",", ":")).encode()),1 ms0.9%
compressapps/projects/profiles.py:108 return gzip.compress(data, compresslevel=6)1 ms0.9%
compress<stdlib>/gzip.py:6681 ms0.9%
store_profileapps/projects/testing.py:374 finalize_profile(profile.id)11 ms7.8%
finalize_profileapps/projects/profiles.py:4964 ms2.6%
add_perfsapps/projects/rollups.py:30 for perf in perfs:1 ms0.9%
QuerySet.__iter__django/db/models/query.py:3901 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
add_perfsapps/projects/rollups.py:64 for row in TestDailyStats.objects.filter(1 ms0.9%
QuerySet.__iter__django/db/models/query.py:3901 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
add_perfsapps/projects/rollups.py:88 TestDailyStats.objects.bulk_create(1 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet.bulk_createdjango/db/models/query.py:8331 ms0.9%
QuerySet._batched_insertdjango/db/models/query.py:19561 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
finalize_profileapps/projects/profiles.py:479 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)1 ms0.9%
QuerySet.getdjango/db/models/query.py:6251 ms0.9%
QuerySet.filterdjango/db/models/query.py:15421 ms0.9%
QuerySet._filter_or_excludedjango/db/models/query.py:15601 ms0.9%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15701 ms0.9%
Query.add_qdjango/db/models/sql/query.py:16711 ms0.9%
Query._add_qdjango/db/models/sql/query.py:17031 ms0.9%
Query.build_filterdjango/db/models/sql/query.py:16131 ms0.9%
finalize_profileapps/projects/profiles.py:483 for part in ProfilePart.objects.filter(profile=profile).defer("document").order_by("index", "id"):1 ms0.9%
QuerySet.__iter__django/db/models/query.py:3901 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16111 ms0.9%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7671 ms0.9%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:871 ms0.9%
SQLCompiler.get_order_bydjango/db/models/sql/compiler.py:5331 ms0.9%
finalize_profileapps/projects/profiles.py:490 rows.filter(part__gte=profile.parts).delete()1 ms0.9%
QuerySet.deletedjango/db/models/query.py:12381 ms0.9%
Collector.deletedjango/db/models/deletion.py:4711 ms0.9%
QuerySet._raw_deletedjango/db/models/query.py:12601 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
finalize_profileapps/projects/profiles.py:492 for duplicate in duplicates:1 ms0.9%
QuerySet.__iter__django/db/models/query.py:3901 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ValuesIterable.__iter__django/db/models/query.py:2221 ms0.9%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15731 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
finalize_profileapps/projects/profiles.py:495 Environment.objects.select_for_update(no_key=True).filter(pk=profile.environment_id).first()1 ms0.9%
QuerySet.firstdjango/db/models/query.py:11451 ms0.9%
QuerySet.__iter__django/db/models/query.py:3901 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
finalize_profileapps/projects/profiles.py:5041 ms0.9%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)1 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11101 ms0.9%
Model._do_updatedjango/db/models/base.py:12111 ms0.9%
QuerySet._updatedjango/db/models/query.py:13271 ms0.9%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21401 ms0.9%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21111 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
store_profileapps/projects/testing.py:3714 ms2.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:874 ms2.6%
QuerySet.createdjango/db/models/query.py:6692 ms1.7%
Profile.saveapps/projects/models.py:465 self.number = next_number(type(self), self.project_id)1 ms0.9%
next_numberapps/projects/models.py:35 return (model.objects.filter(project_id=project_id).aggregate(last=models.Max("number"))["last"] or 0) + 11 ms0.9%
QuerySet.aggregatedjango/db/models/query.py:5941 ms0.9%
Query.get_aggregationdjango/db/models/sql/query.py:6331 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)1 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
QuerySet.createdjango/db/models/query.py:6671 ms0.9%
Model.__init__django/db/models/base.py:5581 ms0.9%
store_profileapps/projects/testing.py:372 part = ProfilePart.objects.create(profile=profile, index=0, document=compress(data), document_size=len(data))1 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet.createdjango/db/models/query.py:6691 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
store_profileapps/projects/testing.py:375 profile.refresh_from_db()1 ms0.9%
Model.refresh_from_dbdjango/db/models/base.py:7581 ms0.9%
QuerySet.getdjango/db/models/query.py:6351 ms0.9%
QuerySet.__len__django/db/models/query.py:3721 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
LegacyUrlTest.setUpTestDataapps/projects/tests.py:3707 ms5.2%
make_projectapps/projects/testing.py:622 ms1.7%
unique_slugapps/orgs/models.py:44 base = slugify(name)[:40].strip("-") or fallback1 ms0.9%
keep_lazy.<locals>.decorator.<locals>.wrapperdjango/utils/functional.py:2311 ms0.9%
unique_slugapps/orgs/models.py:46 while slug in reserved or taken.filter(slug=slug).exists():1 ms0.9%
QuerySet.existsdjango/db/models/query.py:13371 ms0.9%
Query.has_resultsdjango/db/models/sql/query.py:6811 ms0.9%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15921 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
make_projectapps/projects/testing.py:712 ms1.7%
add_memberapps/projects/testing.py:76 membership, _ = Membership.objects.get_or_create(2 ms1.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.7%
QuerySet.get_or_createdjango/db/models/query.py:9871 ms0.9%
QuerySet.getdjango/db/models/query.py:6351 ms0.9%
QuerySet.__len__django/db/models/query.py:3721 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ModelIterable.__iter__django/db/models/query.py:951 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
QuerySet.get_or_createdjango/db/models/query.py:9941 ms0.9%
QuerySet.createdjango/db/models/query.py:6691 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
make_projectapps/projects/testing.py:67 slug=unique_slug(name, organization.project_set.all(), fallback="project", reserved=RESERVED_PROJECT_SLUGS),1 ms0.9%
unique_slugapps/orgs/models.py:46 while slug in reserved or taken.filter(slug=slug).exists():1 ms0.9%
QuerySet.existsdjango/db/models/query.py:13371 ms0.9%
Query.has_resultsdjango/db/models/sql/query.py:6811 ms0.9%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15921 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
make_projectapps/projects/testing.py:64 project = Project.objects.create(1 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet.createdjango/db/models/query.py:6691 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
LegacyUrlTest.setUpTestDataapps/projects/tests.py:3712 ms1.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.7%
QuerySet.createdjango/db/models/query.py:6692 ms1.7%
Test.saveapps/projects/models.py:2932 ms1.7%
TestManager.slugs_forapps/projects/models.py:240 existing = dict(self.filter(project_id=project_id, name__in=names).values_list("name", "slug"))1 ms0.9%
QuerySet.__iter__django/db/models/query.py:3901 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
ValuesListIterable.__iter__django/db/models/query.py:2381 ms0.9%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15731 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
TestManager.slugs_forapps/projects/models.py:242 taken = set(self.filter(project_id=project_id, slug__in=set(new.values())).values_list("slug", flat=True))1 ms0.9%
QuerySet.__iter__django/db/models/query.py:3901 ms0.9%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms0.9%
FlatValuesListIterable.__iter__django/db/models/query.py:2771 ms0.9%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15731 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
LegacyUrlTest.setUpTestDataapps/projects/tests.py:3732 ms1.7%
makemodel_bakery/baker.py:1392 ms1.7%
Baker.makemodel_bakery/baker.py:4062 ms1.7%
Baker._makemodel_bakery/baker.py:4822 ms1.7%
Baker.instancemodel_bakery/baker.py:5352 ms1.7%
Run.saveapps/projects/models.py:1871 ms0.9%
next_numberapps/projects/models.py:35 return (model.objects.filter(project_id=project_id).aggregate(last=models.Max("number"))["last"] or 0) + 11 ms0.9%
QuerySet.aggregatedjango/db/models/query.py:5941 ms0.9%
Query.get_aggregationdjango/db/models/sql/query.py:6331 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
Run.saveapps/projects/models.py:188 super().save(*args, **kwargs)1 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
LegacyUrlTest.setUpTestDataapps/projects/tests.py:3752 ms1.7%
make_projectapps/projects/testing.py:621 ms0.9%
unique_slugapps/orgs/models.py:46 while slug in reserved or taken.filter(slug=slug).exists():1 ms0.9%
QuerySet.existsdjango/db/models/query.py:13371 ms0.9%
Query.has_resultsdjango/db/models/sql/query.py:6811 ms0.9%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15921 ms0.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16111 ms0.9%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7951 ms0.9%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5781 ms0.9%
WhereNode.as_sqldjango/db/models/sql/where.py:1511 ms0.9%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5781 ms0.9%
make_projectapps/projects/testing.py:64 project = Project.objects.create(1 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet.createdjango/db/models/query.py:6691 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
LegacyUrlTest.setUpTestDataapps/projects/tests.py:369 cls.user = User.objects.create_user("testuser")1 ms0.9%
UserManager.create_userdjango/contrib/auth/models.py:1751 ms0.9%
UserManager._create_userdjango/contrib/auth/models.py:1631 ms0.9%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:621 ms0.9%
Model.savedjango/db/models/base.py:8741 ms0.9%
Model.save_basedjango/db/models/base.py:9661 ms0.9%
Model._save_tabledjango/db/models/base.py:11671 ms0.9%
Model._do_insertdjango/db/models/base.py:12181 ms0.9%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms0.9%
QuerySet._insertdjango/db/models/query.py:19181 ms0.9%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms0.9%
CursorWrapper.executedjango/db/backends/utils.py:791 ms0.9%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms0.9%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
TestCase.setUpClassdjango/test/testcases.py:1423 cls.cls_atomics = cls._enter_atomics()12 ms8.6%
TestCase._enter_atomicsdjango/test/testcases.py:139612 ms8.6%
Atomic.__enter__django/db/transaction.py:19812 ms8.6%
BaseDatabaseWrapper.get_autocommitdjango/db/backends/base/base.py:45412 ms8.6%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:30312 ms8.6%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2612 ms8.6%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:27912 ms8.6%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2612 ms8.6%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:25611 ms7.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2611 ms7.8%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:33311 ms7.8%
Connection.connectpsycopg/connection.py:10910 ms6.9%
wait_connpsycopg/waiting.py:1415 ms3.5%
EpollSelector.select<stdlib>/selectors.py:4525 ms3.5%
wait_connpsycopg/waiting.py:1454 ms2.6%
BaseConnection._connect_genpsycopg/_connection_base.py:4394 ms2.6%
wait_connpsycopg/waiting.py:1361 ms0.9%
BaseConnection._connect_genpsycopg/_connection_base.py:4391 ms0.9%
Connection.connectpsycopg/connection.py:1071 ms0.9%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2581 ms0.9%
DatabaseWrapper.init_connection_statedjango/db/backends/postgresql/base.py:4021 ms0.9%
DatabaseWrapper._configure_connectiondjango/db/backends/postgresql/base.py:3741 ms0.9%
DatabaseWrapper._configure_timezonedjango/db/backends/postgresql/base.py:3571 ms0.9%
Cursor.executepsycopg/cursor.py:1131 ms0.9%
Connection.waitpsycopg/connection.py:4951 ms0.9%
call76 ms54.0%
LegacyUrlTest.test_by_idapps/projects/tests.py:388 response = self.client.get(f"/projects/{self.project.id}/{old}")59 ms42.2%
Client.getdjango/test/client.py:112459 ms42.2%
RequestFactory.getdjango/test/client.py:47559 ms42.2%
RequestFactory.genericdjango/test/client.py:67159 ms42.2%
Client.requestdjango/test/client.py:108259 ms42.2%
ClientHandler.__call__django/test/client.py:17330 ms21.1%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6230 ms21.1%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10430 ms21.1%
WhiteNoise.add_fileswhitenoise/base.py:10830 ms21.1%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12026 ms18.4%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13124 ms17.1%
WhiteNoise.get_static_filewhitenoise/base.py:20817 ms11.9%
StaticFile.__init__whitenoise/responders.py:779 ms6.6%
StaticFile.get_alternativeswhitenoise/responders.py:2004 ms2.6%
StaticFile.get_alternativeswhitenoise/responders.py:2032 ms1.3%
Headers.__setitem__<stdlib>/wsgiref/headers.py:602 ms1.3%
<GC>~2 ms1.3%
StaticFile.get_alternativeswhitenoise/responders.py:1982 ms1.3%
StaticFile.get_alternativeswhitenoise/responders.py:2012 ms1.3%
StaticFile.__init__whitenoise/responders.py:742 ms1.3%
parsedate<stdlib>/email/_parseaddr.py:1852 ms1.3%
StaticFile.__init__whitenoise/responders.py:762 ms1.3%
StaticFile.get_not_modified_responsewhitenoise/responders.py:1892 ms1.3%
StaticFile.__init__whitenoise/responders.py:732 ms1.3%
StaticFile.get_headerswhitenoise/responders.py:1762 ms1.3%
WhiteNoise.get_static_filewhitenoise/base.py:2036 ms4.0%
WhiteNoise.add_cache_headerswhitenoise/base.py:2246 ms4.0%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1766 ms4.0%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1976 ms4.0%
URLMixin.urldebug_toolbar/panels/staticfiles.py:206 ms4.0%
WhiteNoise.get_static_filewhitenoise/base.py:2022 ms1.3%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1154 ms2.6%
scantreewhitenoise/base.py:2624 ms2.6%
scantreewhitenoise/base.py:2624 ms2.6%
scantreewhitenoise/base.py:2624 ms2.6%
scantreewhitenoise/base.py:2622 ms1.3%
scantreewhitenoise/base.py:2622 ms1.3%
scantreewhitenoise/base.py:2642 ms1.3%
scantreewhitenoise/base.py:2602 ms1.3%
scantreewhitenoise/base.py:2602 ms1.3%
ClientHandler.__call__django/test/client.py:18628 ms19.8%
BaseHandler.get_responsedjango/core/handlers/base.py:14128 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13028 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30928 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12328 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30928 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30928 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30928 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30928 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30928 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
MiddlewareMixin.__call__django/utils/deprecation.py:30928 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3428 ms19.8%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5528 ms19.8%
BaseHandler._get_responsedjango/core/handlers/base.py:19828 ms19.8%
legacy_redirectapps/projects/urls.py:67520 ms14.5%
can_viewapps/projects/urls.py:3320 ms14.5%
can_manage_projectapps/projects/urls.py:38 if not user.is_authenticated:15 ms10.5%
new_method_proxy.<locals>.innerdjango/utils/functional.py:25115 ms10.5%
SimpleLazyObject._setupdjango/utils/functional.py:40415 ms10.5%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:4015 ms10.5%
get_userdjango/contrib/auth/middleware.py:2015 ms10.5%
get_userdjango/contrib/auth/__init__.py:3189 ms6.6%
ModelBackend.get_userdjango/contrib/auth/backends.py:2329 ms6.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:879 ms6.6%
QuerySet.getdjango/db/models/query.py:6359 ms6.6%
QuerySet.__len__django/db/models/query.py:3729 ms6.6%
QuerySet._fetch_alldjango/db/models/query.py:20009 ms6.6%
ModelIterable.__iter__django/db/models/query.py:957 ms5.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16244 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:794 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:924 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1054 ms2.6%
Cursor.executepsycopg/cursor.py:1134 ms2.6%
Connection.waitpsycopg/connection.py:4954 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16114 ms2.6%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7674 ms2.6%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:864 ms2.6%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:754 ms2.6%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:2552 ms1.3%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10302 ms1.3%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms1.3%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.3%
Col.as_sqldjango/db/models/expressions.py:13252 ms1.3%
SQLCompiler.quote_name_unless_aliasdjango/db/backends/postgresql/compiler.py:342 ms1.3%
ModelIterable.__iter__django/db/models/query.py:1272 ms1.3%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15772 ms1.3%
SQLCompiler.get_convertersdjango/db/models/sql/compiler.py:15262 ms1.3%
get_userdjango/contrib/auth/__init__.py:3116 ms4.0%
_get_user_session_keydjango/contrib/auth/__init__.py:956 ms4.0%
SessionBase.__getitem__django/contrib/sessions/backends/base.py:556 ms4.0%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2516 ms4.0%
SessionStore.loaddjango/contrib/sessions/backends/db.py:556 ms4.0%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:346 ms4.0%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:876 ms4.0%
QuerySet.getdjango/db/models/query.py:6356 ms4.0%
QuerySet.__len__django/db/models/query.py:3726 ms4.0%
QuerySet._fetch_alldjango/db/models/query.py:20006 ms4.0%
ModelIterable.__iter__django/db/models/query.py:956 ms4.0%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16246 ms4.0%
CursorWrapper.executedjango/db/backends/utils.py:796 ms4.0%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:926 ms4.0%
CursorWrapper._executedjango/db/backends/utils.py:1056 ms4.0%
Cursor.executepsycopg/cursor.py:1136 ms4.0%
Connection.waitpsycopg/connection.py:4956 ms4.0%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()6 ms4.0%
QuerySet.existsdjango/db/models/query.py:13376 ms4.0%
Query.has_resultsdjango/db/models/sql/query.py:6814 ms2.6%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15924 ms2.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16244 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:794 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:924 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1054 ms2.6%
Cursor.executepsycopg/cursor.py:1134 ms2.6%
Connection.waitpsycopg/connection.py:4954 ms2.6%
Query.has_resultsdjango/db/models/sql/query.py:6792 ms1.3%
Query.existsdjango/db/models/sql/query.py:6752 ms1.3%
Query.add_annotationdjango/db/models/sql/query.py:12422 ms1.3%
Value.resolve_expressiondjango/db/models/expressions.py:11882 ms1.3%
BaseExpression.resolve_expressiondjango/db/models/expressions.py:2972 ms1.3%
BaseExpression.copydjango/db/models/expressions.py:4442 ms1.3%
copy<stdlib>/copy.py:1002 ms1.3%
legacy_redirectapps/projects/urls.py:670 project = get_object_or_404(Project.objects.select_related("organization"), pk=project_id)7 ms5.3%
get_object_or_404django/shortcuts.py:907 ms5.3%
QuerySet.getdjango/db/models/query.py:6357 ms5.3%
QuerySet.__len__django/db/models/query.py:3727 ms5.3%
QuerySet._fetch_alldjango/db/models/query.py:20007 ms5.3%
ModelIterable.__iter__django/db/models/query.py:957 ms5.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16246 ms4.0%
CursorWrapper.executedjango/db/backends/utils.py:796 ms4.0%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:926 ms4.0%
CursorWrapper._executedjango/db/backends/utils.py:1056 ms4.0%
Cursor.executepsycopg/cursor.py:1136 ms4.0%
Connection.waitpsycopg/connection.py:4956 ms4.0%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.3%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.3%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.3%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.3%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3002 ms1.3%
SQLCompiler.get_related_selectionsdjango/db/models/sql/compiler.py:12592 ms1.3%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10092 ms1.3%
ClientHandler.__call__django/test/client.py:1752 ms1.3%
LegacyUrlTest.test_by_idapps/projects/tests.py:378 self.client.force_login(self.user)11 ms7.9%
ClientMixin.force_logindjango/test/client.py:85511 ms7.9%
ClientMixin._logindjango/test/client.py:8816 ms4.0%
logindjango/contrib/auth/__init__.py:1874 ms2.6%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4342 ms1.3%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms1.3%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms1.3%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms1.3%
QuerySet.existsdjango/db/models/query.py:13372 ms1.3%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.3%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.3%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.3%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.3%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.3%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms1.3%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.3%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms1.3%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms1.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.3%
QuerySet.getdjango/db/models/query.py:6352 ms1.3%
QuerySet.__len__django/db/models/query.py:3722 ms1.3%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.3%
ModelIterable.__iter__django/db/models/query.py:952 ms1.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.3%
Cursor.executepsycopg/cursor.py:1132 ms1.3%
Connection.waitpsycopg/connection.py:4952 ms1.3%
logindjango/contrib/auth/__init__.py:1752 ms1.3%
SessionBase.__contains__django/contrib/sessions/backends/base.py:522 ms1.3%
SessionBase._get_sessiondjango/contrib/sessions/backends/base.py:2512 ms1.3%
SessionStore.loaddjango/contrib/sessions/backends/db.py:552 ms1.3%
SessionStore._get_session_from_dbdjango/contrib/sessions/backends/db.py:342 ms1.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.3%
QuerySet.getdjango/db/models/query.py:6252 ms1.3%
QuerySet.filterdjango/db/models/query.py:15422 ms1.3%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.3%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.3%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.3%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.3%
Query.build_filterdjango/db/models/sql/query.py:16132 ms1.3%
Query.build_lookupdjango/db/models/sql/query.py:14402 ms1.3%
ClientMixin._logindjango/test/client.py:8764 ms2.6%
ClientMixin.sessiondjango/test/client.py:8124 ms2.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1214 ms2.6%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms1.3%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1972 ms1.3%
get_random_stringdjango/utils/crypto.py:622 ms1.3%
get_random_string.<locals>.<genexpr>django/utils/crypto.py:622 ms1.3%
Random.choice<stdlib>/random.py:3542 ms1.3%
Random._randbelow_with_getrandbits<stdlib>/random.py:2512 ms1.3%
SystemRandom.getrandbits<stdlib>/random.py:9152 ms1.3%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms1.3%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms1.3%
Atomic.__enter__django/db/transaction.py:2112 ms1.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.3%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms1.3%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms1.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.3%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.3%
Cursor.executepsycopg/cursor.py:1132 ms1.3%
Connection.waitpsycopg/connection.py:4952 ms1.3%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms1.3%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms1.3%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms1.3%
ClientMixin._logindjango/test/client.py:8832 ms1.3%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms1.3%
Model.savedjango/db/models/base.py:8742 ms1.3%
Model.save_basedjango/db/models/base.py:9662 ms1.3%
Model._save_tabledjango/db/models/base.py:11102 ms1.3%
Model._do_updatedjango/db/models/base.py:12112 ms1.3%
QuerySet._updatedjango/db/models/query.py:13272 ms1.3%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.3%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.3%
Cursor.executepsycopg/cursor.py:1132 ms1.3%
Connection.waitpsycopg/connection.py:4952 ms1.3%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()6 ms4.0%
TestCase._fixture_teardowndjango/test/testcases.py:14954 ms2.6%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4834 ms2.6%
CursorWrapper.executedjango/db/backends/utils.py:794 ms2.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:924 ms2.6%
CursorWrapper._executedjango/db/backends/utils.py:1034 ms2.6%
Cursor.executepsycopg/cursor.py:1134 ms2.6%
Connection.waitpsycopg/connection.py:4954 ms2.6%
TestCase._fixture_teardowndjango/test/testcases.py:14972 ms1.3%
TestCase._rollback_atomicsdjango/test/testcases.py:14052 ms1.3%
Atomic.__exit__django/db/transaction.py:2832 ms1.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.3%
BaseDatabaseWrapper.savepoint_rollbackdjango/db/backends/base/base.py:4132 ms1.3%
BaseDatabaseWrapper._savepoint_rollbackdjango/db/backends/base/base.py:3712 ms1.3%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.3%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.3%
Cursor.executepsycopg/cursor.py:1132 ms1.3%
Connection.waitpsycopg/connection.py:4952 ms1.3%
teardown0.24 ms0.2%
Estimated from 95 samples; phase durations are exact. Frames from pytest and pluggy are hidden .

Hot lines in your code

apps/projects/tests.py:388
response = self.client.get(f"/projects/{self.project.id}/{old}")
LegacyUrlTest.test_by_id · Libraries
32 ms
apps/projects/urls.py:38
if not user.is_authenticated:
can_manage_project · Database
15 ms
apps/projects/tests.py:378
self.client.force_login(self.user)
LegacyUrlTest.test_by_id · Database
11 ms
apps/projects/urls.py:670
project = get_object_or_404(Project.objects.select_related("organization"), pk=project_id)
legacy_redirect · Database
7 ms
apps/projects/urls.py:40
return user.is_superuser or project.organization.membership_set.filter(user=user).exists()
can_manage_project · Database
6 ms
apps/orgs/models.py:46
while slug in reserved or taken.filter(slug=slug).exists():
unique_slug · Database
4 ms
apps/projects/testing.py:64
project = Project.objects.create(
make_project · Database
2 ms
apps/projects/testing.py:76
membership, _ = Membership.objects.get_or_create(
add_member · Database
2 ms
apps/projects/models.py:35
return (model.objects.filter(project_id=project_id).aggregate(last=models.Max("number"))["last"] or 0) + 1
next_number · Database
2 ms
apps/projects/models.py:466
super().save(*args, **kwargs)
Profile.save · Database
2 ms

Fixtures

Exact setup time
_unittest_setUpClass_fixture_LegacyUrlTest class 63 ms
_django_setup_unittest class 0.40 ms
_template_string_if_invalid_marker function 0.06 ms
_dj_autoclear_mailbox function 0.05 ms
_django_db_marker function 0.05 ms
_live_server_helper function 0.04 ms
_django_set_urlconf function 0.03 ms
monkeypatch function 0.03 ms
_django_clear_site_cache function 0.03 ms

Database

115 queries · 49 ms

Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).

8×
SELECT "django_session"."session_key", "django_session"."session_data", "django_session"."expire_date" FROM "django_session" WHERE ("django_session"."expire_date" > %s AND "django_session"."session_key" = %s) LIMIT ?
7×
SELECT "projects_project"."id", "projects_project"."organization_id", "projects_project"."name", "projects_project"."slug", "projects_project"."public", "projects_project"."description", "projects_project"."date_created", "projects_project"."date_updated", "projects_project"."created_by_id", "orgs_…
7×
SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" FROM "auth_user" WHERE "a…
7×
SELECT %s AS "a" FROM "orgs_membership" WHERE ("orgs_membership"."organization_id" = %s AND "orgs_membership"."user_id" = %s) LIMIT ?
3×
SELECT "projects_profile"."id", "projects_profile"."project_id", "projects_profile"."number", "projects_profile"."environment_id", "projects_profile"."session_id", "projects_profile"."run_id", "projects_profile"."commit_id", "projects_profile"."ingest_id", "projects_profile"."external_id", "project…

Biggest pieces of work

call test body
apps/projects/tests.py:388
71 ms
setup setUpClass
django/test/testcases.py:1423
63 ms
call _post_teardown
django/test/testcases.py:1240
6 ms
setup pytest internals 1 ms
teardown pytest internals 0.24 ms

Reliability

5 results · 0 CI failures · 0 local failures

This test hasn't failed recently.

History

Latest 5 results, oldest first in the strip
When Environment Outcome Duration Commit
14 minutes ago CI github-actions:test passed 141 ms 9caa567 main Profile
39 minutes ago CI github-actions:test passed 136 ms ec75501 main Profile
7 hours ago CI github-actions:test passed 155 ms d2c12e5 main Profile
7 hours ago CI github-actions:test passed 89 ms 0b902f6 main Profile
7 hours ago CI github-actions:test passed 145 ms 78a4357 main Profile