Tests / apps/api/tests.py
ProfileUploadTest::test_a_changed_part_replaces_the_old_one
First seen 3 weeks ago in 78a4357
CI
github-actions:test
12 runs
Average
143 ms
median 155 ms
max 188 ms
max 188 ms
Phases
Setup 13 ms
Call 130 ms
Teardown 0.18 ms
Categories
Database 105 ms
App code 3 ms
Factories 0.49 ms
Test code 0.31 ms
Other (Libraries, Unsampled, Serialization, pytest, ...) 34 ms
113 database queries per run
Needs 36 KB of memory (max 116 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 16 hours ago ·
open run
setup14 ms9.1%
TestCase.setUpClassdjango/test/testcases.py:1423 cls.cls_atomics = cls._enter_atomics()8 ms5.4%
TestCase._enter_atomicsdjango/test/testcases.py:13968 ms5.4%
Atomic.__enter__django/db/transaction.py:1988 ms5.4%
BaseDatabaseWrapper.get_autocommitdjango/db/backends/base/base.py:4548 ms5.4%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:3038 ms5.4%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms5.4%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:2798 ms5.4%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms5.4%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2568 ms5.4%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms5.4%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:3338 ms5.4%
Connection.connectpsycopg/connection.py:1096 ms4.2%
wait_connpsycopg/waiting.py:1414 ms2.4%
EpollSelector.select<stdlib>/selectors.py:4524 ms2.4%
wait_connpsycopg/waiting.py:1453 ms1.8%
BaseConnection._connect_genpsycopg/_connection_base.py:4393 ms1.8%
Connection.connectpsycopg/connection.py:1002 ms1.2%
conninfo_attemptspsycopg/_conninfo_attempts.py:452 ms1.2%
_resolve_hostnamespsycopg/_conninfo_attempts.py:1022 ms1.2%
getaddrinfo<stdlib>/socket.py:9982 ms1.2%
TestCase.setUpClassdjango/test/testcases.py:1439 cls.setUpTestData()5 ms3.0%
ProfileUploadTest.setUpTestDataapps/api/tests.py:480 cls.project = baker.make("projects.Project", secrettokens_set__token=cls.secret_token)5 ms3.0%
makemodel_bakery/baker.py:1475 ms3.0%
Baker.makemodel_bakery/baker.py:4065 ms3.0%
Baker._makemodel_bakery/baker.py:4713 ms1.8%
Baker.generate_valuemodel_bakery/baker.py:8003 ms1.8%
gen_relatedmodel_bakery/random_gen.py:2743 ms1.8%
makemodel_bakery/baker.py:1473 ms1.8%
Baker.makemodel_bakery/baker.py:4063 ms1.8%
Baker._makemodel_bakery/baker.py:4823 ms1.8%
Baker.instancemodel_bakery/baker.py:5353 ms1.8%
Model.savedjango/db/models/base.py:8743 ms1.8%
Model.save_basedjango/db/models/base.py:9663 ms1.8%
Model._save_tabledjango/db/models/base.py:11673 ms1.8%
Model._do_insertdjango/db/models/base.py:12183 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms1.8%
QuerySet._insertdjango/db/models/query.py:19183 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19253 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:793 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.2%
Cursor.executepsycopg/cursor.py:1132 ms1.2%
Connection.waitpsycopg/connection.py:4952 ms1.2%
BaseCursor._execute_genpsycopg/_cursor_base.py:2042 ms1.2%
BaseCursor._start_querypsycopg/_cursor_base.py:3872 ms1.2%
BaseConnection._start_querypsycopg/_connection_base.py:5532 ms1.2%
BaseConnection._exec_commandpsycopg/_connection_base.py:4742 ms1.2%
Baker._makemodel_bakery/baker.py:4820.92 ms0.6%
Baker.instancemodel_bakery/baker.py:5350.92 ms0.6%
Model.savedjango/db/models/base.py:8740.92 ms0.6%
Model.save_basedjango/db/models/base.py:9660.92 ms0.6%
Model._save_tabledjango/db/models/base.py:11670.92 ms0.6%
Model._do_insertdjango/db/models/base.py:12180.92 ms0.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:870.92 ms0.6%
QuerySet._insertdjango/db/models/query.py:19180.92 ms0.6%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19250.92 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:790.92 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:920.92 ms0.6%
CursorWrapper._executedjango/db/backends/utils.py:1050.92 ms0.6%
Cursor.executepsycopg/cursor.py:1130.92 ms0.6%
Connection.waitpsycopg/connection.py:4950.92 ms0.6%
Baker._makemodel_bakery/baker.py:4900.92 ms0.6%
Baker.create_by_related_namemodel_bakery/baker.py:5600.92 ms0.6%
makemodel_bakery/baker.py:1470.92 ms0.6%
Baker.makemodel_bakery/baker.py:4060.92 ms0.6%
Baker._makemodel_bakery/baker.py:4820.92 ms0.6%
Baker.instancemodel_bakery/baker.py:5350.92 ms0.6%
Model.savedjango/db/models/base.py:8740.92 ms0.6%
Model.save_basedjango/db/models/base.py:9660.92 ms0.6%
Model._save_tabledjango/db/models/base.py:11670.92 ms0.6%
Model._do_insertdjango/db/models/base.py:12180.92 ms0.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:870.92 ms0.6%
QuerySet._insertdjango/db/models/query.py:19180.92 ms0.6%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19250.92 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:790.92 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:920.92 ms0.6%
CursorWrapper._executedjango/db/backends/utils.py:1050.92 ms0.6%
Cursor.executepsycopg/cursor.py:1130.92 ms0.6%
Connection.waitpsycopg/connection.py:4950.92 ms0.6%
BaseCursor._execute_genpsycopg/_cursor_base.py:2060.92 ms0.6%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2860.92 ms0.6%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:780.92 ms0.6%
call139 ms90.8%
ProfileUploadTest.test_a_changed_part_replaces_the_old_oneapps/api/tests.py:869 self.upload(document)83 ms54.5%
ProfileUploadTest.uploadapps/api/tests.py:487 response = self.client.post(44 ms28.9%
Client.postdjango/test/client.py:115344 ms28.9%
RequestFactory.postdjango/test/client.py:49944 ms28.9%
RequestFactory.genericdjango/test/client.py:67144 ms28.9%
Client.requestdjango/test/client.py:108244 ms28.9%
ClientHandler.__call__django/test/client.py:18623 ms15.0%
BaseHandler.get_responsedjango/core/handlers/base.py:14123 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13023 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30923 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12323 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30923 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30923 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30923 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30923 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30923 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
MiddlewareMixin.__call__django/utils/deprecation.py:30923 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3423 ms15.0%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5523 ms15.0%
BaseHandler._get_responsedjango/core/handlers/base.py:19823 ms15.0%
csrf_exempt.<locals>._view_wrapperdjango/views/decorators/csrf.py:6523 ms15.0%
jsonify_errors.<locals>.wrapped_viewapps/api/urls.py:3723 ms15.0%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:6423 ms15.0%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:7523 ms15.0%
profile_uploadapps/api/urls.py:15020 ms12.8%
get_or_create_numberedapps/projects/models.py:2115 ms9.6%
next_numberapps/projects/models.py:35 return (model.objects.filter(project_id=project_id).aggregate(last=models.Max("number"))["last"] or 0) + 115 ms9.6%
QuerySet.aggregatedjango/db/models/query.py:59413 ms8.5%
Query.get_aggregationdjango/db/models/sql/query.py:63311 ms7.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16248 ms5.3%
CursorWrapper.executedjango/db/backends/utils.py:798 ms5.3%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:928 ms5.3%
CursorWrapper._executedjango/db/backends/utils.py:1058 ms5.3%
Cursor.executepsycopg/cursor.py:1138 ms5.3%
Connection.waitpsycopg/connection.py:4958 ms5.3%
BaseCursor._execute_genpsycopg/_cursor_base.py:2068 ms5.3%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2868 ms5.3%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:788 ms5.3%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.1%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7892 ms1.1%
SQLCompiler.get_distinctdjango/db/models/sql/compiler.py:10432 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16222 ms1.1%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.1%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3202 ms1.1%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2982 ms1.1%
Query.chaindjango/db/models/sql/query.py:4332 ms1.1%
Query.clonedjango/db/models/sql/query.py:3992 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.filterdjango/db/models/query.py:15422 ms1.1%
QuerySet._filter_or_excludedjango/db/models/query.py:15602 ms1.1%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15702 ms1.1%
Query.add_qdjango/db/models/sql/query.py:16712 ms1.1%
Query._add_qdjango/db/models/sql/query.py:17032 ms1.1%
get_or_create_numberedapps/projects/models.py:18 existing = model.objects.filter(project=project, **lookup).first()3 ms2.1%
QuerySet.firstdjango/db/models/query.py:11453 ms2.1%
QuerySet.__iter__django/db/models/query.py:3903 ms2.1%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms2.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
ModelIterable.__iter__django/db/models/query.py:1272 ms1.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15772 ms1.1%
get_or_create_numberedapps/projects/models.py:24 return model.objects.create(project=project, number=number, **lookup, **(defaults or {})), True2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.createdjango/db/models/query.py:6692 ms1.1%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms1.1%
Model.savedjango/db/models/base.py:8742 ms1.1%
Model.save_basedjango/db/models/base.py:9662 ms1.1%
Model._save_tabledjango/db/models/base.py:11672 ms1.1%
Model._do_insertdjango/db/models/base.py:12182 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
profile_uploadapps/api/urls.py:152 part = ProfilePart.objects.filter(profile=profile, index=index).order_by("-id").first()2 ms1.1%
QuerySet.firstdjango/db/models/query.py:11452 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.1%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.1%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:862 ms1.1%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:752 ms1.1%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:3172 ms1.1%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5742 ms1.1%
profile_uploadapps/api/urls.py:154 part = ProfilePart.objects.create(2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.createdjango/db/models/query.py:6692 ms1.1%
Model.savedjango/db/models/base.py:8742 ms1.1%
Model.save_basedjango/db/models/base.py:9662 ms1.1%
Model._save_tabledjango/db/models/base.py:11672 ms1.1%
Model._do_insertdjango/db/models/base.py:12182 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
ClientHandler.__call__django/test/client.py:17321 ms13.9%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6221 ms13.9%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10421 ms13.9%
WhiteNoise.add_fileswhitenoise/base.py:10821 ms13.9%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12018 ms11.8%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13118 ms11.8%
WhiteNoise.get_static_filewhitenoise/base.py:20815 ms9.6%
StaticFile.__init__whitenoise/responders.py:737 ms4.3%
StaticFile.get_headerswhitenoise/responders.py:1783 ms2.1%
parsedate<stdlib>/email/_parseaddr.py:1853 ms2.1%
parsedate_tz<stdlib>/email/_parseaddr.py:502 ms1.1%
_parsedate_tz<stdlib>/email/_parseaddr.py:1622 ms1.1%
StaticFile.get_headerswhitenoise/responders.py:1702 ms1.1%
StaticFile.get_headerswhitenoise/responders.py:1762 ms1.1%
formatdate<stdlib>/email/utils.py:2662 ms1.1%
StaticFile.__init__whitenoise/responders.py:743 ms2.1%
parsedate<stdlib>/email/_parseaddr.py:1852 ms1.1%
StaticFile.__init__whitenoise/responders.py:772 ms1.1%
StaticFile.get_alternativeswhitenoise/responders.py:2002 ms1.1%
StaticFile.__init__whitenoise/responders.py:722 ms1.1%
StaticFile.get_file_statswhitenoise/responders.py:1572 ms1.1%
WhiteNoise.get_static_filewhitenoise/base.py:2022 ms1.1%
WhiteNoise.add_mime_headerswhitenoise/base.py:2212 ms1.1%
Headers.add_header<stdlib>/wsgiref/headers.py:1852 ms1.1%
WhiteNoise.get_static_filewhitenoise/base.py:2032 ms1.1%
WhiteNoise.add_cache_headerswhitenoise/base.py:2242 ms1.1%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1762 ms1.1%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1972 ms1.1%
URLMixin.urldebug_toolbar/panels/staticfiles.py:202 ms1.1%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1153 ms2.1%
scantreewhitenoise/base.py:2602 ms1.1%
scantreewhitenoise/base.py:2622 ms1.1%
scantreewhitenoise/base.py:2622 ms1.1%
scantreewhitenoise/base.py:2642 ms1.1%
ProfileUploadTest.uploadapps/api/tests.py:49539 ms25.6%
_SharedTaskProxy.__call__potatoq/app.py:76339 ms25.6%
Task.__call__potatoq/task.py:18939 ms25.6%
process_profileapps/api/tasks.py:23928 ms18.2%
process_profile_partapps/projects/profiles.py:363 profile = claim_part(part, document)10 ms6.4%
claim_partapps/projects/profiles.py:404 commit, _ = Commit.objects.get_or_create(3 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms2.1%
QuerySet.get_or_createdjango/db/models/query.py:9872 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
QuerySet.get_or_createdjango/db/models/query.py:9942 ms1.1%
QuerySet.createdjango/db/models/query.py:6692 ms1.1%
Model.savedjango/db/models/base.py:8742 ms1.1%
Model.save_basedjango/db/models/base.py:9662 ms1.1%
Model._save_tabledjango/db/models/base.py:11672 ms1.1%
Model._do_insertdjango/db/models/base.py:12182 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
claim_partapps/projects/profiles.py:397 project = profile.project2 ms1.1%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2572 ms1.1%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2222 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
claim_partapps/projects/profiles.py:3992 ms1.1%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.get_or_createdjango/db/models/query.py:9872 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
claim_partapps/projects/profiles.py:4672 ms1.1%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms1.1%
Model.savedjango/db/models/base.py:8742 ms1.1%
Model.save_basedjango/db/models/base.py:9662 ms1.1%
Model._save_tabledjango/db/models/base.py:11102 ms1.1%
Model._do_updatedjango/db/models/base.py:12112 ms1.1%
QuerySet._updatedjango/db/models/query.py:13272 ms1.1%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.1%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.1%
SQLUpdateCompiler.as_sqldjango/db/models/sql/compiler.py:20882 ms1.1%
SQLCompiler.compiledjango/db/models/sql/compiler.py:5782 ms1.1%
WhereNode.as_sqldjango/db/models/sql/where.py:1512 ms1.1%
Atomic.__exit__django/db/transaction.py:2472 ms1.1%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms1.1%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4312 ms1.1%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3752 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1032 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms1.1%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms1.1%
process_profile_partapps/projects/profiles.py:3657 ms4.3%
upsert_testsapps/projects/profiles.py:4727 ms4.3%
TestManager.upsertapps/projects/models.py:2293 ms2.1%
TestManager.slugs_forapps/projects/models.py:240 existing = dict(self.filter(project_id=project_id, name__in=names).values_list("name", "slug"))2 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms1.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
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.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms1.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
TestManager.upsertapps/projects/models.py:230 self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms1.1%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
TestManager.upsertapps/projects/models.py:236 return {test.name: test for test in self.filter(project=project, name__in=names)}2 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
process_profile_partapps/projects/profiles.py:3675 ms3.2%
write_snapshotsapps/projects/profiles.py:334 cursor.executemany(SNAPSHOT_UPSERT, batch)3 ms2.1%
CursorWrapper.executemanydjango/db/backends/utils.py:843 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms2.1%
CursorWrapper._executemanydjango/db/backends/utils.py:1143 ms2.1%
Cursor.executemanypsycopg/cursor.py:1382 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
BaseCursor._executemany_gen_pipelinepsycopg/_cursor_base.py:2322 ms1.1%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.1%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms1.1%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms1.1%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms1.1%
Cursor.executemanypsycopg/cursor.py:1372 ms1.1%
Connection._pipeline_nolockpsycopg/connection.py:4722 ms1.1%
Pipeline.__exit__psycopg/_pipeline.py:732 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
write_snapshotsapps/projects/profiles.py:3332 ms1.1%
write_snapshots.<locals>.<genexpr>apps/projects/profiles.py:3312 ms1.1%
write_snapshots.<locals>.rowapps/projects/profiles.py:3262 ms1.1%
segments_ofapps/projects/profiles.py:1992 ms1.1%
process_profile_partapps/projects/profiles.py:3663 ms2.1%
write_perfsapps/projects/profiles.py:479 TestPerf.objects.bulk_create(3 ms2.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms2.1%
QuerySet.bulk_createdjango/db/models/query.py:8333 ms2.1%
QuerySet._batched_insertdjango/db/models/query.py:19563 ms2.1%
QuerySet._insertdjango/db/models/query.py:19183 ms2.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19253 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:793 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms2.1%
Cursor.executepsycopg/cursor.py:1133 ms2.1%
Connection.waitpsycopg/connection.py:4953 ms2.1%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms1.1%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.1%
PostgresClientQuery.convertpsycopg/_queries.py:2842 ms1.1%
_query2pg_client_nocachepsycopg/_queries.py:3292 ms1.1%
_split_querypsycopg/_queries.py:4432 ms1.1%
<lambda><string>:12 ms1.1%
<GC>~2 ms1.1%
process_profile_partapps/projects/profiles.py:356 part = ProfilePart.objects.filter(pk=part.pk).first()2 ms1.1%
QuerySet.firstdjango/db/models/query.py:11452 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16222 ms1.1%
process_profile_partapps/projects/profiles.py:359 or ProfilePart.objects.filter(profile_id=part.profile_id, index=part.index, id__gt=part.id).exists()2 ms1.1%
QuerySet.existsdjango/db/models/query.py:13372 ms1.1%
Query.has_resultsdjango/db/models/sql/query.py:6812 ms1.1%
SQLCompiler.has_resultsdjango/db/models/sql/compiler.py:15922 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms1.1%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.1%
PostgresClientQuery.convertpsycopg/_queries.py:2842 ms1.1%
_query2pg_client_nocachepsycopg/_queries.py:3292 ms1.1%
_split_querypsycopg/_queries.py:4052 ms1.1%
process_profileapps/api/tasks.py:25310 ms6.4%
_SharedTaskProxy.__call__potatoq/app.py:76310 ms6.4%
Task.__call__potatoq/task.py:18910 ms6.4%
finalize_profile_partsapps/api/tasks.py:2598 ms5.3%
finalize_profileapps/projects/profiles.py:5173 ms2.1%
add_perfsapps/projects/rollups.py:64 for row in TestDailyStats.objects.filter(2 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
add_perfsapps/projects/rollups.py:88 TestDailyStats.objects.bulk_create(2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms1.1%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
finalize_profileapps/projects/profiles.py:500 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)2 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
finalize_profileapps/projects/profiles.py:5112 ms1.1%
QuerySet.deletedjango/db/models/query.py:12382 ms1.1%
Collector.deletedjango/db/models/deletion.py:4582 ms1.1%
Atomic.__exit__django/db/transaction.py:2252 ms1.1%
get_connectiondjango/db/transaction.py:252 ms1.1%
finalize_profileapps/projects/profiles.py:516 Environment.objects.select_for_update(no_key=True).filter(pk=profile.environment_id).first()2 ms1.1%
QuerySet.firstdjango/db/models/query.py:11452 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
finalize_profile_partsapps/api/tasks.py:2602 ms1.1%
process_profileapps/api/tasks.py:237 part = ProfilePart.objects.select_related("profile").get(id=part_id)2 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
ProfileUploadTest.test_a_changed_part_replaces_the_old_oneapps/api/tests.py:87231 ms20.3%
ProfileUploadTest.uploadapps/api/tests.py:49528 ms18.2%
_SharedTaskProxy.__call__potatoq/app.py:76328 ms18.2%
Task.__call__potatoq/task.py:18928 ms18.2%
process_profileapps/api/tasks.py:23924 ms16.0%
process_profile_partapps/projects/profiles.py:363 profile = claim_part(part, document)16 ms10.7%
claim_partapps/projects/profiles.py:3843 ms2.1%
add_perfsapps/projects/rollups.py:30 for perf in perfs:2 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
add_perfsapps/projects/rollups.py:88 TestDailyStats.objects.bulk_create(2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.bulk_createdjango/db/models/query.py:8162 ms1.1%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
claim_partapps/projects/profiles.py:379 profile = Profile.objects.select_for_update(no_key=True).get(pk=part.profile_id)2 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
claim_partapps/projects/profiles.py:381 ProfilePart.objects.filter(profile=profile, index=part.index, id__lt=part.id).delete() # superseded uploads2 ms1.1%
QuerySet.deletedjango/db/models/query.py:12382 ms1.1%
Collector.deletedjango/db/models/deletion.py:4582 ms1.1%
Atomic.__enter__django/db/transaction.py:1832 ms1.1%
claim_partapps/projects/profiles.py:383 Environment.objects.select_for_update(no_key=True).filter(pk=profile.environment_id).first()2 ms1.1%
QuerySet.firstdjango/db/models/query.py:11452 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
claim_partapps/projects/profiles.py:397 project = profile.project2 ms1.1%
ForwardManyToOneDescriptor.__get__django/db/models/fields/related_descriptors.py:2572 ms1.1%
ForwardManyToOneDescriptor.get_objectdjango/db/models/fields/related_descriptors.py:2222 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
claim_partapps/projects/profiles.py:3992 ms1.1%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.get_or_createdjango/db/models/query.py:9872 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:1272 ms1.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15772 ms1.1%
SQLCompiler.get_convertersdjango/db/models/sql/compiler.py:15262 ms1.1%
Col.get_db_convertersdjango/db/models/expressions.py:13402 ms1.1%
claim_partapps/projects/profiles.py:404 commit, _ = Commit.objects.get_or_create(2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.get_or_createdjango/db/models/query.py:9872 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.1%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:9462 ms1.1%
claim_partapps/projects/profiles.py:4672 ms1.1%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms1.1%
Model.savedjango/db/models/base.py:8742 ms1.1%
Model.save_basedjango/db/models/base.py:9662 ms1.1%
Model._save_tabledjango/db/models/base.py:11102 ms1.1%
Model._do_updatedjango/db/models/base.py:12112 ms1.1%
QuerySet._updatedjango/db/models/query.py:13272 ms1.1%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21402 ms1.1%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21112 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms1.1%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.1%
PostgresClientQuery.convertpsycopg/_queries.py:2842 ms1.1%
_query2pg_client_nocachepsycopg/_queries.py:3292 ms1.1%
_split_querypsycopg/_queries.py:4192 ms1.1%
process_profile_partapps/projects/profiles.py:3653 ms2.1%
upsert_testsapps/projects/profiles.py:4723 ms2.1%
TestManager.upsertapps/projects/models.py:2292 ms1.1%
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.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms1.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.1%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.1%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:882 ms1.1%
WhereNode.split_having_qualifydjango/db/models/sql/where.py:472 ms1.1%
TestManager.upsertapps/projects/models.py:230 self.bulk_create( # sorted, so uploads sharing tests lock their rows in the same order2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms1.1%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
process_profile_partapps/projects/profiles.py:3663 ms2.1%
write_perfsapps/projects/profiles.py:481 TestPerf(2 ms1.1%
Model.__init__django/db/models/base.py:5332 ms1.1%
write_perfsapps/projects/profiles.py:479 TestPerf.objects.bulk_create(2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms1.1%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
process_profile_partapps/projects/profiles.py:3672 ms1.1%
write_snapshotsapps/projects/profiles.py:334 cursor.executemany(SNAPSHOT_UPSERT, batch)2 ms1.1%
CursorWrapper.executemanydjango/db/backends/utils.py:842 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executemanydjango/db/backends/utils.py:1142 ms1.1%
Cursor.executemanypsycopg/cursor.py:1372 ms1.1%
Connection._pipeline_nolockpsycopg/connection.py:4722 ms1.1%
Pipeline.__exit__psycopg/_pipeline.py:732 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
process_profileapps/api/tasks.py:237 part = ProfilePart.objects.select_related("profile").get(id=part_id)2 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:1272 ms1.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15772 ms1.1%
SQLCompiler.get_convertersdjango/db/models/sql/compiler.py:15262 ms1.1%
Col.get_db_convertersdjango/db/models/expressions.py:13392 ms1.1%
process_profileapps/api/tasks.py:2512 ms1.1%
CallableMixin.__call__<stdlib>/unittest/mock.py:11752 ms1.1%
ProfileUploadTest.uploadapps/api/tests.py:487 response = self.client.post(3 ms2.1%
Client.postdjango/test/client.py:11533 ms2.1%
RequestFactory.postdjango/test/client.py:4993 ms2.1%
RequestFactory.genericdjango/test/client.py:6713 ms2.1%
Client.requestdjango/test/client.py:10823 ms2.1%
ClientHandler.__call__django/test/client.py:1863 ms2.1%
BaseHandler.get_responsedjango/core/handlers/base.py:1413 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:1303 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3093 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:1233 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3093 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3093 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3093 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3093 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3093 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3093 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:343 ms2.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:553 ms2.1%
BaseHandler._get_responsedjango/core/handlers/base.py:1983 ms2.1%
csrf_exempt.<locals>._view_wrapperdjango/views/decorators/csrf.py:653 ms2.1%
jsonify_errors.<locals>.wrapped_viewapps/api/urls.py:373 ms2.1%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:643 ms2.1%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:753 ms2.1%
profile_uploadapps/api/urls.py:1502 ms1.1%
get_or_create_numberedapps/projects/models.py:18 existing = model.objects.filter(project=project, **lookup).first()2 ms1.1%
QuerySet.firstdjango/db/models/query.py:11452 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
profile_uploadapps/api/urls.py:154 part = ProfilePart.objects.create(2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.createdjango/db/models/query.py:6692 ms1.1%
Model.savedjango/db/models/base.py:8742 ms1.1%
Model.save_basedjango/db/models/base.py:9662 ms1.1%
Model._save_tabledjango/db/models/base.py:11672 ms1.1%
Model._do_insertdjango/db/models/base.py:12182 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19242 ms1.1%
SQLInsertCompiler.as_sqldjango/db/models/sql/compiler.py:18132 ms1.1%
ProfileUploadTest.test_a_changed_part_replaces_the_old_oneapps/api/tests.py:87513 ms8.5%
_SharedTaskProxy.__call__potatoq/app.py:76313 ms8.5%
Task.__call__potatoq/task.py:18913 ms8.5%
finalize_profile_partsapps/api/tasks.py:25911 ms7.5%
finalize_profileapps/projects/profiles.py:5175 ms3.2%
add_perfsapps/projects/rollups.py:30 for perf in perfs:2 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
add_perfsapps/projects/rollups.py:64 for row in TestDailyStats.objects.filter(2 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
add_perfsapps/projects/rollups.py:88 TestDailyStats.objects.bulk_create(2 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.bulk_createdjango/db/models/query.py:8162 ms1.1%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms1.1%
QuerySet._insertdjango/db/models/query.py:19182 ms1.1%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms1.1%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms1.1%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms1.1%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms1.1%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms1.1%
ListDumper.get_keypsycopg/types/array.py:1232 ms1.1%
BaseListDumper._find_list_elementpsycopg/types/array.py:572 ms1.1%
BaseListDumper._flatiterpsycopg/types/array.py:892 ms1.1%
<GC>~2 ms1.1%
finalize_profileapps/projects/profiles.py:500 profile = Profile.objects.select_for_update(no_key=True).get(pk=profile_id)2 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
finalize_profileapps/projects/profiles.py:504 for part in ProfilePart.objects.filter(profile=profile).defer("document").order_by("index", "id"):2 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
BaseCursor._execute_genpsycopg/_cursor_base.py:2062 ms1.1%
BaseCursor._maybe_prepare_genpsycopg/_cursor_base.py:2862 ms1.1%
ClientCursorMixin._execute_sendpsycopg/client_cursor.py:782 ms1.1%
finalize_profileapps/projects/profiles.py:509 ProfilePart.objects.filter(profile=profile).exclude(pk__in=[part.pk for part in current]).delete()2 ms1.1%
QuerySet.deletedjango/db/models/query.py:12382 ms1.1%
Collector.deletedjango/db/models/deletion.py:4712 ms1.1%
QuerySet._raw_deletedjango/db/models/query.py:12602 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
finalize_profileapps/projects/profiles.py:5252 ms1.1%
Profile.saveapps/projects/models.py:466 super().save(*args, **kwargs)2 ms1.1%
Model.savedjango/db/models/base.py:8742 ms1.1%
Model.save_basedjango/db/models/base.py:9662 ms1.1%
Model._save_tabledjango/db/models/base.py:11102 ms1.1%
Model._do_updatedjango/db/models/base.py:12112 ms1.1%
QuerySet._updatedjango/db/models/query.py:13202 ms1.1%
Query.chaindjango/db/models/sql/query.py:4332 ms1.1%
finalize_profile_partsapps/api/tasks.py:2602 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
BaseManager.get_querysetdjango/db/models/manager.py:1552 ms1.1%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()3 ms2.1%
TestCase._fixture_teardowndjango/test/testcases.py:14953 ms2.1%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4833 ms2.1%
CursorWrapper.executedjango/db/backends/utils.py:793 ms2.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms2.1%
CursorWrapper._executedjango/db/backends/utils.py:1033 ms2.1%
Cursor.executepsycopg/cursor.py:1133 ms2.1%
Connection.waitpsycopg/connection.py:4953 ms2.1%
ProfileUploadTest.test_a_changed_part_replaces_the_old_oneapps/api/tests.py:8682 ms1.1%
ProfileUploadTest.documentapps/api/tests.py:5002 ms1.1%
make_test_entryapps/projects/testing.py:1142 ms1.1%
SysMonitor.sysmon_py_startcoverage/sysmon.py:3942 ms1.1%
ProfileUploadTest.test_a_changed_part_replaces_the_old_oneapps/api/tests.py:8742 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
ProfileUploadTest.test_a_changed_part_replaces_the_old_oneapps/api/tests.py:8762 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms1.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16112 ms1.1%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7672 ms1.1%
ProfileUploadTest.test_a_changed_part_replaces_the_old_oneapps/api/tests.py:8772 ms1.1%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms1.1%
QuerySet.getdjango/db/models/query.py:6352 ms1.1%
QuerySet.__len__django/db/models/query.py:3722 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ModelIterable.__iter__django/db/models/query.py:952 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
ProfileUploadTest.test_a_changed_part_replaces_the_old_oneapps/api/tests.py:8782 ms1.1%
ProfileUploadTest.daily_runsapps/api/tests.py:7482 ms1.1%
QuerySet.__iter__django/db/models/query.py:3902 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms1.1%
ValuesListIterable.__iter__django/db/models/query.py:2382 ms1.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms1.1%
CursorWrapper.executedjango/db/backends/utils.py:792 ms1.1%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms1.1%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms1.1%
Cursor.executepsycopg/cursor.py:1132 ms1.1%
Connection.waitpsycopg/connection.py:4952 ms1.1%
Estimated from 100 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
|
21 ms |
|
apps/projects/models.py:35
return (model.objects.filter(project_id=project_id).aggregate(last=models.Max("number"))["last"] or 0) + 1
next_number
· Database
|
15 ms |
|
apps/projects/models.py:466
super().save(*args, **kwargs)
Profile.save
· Database
|
7 ms |
|
apps/projects/models.py:18
existing = model.objects.filter(project=project, **lookup).first()
get_or_create_numbered
· Database
|
5 ms |
|
apps/projects/profiles.py:404
commit, _ = Commit.objects.get_or_create(
claim_part
· Database
|
5 ms |
|
apps/projects/profiles.py:479
TestPerf.objects.bulk_create(
write_perfs
· Database
|
5 ms |
|
apps/projects/profiles.py:334
cursor.executemany(SNAPSHOT_UPSERT, batch)
write_snapshots
· Database
|
5 ms |
|
apps/projects/rollups.py:88
TestDailyStats.objects.bulk_create(
add_perfs
· Database
|
5 ms |
|
apps/api/tests.py:480
cls.project = baker.make("projects.Project", secrettokens_set__token=cls.secret_token)
ProfileUploadTest.setUpTestData
· Database
|
5 ms |
|
apps/api/urls.py:154
part = ProfilePart.objects.create(
profile_upload
· Database
|
3 ms |
Fixtures
Exact setup time| _unittest_setUpClass_fixture_ProfileUploadTest class | 13 ms |
| _django_setup_unittest class | 0.27 ms |
| _django_db_marker function | 0.05 ms |
| _dj_autoclear_mailbox function | 0.04 ms |
| _template_string_if_invalid_marker function | 0.03 ms |
| _django_clear_site_cache function | 0.03 ms |
| _django_set_urlconf function | 0.03 ms |
| _live_server_helper function | 0.03 ms |
| monkeypatch function | 0.02 ms |
Database
113 queries · 51 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"."…
7×
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…
4×
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…
4×
SELECT "projects_testdailystats"."id", "projects_testdailystats"."project_id", "projects_testdailystats"."test_id", "projects_testdailystats"."environment_id", "projects_testdailystats"."day", "projects_testdailystats"."runs", "projects_testdailystats"."failures", "projects_testdailystats"."duratio…
Biggest pieces of work
|
call test body
apps/api/tests.py:869
|
135 ms |
|
setup setUpClass
django/test/testcases.py:1423
|
13 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
3 ms |
| setup pytest internals | 0.92 ms |
Reliability
12 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 12 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| 16 hours ago | CI github-actions:test | passed | 153 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 91 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 182 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 117 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 166 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 99 ms | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 158 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 157 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 151 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 188 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 97 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 157 ms | Profile |