CI
github-actions:test
12 runs
Average
219 ms
median 223 ms
max 381 ms
max 381 ms
Phases
Setup 172 ms
Call 47 ms
Teardown 0.17 ms
Categories
Database 171 ms
App code 5 ms
Factories 0.63 ms
Test code 0.36 ms
Other (Libraries, Serialization, pytest, Unsampled) 43 ms
219 database queries per run
Needs 88 KB of memory (max 652 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 16 hours ago ·
open run
setup173 ms81.0%
TestCase.setUpClassdjango/test/testcases.py:1439 cls.setUpTestData()159 ms74.6%
McpTest.setUpTestDataapps/mcp/tests.py:3383 ms39.1%
store_profileapps/projects/testing.py:37350 ms23.5%
process_profile_partapps/projects/profiles.py:363 profile = claim_part(part, document)23 ms10.7%
claim_partapps/projects/profiles.py:404 commit, _ = Commit.objects.get_or_create(8 ms3.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:878 ms3.6%
QuerySet.get_or_createdjango/db/models/query.py:9875 ms2.1%
QuerySet.getdjango/db/models/query.py:6353 ms1.4%
QuerySet.__len__django/db/models/query.py:3723 ms1.4%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.4%
ModelIterable.__iter__django/db/models/query.py:953 ms1.4%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16222 ms0.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.7%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3202 ms0.7%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2982 ms0.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
QuerySet.getdjango/db/models/query.py:6252 ms0.7%
QuerySet.get_or_createdjango/db/models/query.py:9943 ms1.4%
QuerySet.createdjango/db/models/query.py:6692 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11672 ms0.7%
Model._do_insertdjango/db/models/base.py:12182 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
QuerySet.createdjango/db/models/query.py:6672 ms0.7%
Model.__init__django/db/models/base.py:5692 ms0.7%
claim_partapps/projects/profiles.py:380 ProfilePart.objects.filter(pk=part.pk).update(status=ProfilePart.StatusTypes.PENDING)5 ms2.1%
QuerySet.updatedjango/db/models/query.py:13003 ms1.4%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21113 ms1.4%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.4%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.4%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.4%
Cursor.executepsycopg/cursor.py:1133 ms1.4%
Connection.waitpsycopg/connection.py:4953 ms1.4%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.filterdjango/db/models/query.py:15422 ms0.7%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms0.7%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms0.7%
Query.add_qdjango/db/models/sql/query.py:16712 ms0.7%
Query._add_qdjango/db/models/sql/query.py:17032 ms0.7%
Query.build_filterdjango/db/models/sql/query.py:16132 ms0.7%
Query.build_lookupdjango/db/models/sql/query.py:14302 ms0.7%
claim_partapps/projects/profiles.py:3995 ms2.1%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(5 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:875 ms2.1%
QuerySet.get_or_createdjango/db/models/query.py:9875 ms2.1%
QuerySet.getdjango/db/models/query.py:6353 ms1.4%
QuerySet.__len__django/db/models/query.py:3723 ms1.4%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.4%
ModelIterable.__iter__django/db/models/query.py:953 ms1.4%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.4%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.4%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.4%
Cursor.executepsycopg/cursor.py:1133 ms1.4%
Connection.waitpsycopg/connection.py:4953 ms1.4%
QuerySet.getdjango/db/models/query.py:6272 ms0.7%
QuerySet.order_bydjango/db/models/query.py:17702 ms0.7%
QuerySet._chaindjango/db/models/query.py:19732 ms0.7%
claim_partapps/projects/profiles.py:4673 ms1.4%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)3 ms1.4%
Model.savedjango/db/models/base.py:8743 ms1.4%
Model.save_basedjango/db/models/base.py:9663 ms1.4%
Model._save_tabledjango/db/models/base.py:11102 ms0.7%
Model._do_updatedjango/db/models/base.py:12112 ms0.7%
QuerySet._updatedjango/db/models/query.py:13272 ms0.7%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms0.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16222 ms0.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.7%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3202 ms0.7%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2982 ms0.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.7%
DatabaseWrapper.create_cursordjango/db/backends/postgresql/base.py:4302 ms0.7%
Model._save_tabledjango/db/models/base.py:11012 ms0.7%
claim_partapps/projects/profiles.py:381 ProfilePart.objects.filter(profile=profile, index=part.index, id__lt=part.id).delete() # superseded uploads2 ms0.7%
QuerySet.deletedjango/db/models/query.py:12382 ms0.7%
Collector.deletedjango/db/models/deletion.py:4712 ms0.7%
QuerySet._raw_deletedjango/db/models/query.py:12602 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
claim_partapps/projects/profiles.py:397 project = profile.project2 ms0.7%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2572 ms0.7%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2222 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
Query.get_compilerdjango/db/models/sql/query.py:3692 ms0.7%
process_profile_partapps/projects/profiles.py:3669 ms4.3%
write_perfsapps/projects/profiles.py:481 TestPerf(3 ms1.4%
Model.__init__django/db/models/base.py:5332 ms0.7%
Model.__init__django/db/models/base.py:5502 ms0.7%
write_perfsapps/projects/profiles.py:479 TestPerf.objects.bulk_create(3 ms1.4%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.4%
QuerySet.bulk_createdjango/db/models/query.py:8333 ms1.4%
QuerySet._batched_insertdjango/db/models/query.py:19563 ms1.4%
QuerySet._insertdjango/db/models/query.py:19183 ms1.4%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19253 ms1.4%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.4%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.4%
Cursor.executepsycopg/cursor.py:1133 ms1.4%
Connection.waitpsycopg/connection.py:4953 ms1.4%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms0.7%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms0.7%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms0.7%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms0.7%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms0.7%
Dumper.quotepsycopg/adapt.py:592 ms0.7%
ListDumper.dumppsycopg/types/array.py:1842 ms0.7%
ListDumper.dump.<locals>.dump_listpsycopg/types/array.py:1612 ms0.7%
<GC>~2 ms0.7%
write_perfsapps/projects/profiles.py:478 TestPerf.objects.filter(profile=profile, part=part.index).delete()2 ms0.7%
QuerySet.deletedjango/db/models/query.py:12372 ms0.7%
Collector.collectdjango/db/models/deletion.py:2792 ms0.7%
Collector.can_fast_deletedjango/db/models/deletion.py:2192 ms0.7%
Atomic.__exit__django/db/transaction.py:2472 ms0.7%
process_profile_partapps/projects/profiles.py:3656 ms2.8%
upsert_testsapps/projects/profiles.py:4726 ms2.8%
TestManager.upsertapps/projects/models.py:230 self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order3 ms1.4%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.4%
QuerySet.bulk_createdjango/db/models/query.py:8333 ms1.4%
QuerySet._batched_insertdjango/db/models/query.py:19563 ms1.4%
QuerySet._insertdjango/db/models/query.py:19183 ms1.4%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19253 ms1.4%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.4%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.4%
Cursor.executepsycopg/cursor.py:1133 ms1.4%
Connection.waitpsycopg/connection.py:4953 ms1.4%
TestManager.upsertapps/projects/models.py:236 return {test.name: test for test in self.filter(project=project, name__in=names)}2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:1272 ms0.7%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15772 ms0.7%
SQLCompiler.get_convertersdjango/db/models/sql/compiler.py:15262 ms0.7%
Col.get_db_convertersdjango/db/models/expressions.py:13432 ms0.7%
TestManager.upsertapps/projects/models.py:2292 ms0.7%
TestManager.slugs_forapps/projects/models.py:240 existing = dict(self.filter(project_id=project_id, name__in=names).values_list("name", "slug"))2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms0.7%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16622 ms0.7%
process_profile_partapps/projects/profiles.py:3675 ms2.1%
write_snapshotsapps/projects/profiles.py:334 cursor.executemany(SNAPSHOT_UPSERT, batch)3 ms1.4%
CursorWrapper.executemanydjango/db/backends/utils.py:843 ms1.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.4%
CursorWrapper._executemanydjango/db/backends/utils.py:1143 ms1.4%
Cursor.executemanypsycopg/cursor.py:1373 ms1.4%
Connection._pipeline_nolockpsycopg/connection.py:4723 ms1.4%
Pipeline.__exit__psycopg/_pipeline.py:733 ms1.4%
Connection.waitpsycopg/connection.py:4953 ms1.4%
write_snapshotsapps/projects/profiles.py:3332 ms0.7%
write_snapshots.<locals>.<genexpr>apps/projects/profiles.py:3312 ms0.7%
write_snapshots.<locals>.rowapps/projects/profiles.py:327 compress(json.dumps(snapshot_document(document, entry), separators=(",", ":")).encode()),2 ms0.7%
compressapps/projects/profiles.py:111 return gzip.compress(data, compresslevel=6)2 ms0.7%
compress<stdlib>/gzip.py:6682 ms0.7%
process_profile_partapps/projects/profiles.py:356 part = ProfilePart.objects.filter(pk=part.pk).first()3 ms1.4%
QuerySet.firstdjango/db/models/query.py:11453 ms1.4%
QuerySet.__iter__django/db/models/query.py:3903 ms1.4%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.4%
ModelIterable.__iter__django/db/models/query.py:953 ms1.4%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16113 ms1.4%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7673 ms1.4%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms0.7%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms0.7%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms0.7%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms0.7%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:872 ms0.7%
SQLCompiler.get_order_bydjango/db/models/sql/compiler.py:4922 ms0.7%
BaseExpression.resolve_expressiondjango/db/models/expressions.py:2972 ms0.7%
process_profile_partapps/projects/profiles.py:368 ProfilePart.objects.filter(pk=part.pk).update(3 ms1.4%
QuerySet.updatedjango/db/models/query.py:13002 ms0.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
process_profile_partapps/projects/profiles.py:359 or ProfilePart.objects.filter(profile_id=part.profile_id, index=part.index, id__gt=part.id).exists()2 ms0.7%
QuerySet.existsdjango/db/models/query.py:13372 ms0.7%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms0.7%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
store_profileapps/projects/testing.py:374 finalize_profile(profile.id)20 ms9.2%
finalize_profileapps/projects/profiles.py:5176 ms2.8%
add_perfsapps/projects/rollups.py:88 TestDailyStats.objects.bulk_create(5 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:875 ms2.1%
QuerySet.bulk_createdjango/db/models/query.py:8335 ms2.1%
QuerySet._batched_insertdjango/db/models/query.py:19565 ms2.1%
QuerySet._insertdjango/db/models/query.py:19185 ms2.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19253 ms1.4%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.4%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.4%
Cursor.executepsycopg/cursor.py:1133 ms1.4%
Connection.waitpsycopg/connection.py:4953 ms1.4%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19232 ms0.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.7%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3202 ms0.7%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2982 ms0.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.7%
add_perfsapps/projects/rollups.py:64 for row in TestDailyStats.objects.filter(2 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.filterdjango/db/models/query.py:15422 ms0.7%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms0.7%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms0.7%
Query.add_qdjango/db/models/sql/query.py:16712 ms0.7%
Query._add_qdjango/db/models/sql/query.py:17032 ms0.7%
Query.build_filterdjango/db/models/sql/query.py:15512 ms0.7%
Query.solve_lookup_typedjango/db/models/sql/query.py:13582 ms0.7%
Query.names_to_pathdjango/db/models/sql/query.py:17882 ms0.7%
finalize_profileapps/projects/profiles.py:500 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)3 ms1.4%
QuerySet.getdjango/db/models/query.py:6353 ms1.4%
QuerySet.__len__django/db/models/query.py:3723 ms1.4%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.4%
ModelIterable.__iter__django/db/models/query.py:953 ms1.4%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.7%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms0.7%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms0.7%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms0.7%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms0.7%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms0.7%
finalize_profileapps/projects/profiles.py:5253 ms1.4%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)3 ms1.4%
Model.savedjango/db/models/base.py:8743 ms1.4%
Model.save_basedjango/db/models/base.py:9663 ms1.4%
Model._save_tabledjango/db/models/base.py:11103 ms1.4%
Model._do_updatedjango/db/models/base.py:12113 ms1.4%
QuerySet._updatedjango/db/models/query.py:13273 ms1.4%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21403 ms1.4%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21113 ms1.4%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.4%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.4%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.4%
Cursor.executepsycopg/cursor.py:1133 ms1.4%
Connection.waitpsycopg/connection.py:4953 ms1.4%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms0.7%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms0.7%
finalize_profileapps/projects/profiles.py:509 ProfilePart.objects.filter(profile=profile).exclude(pk__in=[part.pk for part in current]).delete()2 ms0.7%
QuerySet.deletedjango/db/models/query.py:12382 ms0.7%
Collector.deletedjango/db/models/deletion.py:4712 ms0.7%
QuerySet._raw_deletedjango/db/models/query.py:12602 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
finalize_profileapps/projects/profiles.py:516 Environment.objects.select_for_update(no_key=True).filter(pk=profile.environment_id).first()2 ms0.7%
QuerySet.filterdjango/db/models/query.py:15422 ms0.7%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms0.7%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms0.7%
Query.add_qdjango/db/models/sql/query.py:16712 ms0.7%
Query._add_qdjango/db/models/sql/query.py:17032 ms0.7%
Query.build_filterdjango/db/models/sql/query.py:16132 ms0.7%
Query.build_lookupdjango/db/models/sql/query.py:14402 ms0.7%
Atomic.__enter__django/db/transaction.py:2112 ms0.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.7%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms0.7%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3662 ms0.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.7%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3202 ms0.7%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2982 ms0.7%
finalize_profileapps/projects/profiles.py:504 for part in ProfilePart.objects.filter(profile=profile).defer("document").order_by("index", "id"):2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:3182 ms0.7%
BaseCursor._set_resultspsycopg/_cursor_base.py:5352 ms0.7%
finalize_profileapps/projects/profiles.py:513 for duplicate in duplicates:2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ValuesIterable.__iter__django/db/models/query.py:2222 ms0.7%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
store_profileapps/projects/testing.py:372 part = ProfilePart.objects.create(profile=profile, index=0, document=compress(data), document_size=len(data))5 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.4%
QuerySet.createdjango/db/models/query.py:6693 ms1.4%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11512 ms0.7%
Model.savedjango/db/models/base.py:8282 ms0.7%
compressapps/projects/profiles.py:111 return gzip.compress(data, compresslevel=6)2 ms0.7%
compress<stdlib>/gzip.py:6682 ms0.7%
store_profileapps/projects/testing.py:375 profile.refresh_from_db()5 ms2.1%
Model.refresh_from_dbdjango/db/models/base.py:7585 ms2.1%
QuerySet.getdjango/db/models/query.py:6355 ms2.1%
QuerySet.__len__django/db/models/query.py:3725 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20005 ms2.1%
ModelIterable.__iter__django/db/models/query.py:955 ms2.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.4%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.4%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.4%
Cursor.executepsycopg/cursor.py:1133 ms1.4%
Connection.waitpsycopg/connection.py:4953 ms1.4%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms0.7%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms0.7%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms0.7%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms0.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:3182 ms0.7%
BaseCursor._set_resultspsycopg/_cursor_base.py:5352 ms0.7%
BaseCursor._select_current_resultpsycopg/_cursor_base.py:5142 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.7%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7952 ms0.7%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms0.7%
WhereNode.as_sqldjango/db/models/sql/where.py:1512 ms0.7%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms0.7%
Exact.as_sqldjango/db/models/lookups.py:4072 ms0.7%
BuiltinLookup.as_sqldjango/db/models/lookups.py:2382 ms0.7%
BuiltinLookup.process_lhsdjango/db/models/lookups.py:2302 ms0.7%
Lookup.process_lhsdjango/db/models/lookups.py:1092 ms0.7%
BaseExpression.resolve_expressiondjango/db/models/expressions.py:2972 ms0.7%
BaseExpression.copydjango/db/models/expressions.py:4442 ms0.7%
copy<stdlib>/copy.py:1002 ms0.7%
store_profileapps/projects/testing.py:3713 ms1.4%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.4%
QuerySet.createdjango/db/models/query.py:6693 ms1.4%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)3 ms1.4%
Model.savedjango/db/models/base.py:8743 ms1.4%
Model.save_basedjango/db/models/base.py:9663 ms1.4%
Model._save_tabledjango/db/models/base.py:11673 ms1.4%
Model._do_insertdjango/db/models/base.py:12183 ms1.4%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.4%
QuerySet._insertdjango/db/models/query.py:19183 ms1.4%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19232 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19242 ms0.7%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18132 ms0.7%
SQLInsertCompiler.pre_save_valdjango/db/models/sql/compiler.py:17512 ms0.7%
Field.pre_savedjango/db/models/fields/__init__.py:9882 ms0.7%
DeferredAttribute.__get__django/db/models/query_utils.py:2602 ms0.7%
store_profileapps/projects/testing.py:370 data = json.dumps(document).encode()2 ms0.7%
dumps<stdlib>/json/__init__.py:2342 ms0.7%
JSONEncoder.encode<stdlib>/json/encoder.py:2022 ms0.7%
JSONEncoder.iterencode<stdlib>/json/encoder.py:2632 ms0.7%
McpTest.setUpTestDataapps/mcp/tests.py:3141 ms19.2%
store_profileapps/projects/testing.py:37323 ms10.7%
process_profile_partapps/projects/profiles.py:363 profile = claim_part(part, document)11 ms5.0%
claim_partapps/projects/profiles.py:3995 ms2.1%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(3 ms1.4%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.4%
QuerySet.get_or_createdjango/db/models/query.py:9872 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
QuerySet.get_or_createdjango/db/models/query.py:9942 ms0.7%
QuerySet.createdjango/db/models/query.py:6692 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11672 ms0.7%
Model._do_insertdjango/db/models/base.py:12182 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
get_or_create_environmentapps/projects/environments.py:62 now = timezone.now()2 ms0.7%
claim_partapps/projects/profiles.py:404 commit, _ = Commit.objects.get_or_create(3 ms1.4%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.4%
QuerySet.get_or_createdjango/db/models/query.py:9872 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
QuerySet.get_or_createdjango/db/models/query.py:9942 ms0.7%
QuerySet.createdjango/db/models/query.py:6692 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11672 ms0.7%
Model._do_insertdjango/db/models/base.py:12182 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
claim_partapps/projects/profiles.py:381 ProfilePart.objects.filter(profile=profile, index=part.index, id__lt=part.id).delete() # superseded uploads2 ms0.7%
QuerySet.deletedjango/db/models/query.py:12382 ms0.7%
Collector.deletedjango/db/models/deletion.py:4712 ms0.7%
QuerySet._raw_deletedjango/db/models/query.py:12602 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
Atomic.__exit__django/db/transaction.py:2472 ms0.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.7%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms0.7%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms0.7%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms0.7%
process_profile_partapps/projects/profiles.py:3653 ms1.4%
upsert_testsapps/projects/profiles.py:4723 ms1.4%
TestManager.upsertapps/projects/models.py:2292 ms0.7%
TestManager.slugs_forapps/projects/models.py:240 existing = dict(self.filter(project_id=project_id, name__in=names).values_list("name", "slug"))2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms0.7%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
TestManager.upsertapps/projects/models.py:230 self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order2 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms0.7%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
process_profile_partapps/projects/profiles.py:3663 ms1.4%
write_perfsapps/projects/profiles.py:478 TestPerf.objects.filter(profile=profile, part=part.index).delete()2 ms0.7%
QuerySet.deletedjango/db/models/query.py:12372 ms0.7%
Collector.collectdjango/db/models/deletion.py:2792 ms0.7%
write_perfsapps/projects/profiles.py:479 TestPerf.objects.bulk_create(2 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms0.7%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19242 ms0.7%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18132 ms0.7%
SQLInsertCompiler.prepare_valuedjango/db/models/sql/compiler.py:17422 ms0.7%
Field.get_db_prep_savedjango/db/models/fields/__init__.py:10112 ms0.7%
Field.get_db_prep_valuedjango/db/models/fields/__init__.py:10042 ms0.7%
FloatField.get_prep_valuedjango/db/models/fields/__init__.py:20282 ms0.7%
process_profile_partapps/projects/profiles.py:3673 ms1.4%
write_snapshotsapps/projects/profiles.py:3332 ms0.7%
write_snapshots.<locals>.<genexpr>apps/projects/profiles.py:3312 ms0.7%
write_snapshots.<locals>.rowapps/projects/profiles.py:327 compress(json.dumps(snapshot_document(document, entry), separators=(",", ":")).encode()),2 ms0.7%
snapshot_documentapps/projects/profiles.py:2712 ms0.7%
snapshot_document.<locals>.node_idapps/projects/profiles.py:2622 ms0.7%
write_snapshotsapps/projects/profiles.py:334 cursor.executemany(SNAPSHOT_UPSERT, batch)2 ms0.7%
CursorWrapper.executemanydjango/db/backends/utils.py:842 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
process_profile_partapps/projects/profiles.py:356 part = ProfilePart.objects.filter(pk=part.pk).first()2 ms0.7%
QuerySet.firstdjango/db/models/query.py:11452 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
process_profile_partapps/projects/profiles.py:359 or ProfilePart.objects.filter(profile_id=part.profile_id, index=part.index, id__gt=part.id).exists()2 ms0.7%
QuerySet.existsdjango/db/models/query.py:13372 ms0.7%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms0.7%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
store_profileapps/projects/testing.py:374 finalize_profile(profile.id)12 ms5.7%
finalize_profileapps/projects/profiles.py:5175 ms2.1%
add_perfsapps/projects/rollups.py:30 for perf in perfs:2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
add_perfsapps/projects/rollups.py:64 for row in TestDailyStats.objects.filter(2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
add_perfsapps/projects/rollups.py:88 TestDailyStats.objects.bulk_create(2 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms0.7%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
finalize_profileapps/projects/profiles.py:500 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)2 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:1272 ms0.7%
SQLCompiler.apply_convertersdjango/db/models/sql/compiler.py:15422 ms0.7%
JSONField.from_db_valuedjango/db/models/fields/json.py:922 ms0.7%
loads<stdlib>/json/__init__.py:3712 ms0.7%
JSONDecoder.decode<stdlib>/json/decoder.py:3582 ms0.7%
JSONDecoder.raw_decode<stdlib>/json/decoder.py:3742 ms0.7%
finalize_profileapps/projects/profiles.py:504 for part in ProfilePart.objects.filter(profile=profile).defer("document").order_by("index", "id"):2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:1282 ms0.7%
Model.from_dbdjango/db/models/base.py:6052 ms0.7%
finalize_profileapps/projects/profiles.py:513 for duplicate in duplicates:2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ValuesIterable.__iter__django/db/models/query.py:2222 ms0.7%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
finalize_profileapps/projects/profiles.py:516 Environment.objects.select_for_update(no_key=True).filter(pk=profile.environment_id).first()2 ms0.7%
QuerySet.firstdjango/db/models/query.py:11452 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
finalize_profileapps/projects/profiles.py:5252 ms0.7%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11102 ms0.7%
Model._do_updatedjango/db/models/base.py:12112 ms0.7%
QuerySet._updatedjango/db/models/query.py:13272 ms0.7%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms0.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
store_profileapps/projects/testing.py:370 data = json.dumps(document).encode()2 ms0.7%
dumps<stdlib>/json/__init__.py:2342 ms0.7%
store_profileapps/projects/testing.py:3712 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.createdjango/db/models/query.py:6692 ms0.7%
Profile.saveapps/projects/models.py:4652 ms0.7%
next_numberapps/projects/models.py:35 return (model.objects.filter(project_id=project_id).aggregate(last=models.Max("number"))["last"] or 0) + 12 ms0.7%
QuerySet.aggregatedjango/db/models/query.py:5942 ms0.7%
Query.get_aggregationdjango/db/models/sql/query.py:6332 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
store_profileapps/projects/testing.py:372 part = ProfilePart.objects.create(profile=profile, index=0, document=compress(data), document_size=len(data))2 ms0.7%
compressapps/projects/profiles.py:111 return gzip.compress(data, compresslevel=6)2 ms0.7%
compress<stdlib>/gzip.py:6682 ms0.7%
store_profileapps/projects/testing.py:375 profile.refresh_from_db()2 ms0.7%
Model.refresh_from_dbdjango/db/models/base.py:7582 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
McpTest.setUpTestDataapps/mcp/tests.py:5127 ms12.8%
store_profileapps/projects/testing.py:37318 ms8.5%
process_profile_partapps/projects/profiles.py:363 profile = claim_part(part, document)8 ms3.6%
claim_partapps/projects/profiles.py:379 profile = Profile.objects.select_for_update(no_key=True).get(pk=part.profile_id)2 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
claim_partapps/projects/profiles.py:381 ProfilePart.objects.filter(profile=profile, index=part.index, id__lt=part.id).delete() # superseded uploads2 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.filterdjango/db/models/query.py:15422 ms0.7%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms0.7%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms0.7%
Query.add_qdjango/db/models/sql/query.py:16712 ms0.7%
Query._add_qdjango/db/models/sql/query.py:17032 ms0.7%
Query.build_filterdjango/db/models/sql/query.py:16132 ms0.7%
Query.build_lookupdjango/db/models/sql/query.py:14302 ms0.7%
claim_partapps/projects/profiles.py:397 project = profile.project2 ms0.7%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2572 ms0.7%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2222 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
claim_partapps/projects/profiles.py:3992 ms0.7%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(2 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.get_or_createdjango/db/models/query.py:9872 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
claim_partapps/projects/profiles.py:4672 ms0.7%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11102 ms0.7%
Model._do_updatedjango/db/models/base.py:12112 ms0.7%
QuerySet._updatedjango/db/models/query.py:13272 ms0.7%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms0.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
process_profile_partapps/projects/profiles.py:3655 ms2.1%
upsert_testsapps/projects/profiles.py:4725 ms2.1%
TestManager.upsertapps/projects/models.py:2292 ms0.7%
TestManager.slugs_forapps/projects/models.py:240 existing = dict(self.filter(project_id=project_id, name__in=names).values_list("name", "slug"))2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms0.7%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
TestManager.upsertapps/projects/models.py:230 self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order2 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms0.7%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms0.7%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms0.7%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms0.7%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms0.7%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms0.7%
Dumper.quotepsycopg/adapt.py:592 ms0.7%
TestManager.upsertapps/projects/models.py:236 return {test.name: test for test in self.filter(project=project, name__in=names)}2 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.7%
process_profile_partapps/projects/profiles.py:356 part = ProfilePart.objects.filter(pk=part.pk).first()2 ms0.7%
QuerySet.firstdjango/db/models/query.py:11452 ms0.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
process_profile_partapps/projects/profiles.py:3622 ms0.7%
load_documentapps/projects/profiles.py:1332 ms0.7%
loadsapps/projects/profiles.py:118 document = json.loads(data)2 ms0.7%
loads<stdlib>/json/__init__.py:3712 ms0.7%
JSONDecoder.decode<stdlib>/json/decoder.py:3582 ms0.7%
JSONDecoder.raw_decode<stdlib>/json/decoder.py:3742 ms0.7%
process_profile_partapps/projects/profiles.py:3662 ms0.7%
write_perfsapps/projects/profiles.py:479 TestPerf.objects.bulk_create(2 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms0.7%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.7%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms0.7%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms0.7%
process_profile_partapps/projects/profiles.py:3672 ms0.7%
write_snapshotsapps/projects/profiles.py:3332 ms0.7%
write_snapshots.<locals>.<genexpr>apps/projects/profiles.py:3312 ms0.7%
write_snapshots.<locals>.rowapps/projects/profiles.py:327 compress(json.dumps(snapshot_document(document, entry), separators=(",", ":")).encode()),2 ms0.7%
compressapps/projects/profiles.py:111 return gzip.compress(data, compresslevel=6)2 ms0.7%
compress<stdlib>/gzip.py:6682 ms0.7%
store_profileapps/projects/testing.py:374 finalize_profile(profile.id)5 ms2.1%
finalize_profileapps/projects/profiles.py:500 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)2 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
finalize_profileapps/projects/profiles.py:5112 ms0.7%
QuerySet.deletedjango/db/models/query.py:12382 ms0.7%
Collector.deletedjango/db/models/deletion.py:4712 ms0.7%
QuerySet._raw_deletedjango/db/models/query.py:12602 ms0.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
finalize_profileapps/projects/profiles.py:5252 ms0.7%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11102 ms0.7%
store_profileapps/projects/testing.py:3712 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.createdjango/db/models/query.py:6692 ms0.7%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11672 ms0.7%
Model._do_insertdjango/db/models/base.py:12182 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
store_profileapps/projects/testing.py:372 part = ProfilePart.objects.create(profile=profile, index=0, document=compress(data), document_size=len(data))2 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.createdjango/db/models/query.py:6692 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11672 ms0.7%
Model._do_insertdjango/db/models/base.py:12182 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
store_profileapps/projects/testing.py:375 profile.refresh_from_db()2 ms0.7%
Model.refresh_from_dbdjango/db/models/base.py:7582 ms0.7%
QuerySet.getdjango/db/models/query.py:6352 ms0.7%
QuerySet.__len__django/db/models/query.py:3722 ms0.7%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.7%
ModelIterable.__iter__django/db/models/query.py:1282 ms0.7%
Model.from_dbdjango/db/models/base.py:6052 ms0.7%
Model.__init__django/db/models/base.py:5132 ms0.7%
McpTest.setUpTestDataapps/mcp/tests.py:263 ms1.4%
makemodel_bakery/baker.py:1473 ms1.4%
Baker.makemodel_bakery/baker.py:4063 ms1.4%
Baker._makemodel_bakery/baker.py:4713 ms1.4%
Baker.generate_valuemodel_bakery/baker.py:8003 ms1.4%
gen_relatedmodel_bakery/random_gen.py:2743 ms1.4%
makemodel_bakery/baker.py:1473 ms1.4%
Baker.makemodel_bakery/baker.py:4063 ms1.4%
Baker._makemodel_bakery/baker.py:4823 ms1.4%
Baker.instancemodel_bakery/baker.py:5353 ms1.4%
Model.savedjango/db/models/base.py:8743 ms1.4%
Model.save_basedjango/db/models/base.py:9663 ms1.4%
Model._save_tabledjango/db/models/base.py:11622 ms0.7%
Model._save_tabledjango/db/models/base.py:11672 ms0.7%
Model._do_insertdjango/db/models/base.py:12182 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
McpTest.setUpTestDataapps/mcp/tests.py:293 ms1.4%
makemodel_bakery/baker.py:1473 ms1.4%
Baker.makemodel_bakery/baker.py:4063 ms1.4%
Baker._makemodel_bakery/baker.py:4712 ms0.7%
Baker.generate_valuemodel_bakery/baker.py:8002 ms0.7%
gen_relatedmodel_bakery/random_gen.py:2742 ms0.7%
makemodel_bakery/baker.py:1472 ms0.7%
Baker.makemodel_bakery/baker.py:4062 ms0.7%
Baker._makemodel_bakery/baker.py:4822 ms0.7%
Baker.instancemodel_bakery/baker.py:5352 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11672 ms0.7%
Model._do_insertdjango/db/models/base.py:12182 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19242 ms0.7%
Baker._makemodel_bakery/baker.py:4822 ms0.7%
Baker.instancemodel_bakery/baker.py:5352 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:11672 ms0.7%
Model._do_insertdjango/db/models/base.py:12182 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet._insertdjango/db/models/query.py:19182 ms0.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.7%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
McpTest.setUpTestDataapps/mcp/tests.py:282 ms0.7%
create_reverse_many_to_one_manager.<locals>.RelatedManager.createdjango/db/models/fields/related_descriptors.py:8332 ms0.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.7%
QuerySet.createdjango/db/models/query.py:6692 ms0.7%
Model.savedjango/db/models/base.py:8742 ms0.7%
Model.save_basedjango/db/models/base.py:9662 ms0.7%
Model._save_tabledjango/db/models/base.py:10682 ms0.7%
TestCase.setUpClassdjango/test/testcases.py:1423 cls.cls_atomics = cls._enter_atomics()12 ms5.7%
TestCase._enter_atomicsdjango/test/testcases.py:139612 ms5.7%
Atomic.__enter__django/db/transaction.py:19812 ms5.7%
BaseDatabaseWrapper.get_autocommitdjango/db/backends/base/base.py:45412 ms5.7%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:30312 ms5.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2612 ms5.7%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:27912 ms5.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2612 ms5.7%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:25611 ms5.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2611 ms5.0%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:33311 ms5.0%
Connection.connectpsycopg/connection.py:1099 ms4.3%
wait_connpsycopg/waiting.py:1415 ms2.1%
EpollSelector.select<stdlib>/selectors.py:4525 ms2.1%
wait_connpsycopg/waiting.py:1455 ms2.1%
BaseConnection._connect_genpsycopg/_connection_base.py:4395 ms2.1%
Connection.connectpsycopg/connection.py:972 ms0.7%
Connection._get_connection_paramspsycopg/connection.py:1852 ms0.7%
conninfo_to_dictpsycopg/conninfo.py:822 ms0.7%
_parse_conninfopsycopg/conninfo.py:1012 ms0.7%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2582 ms0.7%
DatabaseWrapper.init_connection_statedjango/db/backends/postgresql/base.py:4022 ms0.7%
DatabaseWrapper._configure_connectiondjango/db/backends/postgresql/base.py:3742 ms0.7%
DatabaseWrapper._configure_timezonedjango/db/backends/postgresql/base.py:3572 ms0.7%
Cursor.executepsycopg/cursor.py:1132 ms0.7%
Connection.waitpsycopg/connection.py:4952 ms0.7%
PurePath.__truediv__<stdlib>/pathlib/__init__.py:177 return self.with_segments(self, key)2 ms0.7%
PurePath.with_segments<stdlib>/pathlib/__init__.py:1652 ms0.7%
PurePath.__init__<stdlib>/pathlib/__init__.py:1462 ms0.7%
call40 ms18.9%
McpTest.test_bare_tokenapps/mcp/tests.py:147 response = self.post({"jsonrpc": "2.0", "id": 1, "method": "ping"}, bearer=False)27 ms12.6%
McpTest.postapps/mcp/tests.py:67 return self.client.post(27 ms12.6%
Client.postdjango/test/client.py:115327 ms12.6%
RequestFactory.postdjango/test/client.py:49927 ms12.6%
RequestFactory.genericdjango/test/client.py:67127 ms12.6%
Client.requestdjango/test/client.py:108227 ms12.6%
ClientHandler.__call__django/test/client.py:17327 ms12.6%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6227 ms12.6%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10427 ms12.6%
WhiteNoise.add_fileswhitenoise/base.py:10827 ms12.6%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12021 ms10.1%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13121 ms10.1%
WhiteNoise.get_static_filewhitenoise/base.py:20816 ms7.6%
StaticFile.__init__whitenoise/responders.py:735 ms2.5%
StaticFile.get_headerswhitenoise/responders.py:1713 ms1.3%
StaticFile.get_headerswhitenoise/responders.py:1763 ms1.3%
formatdate<stdlib>/email/utils.py:2663 ms1.3%
StaticFile.__init__whitenoise/responders.py:775 ms2.5%
StaticFile.get_alternativeswhitenoise/responders.py:2005 ms2.5%
__init____init__:-13 ms1.3%
StaticFile.__init__whitenoise/responders.py:743 ms1.3%
Headers.__getitem__<stdlib>/wsgiref/headers.py:833 ms1.3%
WhiteNoise.get_static_filewhitenoise/base.py:2035 ms2.5%
WhiteNoise.add_cache_headerswhitenoise/base.py:2243 ms1.3%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1763 ms1.3%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1973 ms1.3%
URLMixin.urldebug_toolbar/panels/staticfiles.py:203 ms1.3%
StaticFile.__init__whitenoise/responders.py:773 ms1.3%
StaticFile.get_alternativeswhitenoise/responders.py:2003 ms1.3%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1155 ms2.5%
scantreewhitenoise/base.py:2625 ms2.5%
scantreewhitenoise/base.py:2625 ms2.5%
scantreewhitenoise/base.py:2623 ms1.3%
scantreewhitenoise/base.py:2623 ms1.3%
scantreewhitenoise/base.py:2623 ms1.3%
scantreewhitenoise/base.py:2603 ms1.3%
scantreewhitenoise/base.py:2643 ms1.3%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()11 ms5.0%
TestCase._fixture_teardowndjango/test/testcases.py:14958 ms3.8%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4838 ms3.8%
CursorWrapper.executedjango/db/backends/utils.py:798 ms3.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:928 ms3.8%
CursorWrapper._executedjango/db/backends/utils.py:1038 ms3.8%
Cursor.executepsycopg/cursor.py:1138 ms3.8%
Connection.waitpsycopg/connection.py:4958 ms3.8%
TestCase._fixture_teardowndjango/test/testcases.py:14943 ms1.3%
TestCase._should_check_constraintsdjango/test/testcases.py:15033 ms1.3%
DatabaseWrapper.is_usabledjango/db/backends/postgresql/base.py:4923 ms1.3%
Cursor.executepsycopg/cursor.py:1133 ms1.3%
Connection.waitpsycopg/connection.py:4953 ms1.3%
TransactionTestCase._pre_setupdjango/test/testcases.py:1164 cls._fixture_setup()3 ms1.3%
TestCase._fixture_setupdjango/test/testcases.py:14783 ms1.3%
TestCase._enter_atomicsdjango/test/testcases.py:13963 ms1.3%
Atomic.__enter__django/db/transaction.py:2113 ms1.3%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:263 ms1.3%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4003 ms1.3%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3673 ms1.3%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.3%
CursorWrapper._executedjango/db/backends/utils.py:1033 ms1.3%
Cursor.executepsycopg/cursor.py:1133 ms1.3%
Connection.waitpsycopg/connection.py:4953 ms1.3%
BaseCursor._execute_genpsycopg/_cursor_base.py:2063 ms1.3%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2863 ms1.3%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:783 ms1.3%
Estimated from 129 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/mcp/tests.py:67
return self.client.post(
McpTest.post
· Libraries
|
27 ms |
|
apps/projects/models.py:466
super().save(*args, **kwargs)
Profile.save
· Database
|
15 ms |
|
apps/projects/profiles.py:404
commit, _ = Commit.objects.get_or_create(
claim_part
· Database
|
11 ms |
|
apps/projects/environments.py:63
obj, created = Environment.objects.get_or_create(
get_or_create_environment
· Database
|
9 ms |
|
apps/projects/testing.py:375
profile.refresh_from_db()
store_profile
· Database
|
8 ms |
|
apps/projects/rollups.py:88
TestDailyStats.objects.bulk_create(
add_perfs
· Database
|
6 ms |
|
apps/projects/models.py:230
self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order
TestManager.upsert
· Database
|
6 ms |
|
apps/projects/profiles.py:111
return gzip.compress(data, compresslevel=6)
compress
· Libraries
|
6 ms |
|
apps/projects/profiles.py:356
part = ProfilePart.objects.filter(pk=part.pk).first()
process_profile_part
· Database
|
6 ms |
|
apps/projects/profiles.py:479
TestPerf.objects.bulk_create(
write_perfs
· Database
|
6 ms |
Fixtures
Exact setup time| _unittest_setUpClass_fixture_McpTest class | 171 ms |
| _django_setup_unittest class | 0.28 ms |
| _dj_autoclear_mailbox function | 0.05 ms |
| _django_db_marker function | 0.04 ms |
| _template_string_if_invalid_marker function | 0.04 ms |
| _django_set_urlconf function | 0.03 ms |
| _live_server_helper function | 0.03 ms |
| _django_clear_site_cache function | 0.02 ms |
| monkeypatch function | 0.02 ms |
Database
219 queries · 85 ms
Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).
15×
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…
10×
SELECT "projects_profilepart"."id", "projects_profilepart"."profile_id", "projects_profilepart"."index", "projects_profilepart"."count", "projects_profilepart"."checksum", "projects_profilepart"."status", "projects_profilepart"."error", "projects_profilepart"."tests_count", "projects_profilepart"."…
10×
SELECT "projects_environment"."id", "projects_environment"."project_id", "projects_environment"."name", "projects_environment"."kind", "projects_environment"."provider", "projects_environment"."details", "projects_environment"."date_first_seen", "projects_environment"."date_last_seen" FROM "project…
6×
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" FROM "p…
5×
SELECT MAX("projects_profile"."number") AS "last" FROM "projects_profile" WHERE "projects_profile"."project_id" = %s
Biggest pieces of work
|
setup setUpClass
django/test/testcases.py:1423
|
171 ms |
|
call test body
apps/mcp/tests.py:147
|
27 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
11 ms |
|
call _pre_setup
django/test/testcases.py:1164
|
3 ms |
|
setup __truediv__
<stdlib>/pathlib/__init__.py:177
|
2 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 | |
|---|---|---|---|---|
| 16 hours ago | CI github-actions:test | passed | 213 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 131 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 220 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 183 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 251 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 146 ms | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 240 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 225 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 229 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 268 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 143 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 381 ms | Profile |