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

StorageTest::test_prune_old_data

First seen 8 hours ago in 78a4357
CI github-actions:test 5 runs
Average
82 ms
median 85 ms
max 94 ms
Phases
Setup 0.75 ms Call 81 ms Teardown 0.19 ms
Categories
Database 76 ms App code 1 ms Other (Libraries, Unsampled, Logging, Serialization, ...) 4 ms

107 database queries per run

Needs 0 KB of memory (max 0 KB)

Duration per run

Where the time goes

Latest run in ci:github-actions:test, an hour ago · open run
Hide pytest frames
call84 ms98.8%
CallInfo.from_call_pytest/runner.py:35384 ms98.8%
call_and_report.<locals>.<lambda>_pytest/runner.py:24584 ms98.8%
HookCaller.__call__pluggy/_hooks.py:51284 ms98.8%
PluginManager._hookexecpluggy/_manager.py:12084 ms98.8%
_multicallpluggy/_callers.py:12184 ms98.8%
pytest_runtest_call_pytest/runner.py:17984 ms98.8%
_django_setup_unittest.<locals>.non_debugging_runtestpytest_django/plugin.py:57384 ms98.8%
SimpleTestCase.__call__django/test/testcases.py:31384 ms98.8%
SimpleTestCase._setup_and_calldjango/test/testcases.py:36881 ms95.2%
TestCase.__call__<stdlib>/unittest/case.py:74781 ms95.2%
TestCase.run<stdlib>/unittest/case.py:69181 ms95.2%
TestCase._callTestMethod<stdlib>/unittest/case.py:63781 ms95.2%
StorageTest.test_prune_old_dataapps/projects/tests.py:1245 old = store_profile(34 ms39.5%
store_profileapps/projects/testing.py:37318 ms21.5%
process_profile_partapps/projects/profiles.py:342 profile = claim_part(part, document)6 ms7.2%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1165 ms5.4%
claim_partapps/projects/profiles.py:358 profile = Profile.objects.select_for_update(no_key=True).get(pk=part.profile_id)2 ms1.8%
QuerySet.getdjango/db/models/query.py:6352 ms1.8%
QuerySet.__len__django/db/models/query.py:3722 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ModelIterable.__iter__django/db/models/query.py:952 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
claim_partapps/projects/profiles.py:359 ProfilePart.objects.filter(pk=part.pk).update(status=ProfilePart.StatusTypes.PENDING)2 ms1.8%
QuerySet.updatedjango/db/models/query.py:13002 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
claim_partapps/projects/profiles.py:4462 ms1.8%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms1.8%
Model.savedjango/db/models/base.py:8742 ms1.8%
Model.save_basedjango/db/models/base.py:9662 ms1.8%
Model._save_tabledjango/db/models/base.py:11102 ms1.8%
Model._do_updatedjango/db/models/base.py:12112 ms1.8%
QuerySet._updatedjango/db/models/query.py:13272 ms1.8%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.8%
SQLUpdateCompiler.as_sqldjango/db/models/sql/compiler.py:20882 ms1.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.8%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1152 ms1.8%
Atomic.__exit__django/db/transaction.py:2472 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms1.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
process_profile_partapps/projects/profiles.py:3443 ms3.6%
upsert_testsapps/projects/profiles.py:4513 ms3.6%
TestManager.upsertapps/projects/models.py:2292 ms1.8%
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))2 ms1.8%
TestManager.upsertapps/projects/models.py:230 self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order2 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet.bulk_createdjango/db/models/query.py:8412 ms1.8%
BaseConnectionHandler.__getitem__django/utils/connection.py:582 ms1.8%
Local.__getattr__asgiref/local.py:1202 ms1.8%
_GeneratorContextManager.__enter__<stdlib>/contextlib.py:2032 ms1.8%
Local._lock_storageasgiref/local.py:902 ms1.8%
process_profile_partapps/projects/profiles.py:345 write_perfs(profile, part, entries, tests)3 ms3.6%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1152 ms1.8%
Atomic.__enter__django/db/transaction.py:2112 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.8%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms1.8%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1162 ms1.8%
write_perfsapps/projects/profiles.py:458 TestPerf.objects.bulk_create(2 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms1.8%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms1.8%
QuerySet._insertdjango/db/models/query.py:19182 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19242 ms1.8%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18102 ms1.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 ms1.8%
QuerySet.existsdjango/db/models/query.py:13372 ms1.8%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.8%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
process_profile_partapps/projects/profiles.py:3412 ms1.8%
load_documentapps/projects/profiles.py:112 return json.loads(gzip.decompress(bytes(part.document)))2 ms1.8%
loads<stdlib>/json/__init__.py:3712 ms1.8%
JSONDecoder.decode<stdlib>/json/decoder.py:3582 ms1.8%
JSONDecoder.raw_decode<stdlib>/json/decoder.py:3742 ms1.8%
process_profile_partapps/projects/profiles.py:3462 ms1.8%
write_snapshotsapps/projects/profiles.py:3122 ms1.8%
write_snapshots.<locals>.<genexpr>apps/projects/profiles.py:3102 ms1.8%
write_snapshots.<locals>.rowapps/projects/profiles.py:3052 ms1.8%
segments_ofapps/projects/profiles.py:1772 ms1.8%
process_profile_partapps/projects/profiles.py:347 ProfilePart.objects.filter(pk=part.pk).update(2 ms1.8%
QuerySet.updatedjango/db/models/query.py:13002 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.8%
SQLUpdateCompiler.as_sqldjango/db/models/sql/compiler.py:20782 ms1.8%
store_profileapps/projects/testing.py:374 finalize_profile(profile.id)8 ms9.0%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1168 ms9.0%
finalize_profileapps/projects/profiles.py:479 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)2 ms1.8%
QuerySet.getdjango/db/models/query.py:6352 ms1.8%
QuerySet.__len__django/db/models/query.py:3722 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ModelIterable.__iter__django/db/models/query.py:952 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms1.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.8%
Col.as_sqldjango/db/models/expressions.py:13252 ms1.8%
SQLCompiler.quote_name_unless_aliasdjango/db/backends/postgresql/compiler.py:342 ms1.8%
SQLCompiler.quote_name_unless_aliasdjango/db/models/sql/compiler.py:5612 ms1.8%
finalize_profileapps/projects/profiles.py:483 for part in ProfilePart.objects.filter(profile=profile).defer("document").order_by("index", "id"):2 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet.filterdjango/db/models/query.py:15422 ms1.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.8%
Query.build_filterdjango/db/models/sql/query.py:15512 ms1.8%
finalize_profileapps/projects/profiles.py:490 rows.filter(part__gte=profile.parts).delete()2 ms1.8%
QuerySet.deletedjango/db/models/query.py:12382 ms1.8%
Collector.deletedjango/db/models/deletion.py:4712 ms1.8%
QuerySet._raw_deletedjango/db/models/query.py:12602 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
finalize_profileapps/projects/profiles.py:492 for duplicate in duplicates:2 ms1.8%
QuerySet.__iter__django/db/models/query.py:3902 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ValuesIterable.__iter__django/db/models/query.py:2222 ms1.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
finalize_profileapps/projects/profiles.py:5042 ms1.8%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms1.8%
Model.savedjango/db/models/base.py:8742 ms1.8%
Model.save_basedjango/db/models/base.py:9662 ms1.8%
Model._save_tabledjango/db/models/base.py:11102 ms1.8%
Model._do_updatedjango/db/models/base.py:12112 ms1.8%
QuerySet._updatedjango/db/models/query.py:13272 ms1.8%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms1.8%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.8%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms1.8%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms1.8%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms1.8%
store_profileapps/projects/testing.py:3713 ms3.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms3.6%
QuerySet.createdjango/db/models/query.py:6693 ms3.6%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms1.8%
Model.savedjango/db/models/base.py:8742 ms1.8%
Model.save_basedjango/db/models/base.py:9662 ms1.8%
Model._save_tabledjango/db/models/base.py:11672 ms1.8%
Model._do_insertdjango/db/models/base.py:12182 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet._insertdjango/db/models/query.py:19182 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1022 ms1.8%
Profile.saveapps/projects/models.py:465 self.number = next_number(type(self), self.project_id)2 ms1.8%
next_numberapps/projects/models.py:35 return (model.objects.filter(project_id=project_id).aggregate(last=models.Max("number"))["last"] or 0) + 12 ms1.8%
QuerySet.aggregatedjango/db/models/query.py:5942 ms1.8%
Query.get_aggregationdjango/db/models/sql/query.py:6332 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
store_profileapps/projects/testing.py:375 profile.refresh_from_db()3 ms3.6%
Model.refresh_from_dbdjango/db/models/base.py:7582 ms1.8%
QuerySet.getdjango/db/models/query.py:6352 ms1.8%
QuerySet.__len__django/db/models/query.py:3722 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ModelIterable.__iter__django/db/models/query.py:952 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:2552 ms1.8%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10302 ms1.8%
Field.get_coldjango/db/models/fields/__init__.py:5402 ms1.8%
Model.refresh_from_dbdjango/db/models/base.py:7672 ms1.8%
store_profileapps/projects/testing.py:372 part = ProfilePart.objects.create(profile=profile, index=0, document=compress(data), document_size=len(data))2 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet.createdjango/db/models/query.py:6692 ms1.8%
Model.savedjango/db/models/base.py:8742 ms1.8%
Model.save_basedjango/db/models/base.py:9662 ms1.8%
Model._save_tabledjango/db/models/base.py:11672 ms1.8%
Model._do_insertdjango/db/models/base.py:12182 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet._insertdjango/db/models/query.py:19182 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
StorageTest.test_prune_old_dataapps/projects/tests.py:124926 ms30.5%
store_profileapps/projects/testing.py:37315 ms18.0%
process_profile_partapps/projects/profiles.py:342 profile = claim_part(part, document)5 ms5.4%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1163 ms3.6%
claim_partapps/projects/profiles.py:376 project = profile.project2 ms1.8%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2572 ms1.8%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2222 ms1.8%
QuerySet.getdjango/db/models/query.py:6352 ms1.8%
QuerySet.__len__django/db/models/query.py:3722 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ModelIterable.__iter__django/db/models/query.py:952 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
claim_partapps/projects/profiles.py:4462 ms1.8%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms1.8%
Model.savedjango/db/models/base.py:8742 ms1.8%
Model.save_basedjango/db/models/base.py:9662 ms1.8%
Model._save_tabledjango/db/models/base.py:11102 ms1.8%
Model._do_updatedjango/db/models/base.py:12112 ms1.8%
QuerySet._updatedjango/db/models/query.py:13272 ms1.8%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms1.8%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.8%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms1.8%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms1.8%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms1.8%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1152 ms1.8%
Atomic.__enter__django/db/transaction.py:2112 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.8%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms1.8%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
process_profile_partapps/projects/profiles.py:335 part = ProfilePart.objects.filter(pk=part.pk).first()3 ms3.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms3.6%
QuerySet.filterdjango/db/models/query.py:15423 ms3.6%
QuerySet._filter_or_excludedjango/db/models/query.py:15603 ms3.6%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15703 ms3.6%
Query.add_qdjango/db/models/sql/query.py:16713 ms3.6%
Query._add_qdjango/db/models/sql/query.py:17033 ms3.6%
Query.build_filterdjango/db/models/sql/query.py:15772 ms1.8%
Query.setup_joinsdjango/db/models/sql/query.py:19272 ms1.8%
process_profile_partapps/projects/profiles.py:3443 ms3.6%
upsert_testsapps/projects/profiles.py:4513 ms3.6%
TestManager.upsertapps/projects/models.py:2292 ms1.8%
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))2 ms1.8%
QuerySet.__iter__django/db/models/query.py:3902 ms1.8%
TestManager.upsertapps/projects/models.py:236 return {test.name: test for test in self.filter(project=project, name__in=names)}2 ms1.8%
QuerySet.__iter__django/db/models/query.py:3902 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ModelIterable.__iter__django/db/models/query.py:952 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:2552 ms1.8%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10092 ms1.8%
process_profile_partapps/projects/profiles.py:345 write_perfs(profile, part, entries, tests)2 ms1.8%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1162 ms1.8%
write_perfsapps/projects/profiles.py:457 TestPerf.objects.filter(profile=profile, part=part.index).delete()2 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet.filterdjango/db/models/query.py:15422 ms1.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.8%
Query.build_filterdjango/db/models/sql/query.py:16132 ms1.8%
process_profile_partapps/projects/profiles.py:3462 ms1.8%
write_snapshotsapps/projects/profiles.py:3122 ms1.8%
write_snapshots.<locals>.<genexpr>apps/projects/profiles.py:3102 ms1.8%
write_snapshots.<locals>.rowapps/projects/profiles.py:306 compress(json.dumps(snapshot_document(document, entry), separators=(",", ":")).encode()),2 ms1.8%
compressapps/projects/profiles.py:108 return gzip.compress(data, compresslevel=6)2 ms1.8%
compress<stdlib>/gzip.py:6682 ms1.8%
process_profile_partapps/projects/profiles.py:347 ProfilePart.objects.filter(pk=part.pk).update(2 ms1.8%
QuerySet.updatedjango/db/models/query.py:13002 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms1.8%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.8%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms1.8%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms1.8%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms1.8%
store_profileapps/projects/testing.py:374 finalize_profile(profile.id)9 ms10.8%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1168 ms9.0%
finalize_profileapps/projects/profiles.py:479 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)2 ms1.8%
QuerySet.getdjango/db/models/query.py:6352 ms1.8%
QuerySet.__len__django/db/models/query.py:3722 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ModelIterable.__iter__django/db/models/query.py:952 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms1.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.8%
Col.as_sqldjango/db/models/expressions.py:13252 ms1.8%
finalize_profileapps/projects/profiles.py:483 for part in ProfilePart.objects.filter(profile=profile).defer("document").order_by("index", "id"):2 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet.filterdjango/db/models/query.py:15422 ms1.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.8%
Query.build_filterdjango/db/models/sql/query.py:15772 ms1.8%
Query.setup_joinsdjango/db/models/sql/query.py:19272 ms1.8%
finalize_profileapps/projects/profiles.py:490 rows.filter(part__gte=profile.parts).delete()2 ms1.8%
QuerySet.deletedjango/db/models/query.py:12382 ms1.8%
Collector.deletedjango/db/models/deletion.py:4712 ms1.8%
QuerySet._raw_deletedjango/db/models/query.py:12602 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
finalize_profileapps/projects/profiles.py:492 for duplicate in duplicates:2 ms1.8%
QuerySet.__iter__django/db/models/query.py:3902 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ValuesIterable.__iter__django/db/models/query.py:2222 ms1.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
finalize_profileapps/projects/profiles.py:495 Environment.objects.select_for_update(no_key=True).filter(pk=profile.environment_id).first()2 ms1.8%
QuerySet.firstdjango/db/models/query.py:11452 ms1.8%
QuerySet.__iter__django/db/models/query.py:3902 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ModelIterable.__iter__django/db/models/query.py:952 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1152 ms1.8%
Atomic.__exit__django/db/transaction.py:2472 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms1.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
store_profileapps/projects/testing.py:3712 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet.createdjango/db/models/query.py:6692 ms1.8%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms1.8%
Model.savedjango/db/models/base.py:8742 ms1.8%
Model.save_basedjango/db/models/base.py:9662 ms1.8%
Model._save_tabledjango/db/models/base.py:11672 ms1.8%
Model._do_insertdjango/db/models/base.py:12182 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet._insertdjango/db/models/query.py:19182 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
StorageTest.test_prune_old_dataapps/projects/tests.py:12636 ms7.2%
_SharedTaskProxy.__call__potatoq/app.py:7636 ms7.2%
Task.__call__potatoq/task.py:1896 ms7.2%
prune_old_dataapps/api/tasks.py:306 .exclude(profile_id__in=list(keep))2 ms1.8%
QuerySet.__iter__django/db/models/query.py:3902 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms1.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
prune_old_dataapps/api/tasks.py:3192 ms1.8%
QuerySet.deletedjango/db/models/query.py:12382 ms1.8%
Collector.deletedjango/db/models/deletion.py:4712 ms1.8%
QuerySet._raw_deletedjango/db/models/query.py:12602 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
prune_old_dataapps/api/tasks.py:318 while ids := list(rows.values_list("id", flat=True)[:batch_size]):2 ms1.8%
QuerySet.__iter__django/db/models/query.py:3902 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms1.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms1.8%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms1.8%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms1.8%
prune_old_dataapps/api/tasks.py:3202 ms1.8%
Logger.info<stdlib>/logging/__init__.py:15232 ms1.8%
Logger._log<stdlib>/logging/__init__.py:16682 ms1.8%
Logger.handle<stdlib>/logging/__init__.py:16842 ms1.8%
Logger.callHandlers<stdlib>/logging/__init__.py:17442 ms1.8%
Handler.handle<stdlib>/logging/__init__.py:10302 ms1.8%
StreamHandler.emit<stdlib>/logging/__init__.py:11542 ms1.8%
StorageTest.test_prune_old_dataapps/projects/tests.py:12766 ms7.2%
_SharedTaskProxy.__call__potatoq/app.py:7636 ms7.2%
Task.__call__potatoq/task.py:1896 ms7.2%
prune_old_dataapps/api/tasks.py:318 while ids := list(rows.values_list("id", flat=True)[:batch_size]):3 ms3.6%
QuerySet.__iter__django/db/models/query.py:3903 ms3.6%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms3.6%
FlatValuesListIterable.__iter__django/db/models/query.py:2773 ms3.6%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15733 ms3.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms3.6%
CursorWrapper.executedjango/db/backends/utils.py:793 ms3.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms3.6%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1003 ms3.6%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms3.6%
Cursor.executepsycopg/cursor.py:1133 ms3.6%
Connection.waitpsycopg/connection.py:4953 ms3.6%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms1.8%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.8%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms1.8%
prune_old_dataapps/api/tasks.py:306 .exclude(profile_id__in=list(keep))2 ms1.8%
QuerySet.excludedjango/db/models/query.py:15502 ms1.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15682 ms1.8%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.8%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.8%
Query.build_filterdjango/db/models/sql/query.py:16072 ms1.8%
Query._get_coldjango/db/models/sql/query.py:4512 ms1.8%
prune_old_dataapps/api/tasks.py:307 .update(document=b"", document_size=0)2 ms1.8%
QuerySet.updatedjango/db/models/query.py:13002 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
StorageTest.test_prune_old_dataapps/projects/tests.py:12592 ms1.8%
QuerySet.updatedjango/db/models/query.py:13002 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
StorageTest.test_prune_old_dataapps/projects/tests.py:12662 ms1.8%
ProfilePart.has_documentapps/projects/models.py:5162 ms1.8%
SysMonitor.sysmon_py_startcoverage/sysmon.py:3642 ms1.8%
StorageTest.test_prune_old_dataapps/projects/tests.py:12692 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.8%
QuerySet.getdjango/db/models/query.py:6352 ms1.8%
QuerySet.__len__django/db/models/query.py:3722 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.8%
ModelIterable.__iter__django/db/models/query.py:952 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7952 ms1.8%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.8%
WhereNode.as_sqldjango/db/models/sql/where.py:1512 ms1.8%
StorageTest.test_prune_old_dataapps/projects/tests.py:12712 ms1.8%
QuerySet.existsdjango/db/models/query.py:13372 ms1.8%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.8%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
StorageTest.test_prune_old_dataapps/projects/tests.py:12752 ms1.8%
QuerySet.updatedjango/db/models/query.py:13002 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
StorageTest.test_prune_old_dataapps/projects/tests.py:12772 ms1.8%
QuerySet.existsdjango/db/models/query.py:13372 ms1.8%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.8%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
SimpleTestCase._setup_and_calldjango/test/testcases.py:3713 ms3.6%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()3 ms3.6%
TestCase._fixture_teardowndjango/test/testcases.py:14952 ms1.8%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4832 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
TestCase._fixture_teardowndjango/test/testcases.py:14972 ms1.8%
TestCase._rollback_atomicsdjango/test/testcases.py:14052 ms1.8%
Atomic.__exit__django/db/transaction.py:2832 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.8%
BaseDatabaseWrapper.savepoint_rollbackdjango/db/backends/base/base.py:4132 ms1.8%
BaseDatabaseWrapper._savepoint_rollbackdjango/db/backends/base/base.py:3712 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1002 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.8%
Cursor.executepsycopg/cursor.py:1132 ms1.8%
Connection.waitpsycopg/connection.py:4952 ms1.8%
teardown0.23 ms0.3%
Estimated from 56 samples; phase durations are exact. Frames from pytest and pluggy are shown .

