Tests / apps/api/tests.py
ProfileUploadTest::test_reupload_split_differently
First seen 7 hours ago in 78a4357
CI
github-actions:test
5 runs
Average
201 ms
median 210 ms
max 251 ms
max 251 ms
Phases
Setup 0.71 ms
Call 200 ms
Teardown 0.19 ms
Categories
Database 167 ms
App code 4 ms
Test code 0.72 ms
Other (Libraries, Serialization, Mocking, Unsampled, ...) 29 ms
210 database queries per run
Needs 256 KB of memory (max 460 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 12 minutes ago ·
open run
call209 ms99.5%
ProfileUploadTest.test_reupload_split_differentlyapps/api/tests.py:797126 ms59.7%
ProfileUploadTest.uploadapps/api/tests.py:49578 ms37.3%
_SharedTaskProxy.__call__potatoq/app.py:76378 ms37.3%
Task.__call__potatoq/task.py:18978 ms37.3%
process_profileapps/api/tasks.py:23954 ms25.7%
process_profile_partapps/projects/profiles.py:342 profile = claim_part(part, document)31 ms14.9%
claim_partapps/projects/profiles.py:3789 ms4.1%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(7 ms3.3%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:877 ms3.3%
QuerySet.get_or_createdjango/db/models/query.py:9875 ms2.5%
QuerySet.getdjango/db/models/query.py:6355 ms2.5%
QuerySet.__len__django/db/models/query.py:3725 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20005 ms2.5%
ModelIterable.__iter__django/db/models/query.py:955 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.7%
Cursor.executepsycopg/cursor.py:1133 ms1.7%
Connection.waitpsycopg/connection.py:4953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7952 ms0.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5742 ms0.8%
QuerySet.get_or_createdjango/db/models/query.py:9942 ms0.8%
QuerySet.createdjango/db/models/query.py:6692 ms0.8%
Model.savedjango/db/models/base.py:8742 ms0.8%
Model.save_basedjango/db/models/base.py:9662 ms0.8%
Model._save_tabledjango/db/models/base.py:11672 ms0.8%
Model._do_insertdjango/db/models/base.py:12182 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet._insertdjango/db/models/query.py:19182 ms0.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
get_or_create_environmentapps/projects/environments.py:79 obj.save(update_fields=update_fields)2 ms0.8%
Model.savedjango/db/models/base.py:8742 ms0.8%
Model.save_basedjango/db/models/base.py:9662 ms0.8%
Model._save_tabledjango/db/models/base.py:11102 ms0.8%
Model._do_updatedjango/db/models/base.py:12112 ms0.8%
QuerySet._updatedjango/db/models/query.py:13272 ms0.8%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms0.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
claim_partapps/projects/profiles.py:383 commit, _ = Commit.objects.get_or_create(5 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:875 ms2.5%
QuerySet.get_or_createdjango/db/models/query.py:9873 ms1.7%
QuerySet.getdjango/db/models/query.py:6353 ms1.7%
QuerySet.__len__django/db/models/query.py:3723 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
QuerySet.get_or_createdjango/db/models/query.py:9942 ms0.8%
QuerySet.createdjango/db/models/query.py:6692 ms0.8%
Model.savedjango/db/models/base.py:8742 ms0.8%
Model.save_basedjango/db/models/base.py:9662 ms0.8%
Model._save_tabledjango/db/models/base.py:11672 ms0.8%
Model._do_insertdjango/db/models/base.py:12182 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet._insertdjango/db/models/query.py:19182 ms0.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
claim_partapps/projects/profiles.py:358 profile = Profile.objects.select_for_update(no_key=True).get(pk=part.profile_id)3 ms1.7%
QuerySet.getdjango/db/models/query.py:6353 ms1.7%
QuerySet.__len__django/db/models/query.py:3723 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.7%
Cursor.executepsycopg/cursor.py:1133 ms1.7%
Connection.waitpsycopg/connection.py:4953 ms1.7%
claim_partapps/projects/profiles.py:376 project = profile.project3 ms1.7%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2573 ms1.7%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2223 ms1.7%
QuerySet.getdjango/db/models/query.py:6353 ms1.7%
QuerySet.__len__django/db/models/query.py:3723 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16222 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.8%
claim_partapps/projects/profiles.py:4463 ms1.7%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)3 ms1.7%
Model.savedjango/db/models/base.py:8743 ms1.7%
Model.save_basedjango/db/models/base.py:9663 ms1.7%
Model._save_tabledjango/db/models/base.py:11103 ms1.7%
Model._do_updatedjango/db/models/base.py:12113 ms1.7%
QuerySet._updatedjango/db/models/query.py:13273 ms1.7%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21403 ms1.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21113 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16222 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
claim_partapps/projects/profiles.py:359 ProfilePart.objects.filter(pk=part.pk).update(status=ProfilePart.StatusTypes.PENDING)3 ms1.7%
QuerySet.updatedjango/db/models/query.py:13003 ms1.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21113 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
Atomic.__exit__django/db/transaction.py:2472 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms0.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
Atomic.__enter__django/db/transaction.py:2112 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.8%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms0.8%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:3449 ms4.1%
upsert_testsapps/projects/profiles.py:4519 ms4.1%
TestManager.upsertapps/projects/models.py:236 return {test.name: test for test in self.filter(project=project, name__in=names)}3 ms1.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.filterdjango/db/models/query.py:15422 ms0.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms0.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms0.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms0.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms0.8%
Query.build_filterdjango/db/models/sql/query.py:16132 ms0.8%
Query.build_lookupdjango/db/models/sql/query.py:14302 ms0.8%
TestManager.upsertapps/projects/models.py:2293 ms1.7%
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))3 ms1.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms0.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.filterdjango/db/models/query.py:15422 ms0.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms0.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms0.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms0.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms0.8%
TestManager.upsertapps/projects/models.py:230 self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order2 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms0.8%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.8%
QuerySet._insertdjango/db/models/query.py:19182 ms0.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:345 write_perfs(profile, part, entries, tests)7 ms3.3%
write_perfsapps/projects/profiles.py:457 TestPerf.objects.filter(profile=profile, part=part.index).delete()3 ms1.7%
QuerySet.deletedjango/db/models/query.py:12383 ms1.7%
Collector.deletedjango/db/models/deletion.py:4713 ms1.7%
QuerySet._raw_deletedjango/db/models/query.py:12603 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.7%
Cursor.executepsycopg/cursor.py:1133 ms1.7%
Connection.waitpsycopg/connection.py:4953 ms1.7%
write_perfsapps/projects/profiles.py:458 TestPerf.objects.bulk_create(2 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms0.8%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.8%
QuerySet._insertdjango/db/models/query.py:19182 ms0.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
Atomic.__enter__django/db/transaction.py:2112 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.8%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms0.8%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:338 or ProfilePart.objects.filter(profile_id=part.profile_id, index=part.index, id__gt=part.id).exists()2 ms0.8%
QuerySet.existsdjango/db/models/query.py:13372 ms0.8%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms0.8%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:347 ProfilePart.objects.filter(pk=part.pk).update(2 ms0.8%
QuerySet.updatedjango/db/models/query.py:13002 ms0.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:335 part = ProfilePart.objects.filter(pk=part.pk).first()2 ms0.8%
QuerySet.firstdjango/db/models/query.py:11452 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:3462 ms0.8%
write_snapshotsapps/projects/profiles.py:313 cursor.executemany(SNAPSHOT_UPSERT, batch)2 ms0.8%
CursorWrapper.executemanydjango/db/backends/utils.py:842 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
process_profileapps/api/tasks.py:25319 ms9.1%
_SharedTaskProxy.__call__potatoq/app.py:76319 ms9.1%
Task.__call__potatoq/task.py:18919 ms9.1%
finalize_profile_partsapps/api/tasks.py:259 if finalize_profile(profile_id):19 ms9.1%
finalize_profileapps/projects/profiles.py:4965 ms2.5%
add_perfsapps/projects/rollups.py:30 for perf in perfs:2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
add_perfsapps/projects/rollups.py:64 for row in TestDailyStats.objects.filter(2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
add_perfsapps/projects/rollups.py:88 TestDailyStats.objects.bulk_create(2 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms0.8%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.8%
QuerySet._insertdjango/db/models/query.py:19182 ms0.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
finalize_profileapps/projects/profiles.py:479 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)3 ms1.7%
QuerySet.getdjango/db/models/query.py:6353 ms1.7%
QuerySet.__len__django/db/models/query.py:3723 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms0.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms0.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3302 ms0.8%
BaseExpression.select_formatdjango/db/models/expressions.py:4992 ms0.8%
finalize_profileapps/projects/profiles.py:483 for part in ProfilePart.objects.filter(profile=profile).defer("document").order_by("index", "id"):3 ms1.7%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:872 ms0.8%
SQLCompiler.get_order_bydjango/db/models/sql/compiler.py:4912 ms0.8%
SQLCompiler._order_by_pairsdjango/db/models/sql/compiler.py:4742 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.filterdjango/db/models/query.py:15422 ms0.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms0.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms0.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms0.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms0.8%
Query.build_filterdjango/db/models/sql/query.py:15772 ms0.8%
Query.setup_joinsdjango/db/models/sql/query.py:19872 ms0.8%
Query.joindjango/db/models/sql/query.py:11812 ms0.8%
Atomic.__exit__django/db/transaction.py:2472 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms0.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
finalize_profileapps/projects/profiles.py:492 for duplicate in duplicates:2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ValuesIterable.__iter__django/db/models/query.py:2222 ms0.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms0.8%
finalize_profileapps/projects/profiles.py:495 Environment.objects.select_for_update(no_key=True).filter(pk=profile.environment_id).first()2 ms0.8%
QuerySet.firstdjango/db/models/query.py:11452 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
finalize_profileapps/projects/profiles.py:5042 ms0.8%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms0.8%
Model.savedjango/db/models/base.py:8742 ms0.8%
Model.save_basedjango/db/models/base.py:9662 ms0.8%
Model._save_tabledjango/db/models/base.py:11102 ms0.8%
Model._do_updatedjango/db/models/base.py:12112 ms0.8%
QuerySet._updatedjango/db/models/query.py:13272 ms0.8%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms0.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms0.8%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms0.8%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms0.8%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms0.8%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms0.8%
process_profileapps/api/tasks.py:237 part = ProfilePart.objects.select_related("profile").get(id=part_id)5 ms2.5%
QuerySet.getdjango/db/models/query.py:6355 ms2.5%
QuerySet.__len__django/db/models/query.py:3725 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20005 ms2.5%
ModelIterable.__iter__django/db/models/query.py:955 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms0.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms0.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms0.8%
ProfileUploadTest.uploadapps/api/tests.py:487 response = self.client.post(45 ms21.6%
Client.postdjango/test/client.py:115345 ms21.6%
RequestFactory.postdjango/test/client.py:49945 ms21.6%
RequestFactory.genericdjango/test/client.py:67145 ms21.6%
Client.requestdjango/test/client.py:108245 ms21.6%
ClientHandler.__call__django/test/client.py:18624 ms11.6%
BaseHandler.get_responsedjango/core/handlers/base.py:14124 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13024 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30924 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12324 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30924 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30924 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30924 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30924 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30924 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30924 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3424 ms11.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5524 ms11.6%
BaseHandler._get_responsedjango/core/handlers/base.py:19824 ms11.6%
csrf_exempt.<locals>._view_wrapperdjango/views/decorators/csrf.py:6524 ms11.6%
jsonify_errors.<locals>.wrapped_viewapps/api/urls.py:3724 ms11.6%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:6424 ms11.6%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:7521 ms10.0%
profile_uploadapps/api/urls.py:1507 ms3.3%
get_or_create_numberedapps/projects/models.py:18 existing = model.objects.filter(project=project, **lookup).first()5 ms2.5%
QuerySet.firstdjango/db/models/query.py:11455 ms2.5%
QuerySet.__iter__django/db/models/query.py:3905 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20005 ms2.5%
ModelIterable.__iter__django/db/models/query.py:955 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16245 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:795 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1055 ms2.5%
Cursor.executepsycopg/cursor.py:1135 ms2.5%
Connection.waitpsycopg/connection.py:4955 ms2.5%
get_or_create_numberedapps/projects/models.py:21 number = next_number(model, project.pk)2 ms0.8%
next_numberapps/projects/models.py:35 return (model.objects.filter(project_id=project_id).aggregate(last=models.Max("number"))["last"] or 0) + 12 ms0.8%
QuerySet.aggregatedjango/db/models/query.py:5942 ms0.8%
Query.get_aggregationdjango/db/models/sql/query.py:6332 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16222 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.8%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3202 ms0.8%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2982 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.8%
DatabaseWrapper.create_cursordjango/db/backends/postgresql/base.py:4302 ms0.8%
profile_uploadapps/api/urls.py:154 part = ProfilePart.objects.create(5 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:875 ms2.5%
QuerySet.createdjango/db/models/query.py:6695 ms2.5%
Model.savedjango/db/models/base.py:8745 ms2.5%
Model.save_basedjango/db/models/base.py:9665 ms2.5%
Model._save_tabledjango/db/models/base.py:11675 ms2.5%
Model._do_insertdjango/db/models/base.py:12185 ms2.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:875 ms2.5%
QuerySet._insertdjango/db/models/query.py:19185 ms2.5%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19255 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:795 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1055 ms2.5%
Cursor.executepsycopg/cursor.py:1135 ms2.5%
Connection.waitpsycopg/connection.py:4955 ms2.5%
profile_uploadapps/api/urls.py:1635 ms2.5%
Project.urlapps/projects/models.py:59 return reverse(name, args=[self.organization.slug, self.slug, *args])5 ms2.5%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2575 ms2.5%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2225 ms2.5%
QuerySet.getdjango/db/models/query.py:6355 ms2.5%
QuerySet.__len__django/db/models/query.py:3725 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:20005 ms2.5%
ModelIterable.__iter__django/db/models/query.py:955 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16245 ms2.5%
CursorWrapper.executedjango/db/backends/utils.py:795 ms2.5%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:925 ms2.5%
CursorWrapper._executedjango/db/backends/utils.py:1055 ms2.5%
Cursor.executepsycopg/cursor.py:1135 ms2.5%
Connection.waitpsycopg/connection.py:4955 ms2.5%
profile_uploadapps/api/urls.py:152 part = ProfilePart.objects.filter(profile=profile, index=index).order_by("-id").first()3 ms1.7%
QuerySet.firstdjango/db/models/query.py:11453 ms1.7%
QuerySet.__iter__django/db/models/query.py:3903 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.7%
Cursor.executepsycopg/cursor.py:1133 ms1.7%
Connection.waitpsycopg/connection.py:4953 ms1.7%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:73 touch_token(request.headers.get("Authorization"))2 ms0.8%
touch_tokenapps/api/urls.py:59 SecretTokens.objects.filter(pk__in=list(stale)).update(date_last_used=now)2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms0.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:72 project = get_object_or_404(Project, secrettokens__token=request.headers.get("Authorization"))2 ms0.8%
get_object_or_404django/shortcuts.py:902 ms0.8%
QuerySet.getdjango/db/models/query.py:6352 ms0.8%
QuerySet.__len__django/db/models/query.py:3722 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
ClientHandler.__call__django/test/client.py:17321 ms10.0%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6221 ms10.0%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10421 ms10.0%
WhiteNoise.add_fileswhitenoise/base.py:10821 ms10.0%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12016 ms7.5%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13116 ms7.5%
WhiteNoise.get_static_filewhitenoise/base.py:2089 ms4.1%
StaticFile.__init__whitenoise/responders.py:763 ms1.7%
StaticFile.get_not_modified_responsewhitenoise/responders.py:1882 ms0.8%
Headers.__contains__<stdlib>/wsgiref/headers.py:872 ms0.8%
Headers.get<stdlib>/wsgiref/headers.py:1072 ms0.8%
StaticFile.__init__whitenoise/responders.py:742 ms0.8%
parsedate<stdlib>/email/_parseaddr.py:1852 ms0.8%
StaticFile.__init__whitenoise/responders.py:722 ms0.8%
StaticFile.get_file_statswhitenoise/responders.py:1612 ms0.8%
__init____init__:-12 ms0.8%
FileEntry.__init__whitenoise/responders.py:2602 ms0.8%
<GC>~2 ms0.8%
WhiteNoise.get_static_filewhitenoise/base.py:2037 ms3.3%
WhiteNoise.add_cache_headerswhitenoise/base.py:2247 ms3.3%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1767 ms3.3%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1977 ms3.3%
URLMixin.urldebug_toolbar/panels/staticfiles.py:207 ms3.3%
HashedFilesMixin.urldjango/contrib/staticfiles/storage.py:2053 ms1.7%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:1862 ms0.8%
FileSystemStorage.urldjango/core/files/storage/filesystem.py:2092 ms0.8%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1155 ms2.5%
scantreewhitenoise/base.py:2625 ms2.5%
scantreewhitenoise/base.py:2625 ms2.5%
scantreewhitenoise/base.py:2643 ms1.7%
<GC>~2 ms0.8%
scantreewhitenoise/base.py:2622 ms0.8%
scantreewhitenoise/base.py:2622 ms0.8%
scantreewhitenoise/base.py:2622 ms0.8%
scantreewhitenoise/base.py:2642 ms0.8%
ProfileUploadTest.uploadapps/api/tests.py:485 body = json.dumps(body).encode()2 ms0.8%
dumps<stdlib>/json/__init__.py:2342 ms0.8%
JSONEncoder.encode<stdlib>/json/encoder.py:2022 ms0.8%
JSONEncoder.iterencode<stdlib>/json/encoder.py:2632 ms0.8%
ProfileUploadTest.test_reupload_split_differentlyapps/api/tests.py:800 self.upload(part)65 ms30.7%
ProfileUploadTest.uploadapps/api/tests.py:49549 ms23.2%
_SharedTaskProxy.__call__potatoq/app.py:76349 ms23.2%
Task.__call__potatoq/task.py:18949 ms23.2%
process_profileapps/api/tasks.py:23945 ms21.6%
process_profile_partapps/projects/profiles.py:342 profile = claim_part(part, document)19 ms9.1%
claim_partapps/projects/profiles.py:3785 ms2.5%
get_or_create_environmentapps/projects/environments.py:79 obj.save(update_fields=update_fields)3 ms1.7%
Model.savedjango/db/models/base.py:8743 ms1.7%
Model.save_basedjango/db/models/base.py:9663 ms1.7%
Model._save_tabledjango/db/models/base.py:11103 ms1.7%
Model._do_updatedjango/db/models/base.py:12113 ms1.7%
QuerySet._updatedjango/db/models/query.py:13273 ms1.7%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21403 ms1.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21113 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.7%
Cursor.executepsycopg/cursor.py:1133 ms1.7%
Connection.waitpsycopg/connection.py:4953 ms1.7%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(2 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.get_or_createdjango/db/models/query.py:9872 ms0.8%
QuerySet.getdjango/db/models/query.py:6352 ms0.8%
QuerySet.__len__django/db/models/query.py:3722 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
claim_partapps/projects/profiles.py:358 profile = Profile.objects.select_for_update(no_key=True).get(pk=part.profile_id)3 ms1.7%
QuerySet.getdjango/db/models/query.py:6353 ms1.7%
QuerySet.__len__django/db/models/query.py:3723 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.7%
Cursor.executepsycopg/cursor.py:1133 ms1.7%
Connection.waitpsycopg/connection.py:4953 ms1.7%
claim_partapps/projects/profiles.py:4463 ms1.7%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)3 ms1.7%
Model.savedjango/db/models/base.py:8743 ms1.7%
Model.save_basedjango/db/models/base.py:9663 ms1.7%
Model._save_tabledjango/db/models/base.py:11103 ms1.7%
Model._do_updatedjango/db/models/base.py:12113 ms1.7%
QuerySet._updatedjango/db/models/query.py:13273 ms1.7%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21403 ms1.7%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21113 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms1.7%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.7%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.7%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms1.7%
Cursor.executepsycopg/cursor.py:1133 ms1.7%
Connection.waitpsycopg/connection.py:4953 ms1.7%
claim_partapps/projects/profiles.py:3633 ms1.7%
add_perfsapps/projects/rollups.py:30 for perf in perfs:2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms0.8%
add_perfsapps/projects/rollups.py:88 TestDailyStats.objects.bulk_create(2 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.bulk_createdjango/db/models/query.py:8162 ms0.8%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.8%
QuerySet._insertdjango/db/models/query.py:19182 ms0.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19242 ms0.8%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18742 ms0.8%
SQLInsertCompiler.as_sql.<locals>.<genexpr>django/db/models/sql/compiler.py:18742 ms0.8%
claim_partapps/projects/profiles.py:383 commit, _ = Commit.objects.get_or_create(3 ms1.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.7%
QuerySet.get_or_createdjango/db/models/query.py:9873 ms1.7%
QuerySet.getdjango/db/models/query.py:6353 ms1.7%
QuerySet.__len__django/db/models/query.py:3723 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
ModelIterable.__iter__django/db/models/query.py:1272 ms0.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15772 ms0.8%
SQLCompiler.get_convertersdjango/db/models/sql/compiler.py:15262 ms0.8%
process_profile_partapps/projects/profiles.py:345 write_perfs(profile, part, entries, tests)12 ms5.8%
write_perfsapps/projects/profiles.py:458 TestPerf.objects.bulk_create(10 ms5.0%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:8710 ms5.0%
QuerySet.bulk_createdjango/db/models/query.py:83310 ms5.0%
QuerySet._batched_insertdjango/db/models/query.py:195610 ms5.0%
QuerySet._insertdjango/db/models/query.py:191810 ms5.0%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:192510 ms5.0%
CursorWrapper.executedjango/db/backends/utils.py:7910 ms5.0%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9210 ms5.0%
CursorWrapper._executedjango/db/backends/utils.py:10510 ms5.0%
Cursor.executepsycopg/cursor.py:11310 ms5.0%
Connection.waitpsycopg/connection.py:49510 ms5.0%
BaseCursor._execute_genpsycopg/_cursor_base.py:2059 ms4.1%
BaseCursor._convert_querypsycopg/_cursor_base.py:4659 ms4.1%
PostgresClientQuery.convertpsycopg/_queries.py:2899 ms4.1%
PostgresClientQuery.dumppsycopg/_queries.py:2999 ms4.1%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3009 ms4.1%
Dumper.quotepsycopg/adapt.py:599 ms4.1%
ListDumper.dumppsycopg/types/array.py:1579 ms4.1%
<GC>~9 ms4.1%
write_perfsapps/projects/profiles.py:457 TestPerf.objects.filter(profile=profile, part=part.index).delete()2 ms0.8%
QuerySet.deletedjango/db/models/query.py:12382 ms0.8%
Collector.deletedjango/db/models/deletion.py:4712 ms0.8%
QuerySet._raw_deletedjango/db/models/query.py:12602 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:3447 ms3.3%
upsert_testsapps/projects/profiles.py:4517 ms3.3%
TestManager.upsertapps/projects/models.py:230 self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order3 ms1.7%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.7%
QuerySet.bulk_createdjango/db/models/query.py:8333 ms1.7%
QuerySet._batched_insertdjango/db/models/query.py:19563 ms1.7%
QuerySet._insertdjango/db/models/query.py:19183 ms1.7%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19242 ms0.8%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18692 ms0.8%
SQLInsertCompiler.assemble_as_sqldjango/db/backends/postgresql/compiler.py:652 ms0.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms0.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms0.8%
TestManager.upsertapps/projects/models.py:2292 ms0.8%
TestManager.slugs_forapps/projects/models.py:240 existing = dict(self.filter(project_id=project_id, name__in=names).values_list("name", "slug"))2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms0.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
TestManager.upsertapps/projects/models.py:236 return {test.name: test for test in self.filter(project=project, name__in=names)}2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:3412 ms0.8%
load_documentapps/projects/profiles.py:112 return json.loads(gzip.decompress(bytes(part.document)))2 ms0.8%
decompress<stdlib>/gzip.py:6912 ms0.8%
process_profile_partapps/projects/profiles.py:3462 ms0.8%
write_snapshotsapps/projects/profiles.py:313 cursor.executemany(SNAPSHOT_UPSERT, batch)2 ms0.8%
CursorWrapper.executemanydjango/db/backends/utils.py:842 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executemanydjango/db/backends/utils.py:1142 ms0.8%
Cursor.executemanypsycopg/cursor.py:1372 ms0.8%
Connection._pipeline_nolockpsycopg/connection.py:4722 ms0.8%
Pipeline.__exit__psycopg/_pipeline.py:732 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:347 ProfilePart.objects.filter(pk=part.pk).update(2 ms0.8%
QuerySet.updatedjango/db/models/query.py:13002 ms0.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profile_partapps/projects/profiles.py:335 part = ProfilePart.objects.filter(pk=part.pk).first()2 ms0.8%
QuerySet.firstdjango/db/models/query.py:11452 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
process_profileapps/api/tasks.py:237 part = ProfilePart.objects.select_related("profile").get(id=part_id)3 ms1.7%
QuerySet.getdjango/db/models/query.py:6353 ms1.7%
QuerySet.__len__django/db/models/query.py:3723 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms0.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms0.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms0.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5742 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
ProfileUploadTest.uploadapps/api/tests.py:487 response = self.client.post(16 ms7.5%
Client.postdjango/test/client.py:115316 ms7.5%
RequestFactory.postdjango/test/client.py:49916 ms7.5%
RequestFactory.genericdjango/test/client.py:67114 ms6.6%
Client.requestdjango/test/client.py:108214 ms6.6%
ClientHandler.__call__django/test/client.py:18614 ms6.6%
BaseHandler.get_responsedjango/core/handlers/base.py:14114 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13014 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12314 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30914 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3414 ms6.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5514 ms6.6%
BaseHandler._get_responsedjango/core/handlers/base.py:19814 ms6.6%
csrf_exempt.<locals>._view_wrapperdjango/views/decorators/csrf.py:6514 ms6.6%
jsonify_errors.<locals>.wrapped_viewapps/api/urls.py:3714 ms6.6%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:6414 ms6.6%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:757 ms3.3%
profile_uploadapps/api/urls.py:152 part = ProfilePart.objects.filter(profile=profile, index=index).order_by("-id").first()3 ms1.7%
QuerySet.firstdjango/db/models/query.py:11453 ms1.7%
QuerySet.__iter__django/db/models/query.py:3903 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms0.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms0.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:2552 ms0.8%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10302 ms0.8%
profile_uploadapps/api/urls.py:1502 ms0.8%
get_or_create_numberedapps/projects/models.py:18 existing = model.objects.filter(project=project, **lookup).first()2 ms0.8%
QuerySet.firstdjango/db/models/query.py:11452 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms0.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:3182 ms0.8%
BaseCursor._set_resultspsycopg/_cursor_base.py:5352 ms0.8%
profile_uploadapps/api/urls.py:1632 ms0.8%
Project.urlapps/projects/models.py:59 return reverse(name, args=[self.organization.slug, self.slug, *args])2 ms0.8%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2572 ms0.8%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2222 ms0.8%
QuerySet.getdjango/db/models/query.py:6352 ms0.8%
QuerySet.__len__django/db/models/query.py:3722 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:72 project = get_object_or_404(Project, secrettokens__token=request.headers.get("Authorization"))3 ms1.7%
get_object_or_404django/shortcuts.py:903 ms1.7%
QuerySet.getdjango/db/models/query.py:6353 ms1.7%
QuerySet.__len__django/db/models/query.py:3723 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms1.7%
ModelIterable.__iter__django/db/models/query.py:953 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:882 ms0.8%
WhereNode.split_having_qualifydjango/db/models/sql/where.py:472 ms0.8%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:73 touch_token(request.headers.get("Authorization"))3 ms1.7%
touch_tokenapps/api/urls.py:59 SecretTokens.objects.filter(pk__in=list(stale)).update(date_last_used=now)2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms0.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
Atomic.__exit__django/db/transaction.py:2472 ms0.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms0.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
RequestFactory.genericdjango/test/client.py:6572 ms0.8%
ProfileUploadTest.test_reupload_split_differentlyapps/api/tests.py:8029 ms4.1%
_SharedTaskProxy.__call__potatoq/app.py:7639 ms4.1%
Task.__call__potatoq/task.py:1899 ms4.1%
finalize_profile_partsapps/api/tasks.py:259 if finalize_profile(profile_id):9 ms4.1%
finalize_profileapps/projects/profiles.py:4965 ms2.5%
add_perfsapps/projects/rollups.py:30 for perf in perfs:2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms0.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms0.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:2552 ms0.8%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10322 ms0.8%
add_perfsapps/projects/rollups.py:64 for row in TestDailyStats.objects.filter(2 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms0.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms0.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms0.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:2682 ms0.8%
SQLCompiler.get_select.<locals>.<genexpr>django/db/models/sql/compiler.py:2642 ms0.8%
add_perfsapps/projects/rollups.py:88 TestDailyStats.objects.bulk_create(2 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.bulk_createdjango/db/models/query.py:8162 ms0.8%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.8%
QuerySet._insertdjango/db/models/query.py:19182 ms0.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
finalize_profileapps/projects/profiles.py:479 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)2 ms0.8%
QuerySet.getdjango/db/models/query.py:6352 ms0.8%
QuerySet.__len__django/db/models/query.py:3722 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
finalize_profileapps/projects/profiles.py:5042 ms0.8%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms0.8%
Model.savedjango/db/models/base.py:8742 ms0.8%
Model.save_basedjango/db/models/base.py:9662 ms0.8%
Model._save_tabledjango/db/models/base.py:11102 ms0.8%
Model._do_updatedjango/db/models/base.py:12112 ms0.8%
QuerySet._updatedjango/db/models/query.py:13272 ms0.8%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms0.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
ProfileUploadTest.test_reupload_split_differentlyapps/api/tests.py:7982 ms0.8%
_patch.__exit__<stdlib>/unittest/mock.py:16622 ms0.8%
ProfileUploadTest.test_reupload_split_differentlyapps/api/tests.py:8012 ms0.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.8%
QuerySet.getdjango/db/models/query.py:6352 ms0.8%
QuerySet.__len__django/db/models/query.py:3722 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
ProfileUploadTest.test_reupload_split_differentlyapps/api/tests.py:8032 ms0.8%
Model.refresh_from_dbdjango/db/models/base.py:7582 ms0.8%
QuerySet.getdjango/db/models/query.py:6352 ms0.8%
QuerySet.__len__django/db/models/query.py:3722 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
ModelIterable.__iter__django/db/models/query.py:952 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
ProfileUploadTest.test_reupload_split_differentlyapps/api/tests.py:8052 ms0.8%
QuerySet.__iter__django/db/models/query.py:3902 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.8%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms0.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()2 ms0.8%
TestCase._fixture_teardowndjango/test/testcases.py:14952 ms0.8%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4832 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms0.8%
Cursor.executepsycopg/cursor.py:1132 ms0.8%
Connection.waitpsycopg/connection.py:4952 ms0.8%
Estimated from 120 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/api/tests.py:487
response = self.client.post(
ProfileUploadTest.upload
· Libraries
|
23 ms |
|
apps/projects/profiles.py:458
TestPerf.objects.bulk_create(
write_perfs
· Database
|
12 ms |
|
apps/projects/models.py:466
super().save(*args, **kwargs)
Profile.save
· Database
|
10 ms |
|
apps/projects/environments.py:63
obj, created = Environment.objects.get_or_create(
get_or_create_environment
· Database
|
9 ms |
|
apps/api/tasks.py:237
part = ProfilePart.objects.select_related("profile").get(id=part_id)
process_profile
· Database
|
9 ms |
|
apps/projects/profiles.py:383
commit, _ = Commit.objects.get_or_create(
claim_part
· Database
|
9 ms |
|
apps/projects/models.py:18
existing = model.objects.filter(project=project, **lookup).first()
get_or_create_numbered
· Database
|
7 ms |
|
apps/projects/models.py:59
return reverse(name, args=[self.organization.slug, self.slug, *args])
Project.url
· Database
|
7 ms |
|
apps/api/urls.py:152
part = ProfilePart.objects.filter(profile=profile, index=index).order_by("-id").first()
profile_upload
· Database
|
7 ms |
|
apps/projects/profiles.py:358
profile = Profile.objects.select_for_update(no_key=True).get(pk=part.profile_id)
claim_part
· Database
|
7 ms |
Fixtures
Exact setup time| monkeypatch function | 0.07 ms |
| _template_string_if_invalid_marker function | 0.06 ms |
| _dj_autoclear_mailbox function | 0.05 ms |
| _django_db_marker function | 0.03 ms |
| _django_set_urlconf function | 0.03 ms |
| _live_server_helper function | 0.03 ms |
| _django_clear_site_cache function | 0.03 ms |
Database
210 queries · 84 ms
Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).
19×
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"."…
16×
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_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…
8×
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…
5×
SELECT "projects_secrettokens"."id" AS "pk" FROM "projects_secrettokens" WHERE (("projects_secrettokens"."date_last_used" < %s OR "projects_secrettokens"."date_last_used" IS NULL) AND "projects_secrettokens"."token" = %s) FOR UPDATE SKIP LOCKED
Biggest pieces of work
|
call test body
apps/api/tests.py:800
|
206 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
2 ms |
| call pytest internals | 2 ms |
Reliability
5 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 5 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| 12 minutes ago | CI github-actions:test | passed | 210 ms | Profile |
| 37 minutes ago | CI github-actions:test | passed | 206 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 251 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 119 ms | Profile |
| 7 hours ago | CI github-actions:test | passed | 220 ms | Profile |