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

StorageTest::test_pages_work_after_pruning

First seen 7 hours ago in 78a4357
CI github-actions:test 5 runs
Average
112 ms
median 118 ms
max 131 ms
Phases
Setup 0.80 ms Call 111 ms Teardown 0.18 ms
Categories
Database 73 ms App code 0.38 ms Factories 0.38 ms Other (Libraries, Templates, Unsampled, Deep copies, ...) 38 ms

71 database queries per run

Needs 1 KB of memory (max 4 KB)

Duration per run

Where the time goes

Latest run in ci:github-actions:test, 14 minutes ago · open run
Show pytest frames
call117 ms99.2%
StorageTest.test_pages_work_after_pruningapps/projects/tests.py:1285 response = self.client.get(self.project.url("project_test", self.test.slug))73 ms61.8%
Client.getdjango/test/client.py:112473 ms61.8%
RequestFactory.getdjango/test/client.py:47573 ms61.8%
RequestFactory.genericdjango/test/client.py:67173 ms61.8%
Client.requestdjango/test/client.py:108273 ms61.8%
ClientHandler.__call__django/test/client.py:18646 ms39.0%
BaseHandler.get_responsedjango/core/handlers/base.py:14146 ms39.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5546 ms39.0%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13046 ms39.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5546 ms39.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30946 ms39.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5546 ms39.0%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12346 ms39.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5546 ms39.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30944 ms37.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5544 ms37.4%
MiddlewareMixin.__call__django/utils/deprecation.py:30944 ms37.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5544 ms37.4%
MiddlewareMixin.__call__django/utils/deprecation.py:30944 ms37.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5544 ms37.4%
MiddlewareMixin.__call__django/utils/deprecation.py:30944 ms37.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5544 ms37.4%
MiddlewareMixin.__call__django/utils/deprecation.py:30944 ms37.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5544 ms37.4%
MiddlewareMixin.__call__django/utils/deprecation.py:30944 ms37.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5544 ms37.4%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3444 ms37.4%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5544 ms37.4%
BaseHandler._get_responsedjango/core/handlers/base.py:19844 ms37.4%
project_testapps/projects/urls.py:342 return render(request, "project_test.html", context)10 ms8.1%
renderdjango/shortcuts.py:258 ms6.5%
render_to_stringdjango/template/loader.py:628 ms6.5%
Template.renderdjango/template/backends/django.py:1078 ms6.5%
Template.renderdjango/template/base.py:1748 ms6.5%
instrumented_test_renderdjango/test/utils.py:1148 ms6.5%
NodeList.renderdjango/template/base.py:10918 ms6.5%
Node.render_annotateddjango/template/base.py:10528 ms6.5%
ExtendsNode.renderdjango/template/loader_tags.py:1608 ms6.5%
instrumented_test_renderdjango/test/utils.py:1148 ms6.5%
NodeList.renderdjango/template/base.py:10918 ms6.5%
Node.render_annotateddjango/template/base.py:10528 ms6.5%
ExtendsNode.renderdjango/template/loader_tags.py:1608 ms6.5%
instrumented_test_renderdjango/test/utils.py:1148 ms6.5%
NodeList.renderdjango/template/base.py:10918 ms6.5%
Node.render_annotateddjango/template/base.py:10528 ms6.5%
BlockNode.renderdjango/template/loader_tags.py:668 ms6.5%
NodeList.renderdjango/template/base.py:10918 ms6.5%
Node.render_annotateddjango/template/base.py:10528 ms6.5%
BlockNode.renderdjango/template/loader_tags.py:666 ms4.9%
NodeList.renderdjango/template/base.py:10916 ms4.9%
Node.render_annotateddjango/template/base.py:10526 ms4.9%
IfNode.renderdjango/template/defaulttags.py:3336 ms4.9%
NodeList.renderdjango/template/base.py:10916 ms4.9%
Node.render_annotateddjango/template/base.py:10526 ms4.9%
ForNode.renderdjango/template/defaulttags.py:2494 ms3.3%
Node.render_annotateddjango/template/base.py:10522 ms1.6%
IncludeNode.renderdjango/template/loader_tags.py:2112 ms1.6%
Template.renderdjango/template/base.py:1762 ms1.6%
instrumented_test_renderdjango/test/utils.py:1142 ms1.6%
NodeList.renderdjango/template/base.py:10912 ms1.6%
Node.render_annotateddjango/template/base.py:10522 ms1.6%
IfNode.renderdjango/template/defaulttags.py:3332 ms1.6%
NodeList.renderdjango/template/base.py:10912 ms1.6%
Node.render_annotateddjango/template/base.py:10522 ms1.6%
ForNode.renderdjango/template/defaulttags.py:2492 ms1.6%
VariableNode.renderdjango/template/base.py:11562 ms1.6%
IncludeNode.renderdjango/template/loader_tags.py:2112 ms1.6%
Template.renderdjango/template/base.py:1762 ms1.6%
instrumented_test_renderdjango/test/utils.py:1132 ms1.6%
Signal.senddjango/dispatch/dispatcher.py:2092 ms1.6%
store_rendered_templatesdjango/test/client.py:2752 ms1.6%
renderdjango/shortcuts.py:262 ms1.6%
HttpResponse.__init__django/http/response.py:3822 ms1.6%
project_testapps/projects/urls.py:3118 ms6.5%
history_for_testapps/projects/analytics.py:806 for perf in TestPerf.objects.filter(test=test)4 ms3.3%
QuerySet.__iter__django/db/models/query.py:3904 ms3.3%
QuerySet._fetch_alldjango/db/models/query.py:20004 ms3.3%
ModelIterable.__iter__django/db/models/query.py:954 ms3.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.6%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.6%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.6%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.6%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3002 ms1.6%
SQLCompiler.get_related_selectionsdjango/db/models/sql/compiler.py:12662 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
history_for_testapps/projects/analytics.py:819 TestRun.objects.filter(test=test)4 ms3.3%
QuerySet.__iter__django/db/models/query.py:3904 ms3.3%
QuerySet._fetch_alldjango/db/models/query.py:20004 ms3.3%
ModelIterable.__iter__django/db/models/query.py:954 ms3.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16244 ms3.3%
CursorWrapper.executedjango/db/backends/utils.py:794 ms3.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:924 ms3.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
project_testapps/projects/urls.py:2956 ms4.9%
latest_perfapps/projects/analytics.py:846 return perfs.select_related("profile", "environment").order_by("-date").first()6 ms4.9%
QuerySet.firstdjango/db/models/query.py:11456 ms4.9%
QuerySet.__iter__django/db/models/query.py:3906 ms4.9%
QuerySet._fetch_alldjango/db/models/query.py:20006 ms4.9%
ModelIterable.__iter__django/db/models/query.py:956 ms4.9%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16244 ms3.3%
CursorWrapper.executedjango/db/backends/utils.py:794 ms3.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:924 ms3.3%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.6%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.6%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.6%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.6%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3002 ms1.6%
SQLCompiler.get_related_selectionsdjango/db/models/sql/compiler.py:12592 ms1.6%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10292 ms1.6%
project_testapps/projects/urls.py:3126 ms4.9%
flakiness_for_testapps/projects/flakiness.py:326 history = observations_for(test.project, [test.id], since).get(test.id, [])6 ms4.9%
observations_forapps/projects/flakiness.py:165 test_runs = list(test_runs)2 ms1.6%
QuerySet.__iter__django/db/models/query.py:3902 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms1.6%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
observations_forapps/projects/flakiness.py:186 perfs = list(perfs)2 ms1.6%
QuerySet.__iter__django/db/models/query.py:3902 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms1.6%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
observations_forapps/projects/flakiness.py:189 for row in Profile.objects.filter(id__in={row[3] for row in perfs}).values_list(2 ms1.6%
QuerySet.__iter__django/db/models/query.py:3902 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms1.6%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
project_testapps/projects/urls.py:2824 ms3.3%
find_projectapps/projects/urls.py:49 project = get_object_or_404(2 ms1.6%
get_object_or_404django/shortcuts.py:902 ms1.6%
QuerySet.getdjango/db/models/query.py:6352 ms1.6%
QuerySet.__len__django/db/models/query.py:3722 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ModelIterable.__iter__django/db/models/query.py:952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
find_projectapps/projects/urls.py:522 ms1.6%
can_viewapps/projects/urls.py:332 ms1.6%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms1.6%
QuerySet.existsdjango/db/models/query.py:13372 ms1.6%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.6%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms1.6%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms1.6%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms1.6%
project_testapps/projects/urls.py:2864 ms3.3%
shellapps/projects/urls.py:71 return org_shell(request, project.organization if project else None, section) | {2 ms1.6%
org_shellapps/orgs/views.py:40 "org_projects": list(organization.project_set.order_by("name")) if member else [],2 ms1.6%
QuerySet.__iter__django/db/models/query.py:3902 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ModelIterable.__iter__django/db/models/query.py:952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16622 ms1.6%
cursor_iterdjango/db/models/sql/compiler.py:22542 ms1.6%
cursor_iter.<locals>.<lambda>django/db/models/sql/compiler.py:22542 ms1.6%
DatabaseErrorWrapper.__call__.<locals>.innerdjango/db/utils.py:1012 ms1.6%
Cursor.fetchmanypsycopg/cursor.py:2682 ms1.6%
filtersapps/projects/urls.py:80 environments = list(Environment.objects.filter(project=project).order_by("kind", "name"))2 ms1.6%
QuerySet.__iter__django/db/models/query.py:3902 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ModelIterable.__iter__django/db/models/query.py:952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.6%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.6%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.6%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.6%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms1.6%
project_testapps/projects/urls.py:2894 ms3.3%
environment_stats_for_testapps/projects/analytics.py:748 for perf in TestPerf.objects.filter(test=test, date__gte=since).select_related("environment").order_by("date"):4 ms3.3%
QuerySet.__iter__django/db/models/query.py:3904 ms3.3%
QuerySet._fetch_alldjango/db/models/query.py:20004 ms3.3%
ModelIterable.__iter__django/db/models/query.py:954 ms3.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.6%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.6%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.6%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.6%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3002 ms1.6%
SQLCompiler.get_related_selectionsdjango/db/models/sql/compiler.py:12592 ms1.6%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10302 ms1.6%
ForeignKey.get_coldjango/db/models/fields/related.py:12542 ms1.6%
Field.get_coldjango/db/models/fields/__init__.py:5442 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
project_testapps/projects/urls.py:3002 ms1.6%
latest_documentapps/projects/profiles.py:282 ).first()2 ms1.6%
QuerySet.firstdjango/db/models/query.py:11452 ms1.6%
QuerySet.__iter__django/db/models/query.py:3902 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ModelIterable.__iter__django/db/models/query.py:952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.6%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7952 ms1.6%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.6%
WhereNode.as_sqldjango/db/models/sql/where.py:1512 ms1.6%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.6%
RelatedLookupMixin.as_sqldjango/db/models/fields/related_lookups.py:1282 ms1.6%
Exact.as_sqldjango/db/models/lookups.py:4072 ms1.6%
BuiltinLookup.as_sqldjango/db/models/lookups.py:2382 ms1.6%
BuiltinLookup.process_lhsdjango/db/models/lookups.py:2302 ms1.6%
project_testapps/projects/urls.py:3092 ms1.6%
render_call_treeapps/projects/profiles.py:6742 ms1.6%
format_html_joindjango/utils/html.py:1582 ms1.6%
format_html_join.<locals>.<genexpr>django/utils/html.py:1642 ms1.6%
render_call_tree.<locals>.<genexpr>apps/projects/profiles.py:6742 ms1.6%
render_call_tree.<locals>.renderapps/projects/profiles.py:6582 ms1.6%
format_html_joindjango/utils/html.py:1582 ms1.6%
format_html_join.<locals>.<genexpr>django/utils/html.py:1642 ms1.6%
render_call_tree.<locals>.render.<locals>.<genexpr>apps/projects/profiles.py:6582 ms1.6%
render_call_tree.<locals>.renderapps/projects/profiles.py:6452 ms1.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3112 ms1.6%
SessionMiddleware.process_responsedjango/contrib/sessions/middleware.py:592 ms1.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms1.6%
Model.savedjango/db/models/base.py:8742 ms1.6%
Model.save_basedjango/db/models/base.py:9662 ms1.6%
Model._save_tabledjango/db/models/base.py:11102 ms1.6%
Model._do_updatedjango/db/models/base.py:12112 ms1.6%
QuerySet._updatedjango/db/models/query.py:13272 ms1.6%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.6%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
ClientHandler.__call__django/test/client.py:17327 ms22.8%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6227 ms22.8%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10427 ms22.8%
WhiteNoise.add_fileswhitenoise/base.py:10827 ms22.8%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12019 ms16.3%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13119 ms16.3%
WhiteNoise.get_static_filewhitenoise/base.py:20812 ms9.8%
StaticFile.__init__whitenoise/responders.py:724 ms3.3%
StaticFile.get_file_statswhitenoise/responders.py:1614 ms3.3%
__init____init__:-12 ms1.6%
FileEntry.__init__whitenoise/responders.py:2632 ms1.6%
FileEntry.stat_regular_filewhitenoise/responders.py:2762 ms1.6%
<GC>~2 ms1.6%
StaticFile.__init__whitenoise/responders.py:772 ms1.6%
StaticFile.get_alternativeswhitenoise/responders.py:2002 ms1.6%
StaticFile.__init__whitenoise/responders.py:742 ms1.6%
parsedate<stdlib>/email/_parseaddr.py:1852 ms1.6%
StaticFile.__init__whitenoise/responders.py:732 ms1.6%
StaticFile.get_headerswhitenoise/responders.py:1762 ms1.6%
formatdate<stdlib>/email/utils.py:2662 ms1.6%
WhiteNoise.get_static_filewhitenoise/base.py:2034 ms3.3%
WhiteNoise.add_cache_headerswhitenoise/base.py:2244 ms3.3%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1764 ms3.3%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1974 ms3.3%
URLMixin.urldebug_toolbar/panels/staticfiles.py:202 ms1.6%
WhiteNoise.get_static_filewhitenoise/base.py:2022 ms1.6%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1158 ms6.5%
scantreewhitenoise/base.py:2628 ms6.5%
scantreewhitenoise/base.py:2626 ms4.9%
scantreewhitenoise/base.py:2644 ms3.3%
scantreewhitenoise/base.py:2622 ms1.6%
scantreewhitenoise/base.py:2622 ms1.6%
scantreewhitenoise/base.py:2622 ms1.6%
scantreewhitenoise/base.py:2642 ms1.6%
scantreewhitenoise/base.py:2642 ms1.6%
<GC>~2 ms1.6%
StorageTest.test_pages_work_after_pruningapps/projects/tests.py:128823 ms19.5%
Client.getdjango/test/client.py:112423 ms19.5%
RequestFactory.getdjango/test/client.py:47523 ms19.5%
RequestFactory.genericdjango/test/client.py:67123 ms19.5%
Client.requestdjango/test/client.py:108223 ms19.5%
ClientHandler.__call__django/test/client.py:18623 ms19.5%
BaseHandler.get_responsedjango/core/handlers/base.py:14123 ms19.5%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms19.5%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13023 ms19.5%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms19.5%
MiddlewareMixin.__call__django/utils/deprecation.py:30923 ms19.5%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms19.5%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12323 ms19.5%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms19.5%
MiddlewareMixin.__call__django/utils/deprecation.py:30921 ms17.9%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5521 ms17.9%
MiddlewareMixin.__call__django/utils/deprecation.py:30921 ms17.9%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5521 ms17.9%
MiddlewareMixin.__call__django/utils/deprecation.py:30921 ms17.9%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5521 ms17.9%
MiddlewareMixin.__call__django/utils/deprecation.py:30921 ms17.9%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5521 ms17.9%
MiddlewareMixin.__call__django/utils/deprecation.py:30921 ms17.9%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5521 ms17.9%
MiddlewareMixin.__call__django/utils/deprecation.py:30921 ms17.9%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5521 ms17.9%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3421 ms17.9%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5521 ms17.9%
BaseHandler._get_responsedjango/core/handlers/base.py:19821 ms17.9%
project_profileapps/projects/urls.py:5028 ms6.5%
shellapps/projects/urls.py:71 return org_shell(request, project.organization if project else None, section) | {6 ms4.9%
org_shellapps/orgs/views.py:33 organizations = [] if user.is_anonymous else list(Organization.objects.filter(membership__user=user))2 ms1.6%
QuerySet.__iter__django/db/models/query.py:3902 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ModelIterable.__iter__django/db/models/query.py:952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
org_shellapps/orgs/views.py:40 "org_projects": list(organization.project_set.order_by("name")) if member else [],2 ms1.6%
QuerySet.__iter__django/db/models/query.py:3902 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ModelIterable.__iter__django/db/models/query.py:952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
org_shellapps/orgs/views.py:422 ms1.6%
Organization.is_ownerapps/orgs/models.py:65 return user.is_authenticated and self.membership_set.filter(user=user, role=Membership.Role.OWNER).exists()2 ms1.6%
QuerySet.existsdjango/db/models/query.py:13372 ms1.6%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.6%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
shellapps/projects/urls.py:732 ms1.6%
can_manageapps/projects/urls.py:442 ms1.6%
can_manage_projectapps/projects/urls.py:40 return user.is_superuser or project.organization.membership_set.filter(user=user).exists()2 ms1.6%
QuerySet.existsdjango/db/models/query.py:13372 ms1.6%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.6%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
project_profileapps/projects/urls.py:4744 ms3.3%
find_projectapps/projects/urls.py:49 project = get_object_or_404(2 ms1.6%
get_object_or_404django/shortcuts.py:902 ms1.6%
QuerySet.getdjango/db/models/query.py:6352 ms1.6%
QuerySet.__len__django/db/models/query.py:3722 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ModelIterable.__iter__django/db/models/query.py:952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
find_projectapps/projects/urls.py:522 ms1.6%
can_viewapps/projects/urls.py:332 ms1.6%
can_manage_projectapps/projects/urls.py:38 if not user.is_authenticated:2 ms1.6%
new_method_proxy.<locals>.innerdjango/utils/functional.py:2512 ms1.6%
SimpleLazyObject._setupdjango/utils/functional.py:4042 ms1.6%
AuthenticationMiddleware.process_request.<locals>.<lambda>django/contrib/auth/middleware.py:402 ms1.6%
get_userdjango/contrib/auth/middleware.py:202 ms1.6%
get_userdjango/contrib/auth/__init__.py:3252 ms1.6%
AbstractBaseUser.get_session_auth_hashdjango/contrib/auth/base_user.py:1362 ms1.6%
AbstractBaseUser._get_session_auth_hashdjango/contrib/auth/base_user.py:1442 ms1.6%
salted_hmacdjango/utils/crypto.py:452 ms1.6%
project_profileapps/projects/urls.py:490 for perf in perfs:4 ms3.3%
Sequence.__iter__<frozen _collections_abc>:10204 ms3.3%
Page.__getitem__django/core/paginator.py:3304 ms3.3%
QuerySet.__iter__django/db/models/query.py:3904 ms3.3%
QuerySet._fetch_alldjango/db/models/query.py:20004 ms3.3%
ModelIterable.__iter__django/db/models/query.py:954 ms3.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.6%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.6%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.6%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.6%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3002 ms1.6%
SQLCompiler.get_related_selectionsdjango/db/models/sql/compiler.py:12662 ms1.6%
SQLCompiler.get_related_selectionsdjango/db/models/sql/compiler.py:12812 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
project_profileapps/projects/urls.py:498 return render(4 ms3.3%
renderdjango/shortcuts.py:254 ms3.3%
render_to_stringdjango/template/loader.py:624 ms3.3%
Template.renderdjango/template/backends/django.py:1074 ms3.3%
Template.renderdjango/template/base.py:1744 ms3.3%
instrumented_test_renderdjango/test/utils.py:1144 ms3.3%
NodeList.renderdjango/template/base.py:10914 ms3.3%
Node.render_annotateddjango/template/base.py:10524 ms3.3%
ExtendsNode.renderdjango/template/loader_tags.py:1604 ms3.3%
instrumented_test_renderdjango/test/utils.py:1144 ms3.3%
NodeList.renderdjango/template/base.py:10914 ms3.3%
Node.render_annotateddjango/template/base.py:10524 ms3.3%
ExtendsNode.renderdjango/template/loader_tags.py:1604 ms3.3%
instrumented_test_renderdjango/test/utils.py:1144 ms3.3%
NodeList.renderdjango/template/base.py:10914 ms3.3%
Node.render_annotateddjango/template/base.py:10524 ms3.3%
BlockNode.renderdjango/template/loader_tags.py:664 ms3.3%
NodeList.renderdjango/template/base.py:10914 ms3.3%
Node.render_annotateddjango/template/base.py:10524 ms3.3%
BlockNode.renderdjango/template/loader_tags.py:664 ms3.3%
NodeList.renderdjango/template/base.py:10914 ms3.3%
Node.render_annotateddjango/template/base.py:10524 ms3.3%
IfNode.renderdjango/template/defaulttags.py:3334 ms3.3%
NodeList.renderdjango/template/base.py:10914 ms3.3%
Node.render_annotateddjango/template/base.py:10524 ms3.3%
IfNode.renderdjango/template/defaulttags.py:3332 ms1.6%
NodeList.renderdjango/template/base.py:10912 ms1.6%
Node.render_annotateddjango/template/base.py:10522 ms1.6%
ForNode.renderdjango/template/defaulttags.py:2492 ms1.6%
Node.render_annotateddjango/template/base.py:10522 ms1.6%
IncludeNode.renderdjango/template/loader_tags.py:2112 ms1.6%
Template.renderdjango/template/base.py:1762 ms1.6%
instrumented_test_renderdjango/test/utils.py:1142 ms1.6%
NodeList.renderdjango/template/base.py:10912 ms1.6%
Node.render_annotateddjango/template/base.py:10522 ms1.6%
VariableNode.renderdjango/template/base.py:11562 ms1.6%
IfNode.renderdjango/template/defaulttags.py:3322 ms1.6%
QuerySet.__bool__django/db/models/query.py:4042 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ModelIterable.__iter__django/db/models/query.py:952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
project_profileapps/projects/urls.py:477 profile = get_object_or_404(2 ms1.6%
get_object_or_404django/shortcuts.py:902 ms1.6%
QuerySet.getdjango/db/models/query.py:6352 ms1.6%
QuerySet.__len__django/db/models/query.py:3722 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
ModelIterable.__iter__django/db/models/query.py:952 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
MiddlewareMixin.__call__django/utils/deprecation.py:3112 ms1.6%
SessionMiddleware.process_responsedjango/contrib/sessions/middleware.py:592 ms1.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1272 ms1.6%
Model.savedjango/db/models/base.py:8742 ms1.6%
Model.save_basedjango/db/models/base.py:9662 ms1.6%
Model._save_tabledjango/db/models/base.py:11102 ms1.6%
Model._do_updatedjango/db/models/base.py:12112 ms1.6%
QuerySet._updatedjango/db/models/query.py:13272 ms1.6%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.6%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
StorageTest.test_pages_work_after_pruningapps/projects/tests.py:12808 ms6.5%
_SharedTaskProxy.__call__potatoq/app.py:7638 ms6.5%
Task.__call__potatoq/task.py:1898 ms6.5%
prune_old_dataapps/api/tasks.py:318 while ids := list(rows.values_list("id", flat=True)[:batch_size]):4 ms3.3%
QuerySet.__iter__django/db/models/query.py:3904 ms3.3%
QuerySet._fetch_alldjango/db/models/query.py:20004 ms3.3%
FlatValuesListIterable.__iter__django/db/models/query.py:2774 ms3.3%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15734 ms3.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16244 ms3.3%
CursorWrapper.executedjango/db/backends/utils.py:794 ms3.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:924 ms3.3%
CursorWrapper._executedjango/db/backends/utils.py:1054 ms3.3%
Cursor.executepsycopg/cursor.py:1134 ms3.3%
Connection.waitpsycopg/connection.py:4954 ms3.3%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms1.6%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms1.6%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms1.6%
prune_old_dataapps/api/tasks.py:306 .exclude(profile_id__in=list(keep))2 ms1.6%
QuerySet.__iter__django/db/models/query.py:3902 ms1.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.6%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms1.6%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
prune_old_dataapps/api/tasks.py:307 .update(document=b"", document_size=0)2 ms1.6%
QuerySet.updatedjango/db/models/query.py:13002 ms1.6%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
StorageTest.test_pages_work_after_pruningapps/projects/tests.py:1284 self.client.force_login(user)8 ms6.5%
ClientMixin.force_logindjango/test/client.py:8558 ms6.5%
ClientMixin._logindjango/test/client.py:8814 ms3.3%
logindjango/contrib/auth/__init__.py:1874 ms3.3%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4342 ms1.6%
SessionStore.createdjango/contrib/sessions/backends/db.py:742 ms1.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms1.6%
Atomic.__enter__django/db/transaction.py:2112 ms1.6%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.6%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms1.6%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3672 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
SessionBase.cycle_keydjango/contrib/sessions/backends/base.py:4372 ms1.6%
SessionStore.deletedjango/contrib/sessions/backends/db.py:1752 ms1.6%
Model.deletedjango/db/models/base.py:12982 ms1.6%
Collector.deletedjango/db/models/deletion.py:4522 ms1.6%
DeleteQuery.delete_batchdjango/db/models/sql/subqueries.py:432 ms1.6%
DeleteQuery.do_querydjango/db/models/sql/subqueries.py:252 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
ClientMixin._logindjango/test/client.py:8762 ms1.6%
ClientMixin.sessiondjango/test/client.py:8122 ms1.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1212 ms1.6%
SessionStore.createdjango/contrib/sessions/backends/db.py:702 ms1.6%
SessionBase._get_new_session_keydjango/contrib/sessions/backends/base.py:1982 ms1.6%
SessionStore.existsdjango/contrib/sessions/backends/db.py:632 ms1.6%
QuerySet.existsdjango/db/models/query.py:13372 ms1.6%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.6%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
ClientMixin._logindjango/test/client.py:8832 ms1.6%
SessionStore.savedjango/contrib/sessions/backends/db.py:1262 ms1.6%
Atomic.__enter__django/db/transaction.py:2112 ms1.6%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.6%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4002 ms1.6%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3662 ms1.6%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.6%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3202 ms1.6%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2982 ms1.6%
StorageTest.test_pages_work_after_pruningapps/projects/tests.py:12822 ms1.6%
makemodel_bakery/baker.py:1472 ms1.6%
Baker.makemodel_bakery/baker.py:4062 ms1.6%
Baker._makemodel_bakery/baker.py:4822 ms1.6%
Baker.instancemodel_bakery/baker.py:5172 ms1.6%
StorageTest.test_pages_work_after_pruningapps/projects/tests.py:12832 ms1.6%
add_memberapps/projects/testing.py:76 membership, _ = Membership.objects.get_or_create(2 ms1.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.6%
QuerySet.get_or_createdjango/db/models/query.py:9922 ms1.6%
Atomic.__exit__django/db/transaction.py:2472 ms1.6%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.6%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms1.6%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()2 ms1.6%
TestCase._fixture_teardowndjango/test/testcases.py:14952 ms1.6%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4832 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.6%
Cursor.executepsycopg/cursor.py:1132 ms1.6%
Connection.waitpsycopg/connection.py:4952 ms1.6%
Estimated from 61 samples; phase durations are exact. Frames from pytest and pluggy are hidden .

Hot lines in your code

apps/projects/tests.py:1285
response = self.client.get(self.project.url("project_test", self.test.slug))
StorageTest.test_pages_work_after_pruning · Libraries
29 ms
apps/projects/urls.py:342
return render(request, "project_test.html", context)
project_test · Templates
10 ms
apps/projects/tests.py:1284
self.client.force_login(user)
StorageTest.test_pages_work_after_pruning · Database
8 ms
apps/projects/analytics.py:846
return perfs.select_related("profile", "environment").order_by("-date").first()
latest_perf · Database
6 ms
apps/api/tasks.py:318
while ids := list(rows.values_list("id", flat=True)[:batch_size]):
prune_old_data · Database
4 ms
apps/projects/urls.py:49
project = get_object_or_404(
find_project · Database
4 ms
apps/projects/urls.py:40
return user.is_superuser or project.organization.membership_set.filter(user=user).exists()
can_manage_project · Database
4 ms
apps/orgs/views.py:40
"org_projects": list(organization.project_set.order_by("name")) if member else [],
org_shell · Database
4 ms
apps/projects/analytics.py:748
for perf in TestPerf.objects.filter(test=test, date__gte=since).select_related("environment").order_by("date"):
environment_stats_for_test · Database
4 ms
apps/projects/analytics.py:806
for perf in TestPerf.objects.filter(test=test)
history_for_test · Database
4 ms

Fixtures

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

Database

71 queries · 32 ms

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

5×
SELECT "projects_testperf"."id", "projects_testperf"."project_id", "projects_testperf"."test_id", "projects_testperf"."profile_id", "projects_testperf"."part", "projects_testperf"."environment_id", "projects_testperf"."outcome", "projects_testperf"."duration", "projects_testperf"."setup", "projects…
4×
SELECT %s AS "a" FROM "orgs_membership" WHERE ("orgs_membership"."organization_id" = %s AND "orgs_membership"."user_id" = %s) LIMIT ?
3×
SELECT "django_session"."session_key", "django_session"."session_data", "django_session"."expire_date" FROM "django_session" WHERE ("django_session"."expire_date" > %s AND "django_session"."session_key" = %s) LIMIT ?
3×
UPDATE "django_session" SET "session_data" = %s, "expire_date" = %s WHERE "django_session"."session_key" = %s
3×
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…

Biggest pieces of work

call test body
apps/projects/tests.py:1285
115 ms
call _post_teardown
django/test/testcases.py:1240
2 ms

Reliability

5 results · 0 CI failures · 0 local failures

This test hasn't failed recently.

History

Latest 5 results, oldest first in the strip
When Environment Outcome Duration Commit
14 minutes ago CI github-actions:test passed 118 ms 9caa567 main Profile
39 minutes ago CI github-actions:test passed 116 ms ec75501 main Profile
7 hours ago CI github-actions:test passed 131 ms d2c12e5 main Profile
7 hours ago CI github-actions:test passed 70 ms 0b902f6 main Profile
7 hours ago CI github-actions:test passed 123 ms 78a4357 main Profile