Hot lines in your code

apps/projects/models.py:466
super().save(*args, **kwargs)
Profile.save · Database
8 ms
apps/api/tasks.py:318
while ids := list(rows.values_list("id", flat=True)[:batch_size]):
prune_old_data · Database
5 ms
apps/projects/profiles.py:342
profile = claim_part(part, document)
process_profile_part · Database
3 ms
apps/projects/models.py:242
taken = set(self.filter(project_id=project_id, slug__in=set(new.values())).values_list("slug", flat=True))
TestManager.slugs_for · App code
3 ms
apps/projects/profiles.py:347
ProfilePart.objects.filter(pk=part.pk).update(
process_profile_part · Database
3 ms
apps/projects/profiles.py:479
profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)
finalize_profile · Database
3 ms
apps/projects/profiles.py:483
for part in ProfilePart.objects.filter(profile=profile).defer("document").order_by("index", "id"):
finalize_profile · Database
3 ms
apps/projects/profiles.py:490
rows.filter(part__gte=profile.parts).delete()
finalize_profile · Database
3 ms
apps/projects/profiles.py:492
for duplicate in duplicates:
finalize_profile · Database
3 ms
apps/projects/testing.py:375
profile.refresh_from_db()
store_profile · Database
3 ms

Fixtures

Exact setup time
_template_string_if_invalid_marker function 0.06 ms
_django_set_urlconf function 0.05 ms
_dj_autoclear_mailbox function 0.05 ms
_live_server_helper function 0.05 ms
_django_db_marker function 0.05 ms
_django_clear_site_cache function 0.03 ms
monkeypatch function 0.03 ms

Database

107 queries · 39 ms

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

8×
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"."…
6×
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…
5×
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…
3×
SELECT "projects_testperf"."id" AS "id" FROM "projects_testperf" WHERE "projects_testperf"."date" < %s LIMIT ?
3×
SELECT "projects_testdailystats"."id" AS "id" FROM "projects_testdailystats" WHERE "projects_testdailystats"."day" < %s LIMIT ?

Biggest pieces of work

call test body
apps/projects/tests.py:1245
81 ms
call _post_teardown
django/test/testcases.py:1240
3 ms
teardown pytest internals 0.23 ms

Reliability

5 results · 0 CI failures · 0 local failures

This test hasn't failed recently.

History

Latest 5 results, oldest first in the strip
When Environment Outcome Duration Commit
an hour ago CI github-actions:test passed 85 ms 9caa567 main Profile
an hour ago CI github-actions:test passed 84 ms ec75501 main Profile
8 hours ago CI github-actions:test passed 94 ms d2c12e5 main Profile
8 hours ago CI github-actions:test passed 53 ms 0b902f6 main Profile
8 hours ago CI github-actions:test passed 93 ms 78a4357 main Profile