CI
github-actions:test
5 runs
Average
78 ms
median 77 ms
max 102 ms
max 102 ms
Phases
Setup 15 ms
Call 64 ms
Teardown 0.16 ms
Categories
Database 40 ms
Factories 2 ms
App code 0.28 ms
Other (Libraries, Unsampled, pytest) 36 ms
42 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, an hour ago ·
open run
setup13 ms17.2%
CallInfo.from_call_pytest/runner.py:35313 ms17.2%
call_and_report.<locals>.<lambda>_pytest/runner.py:24512 ms15.6%
HookCaller.__call__pluggy/_hooks.py:51212 ms15.6%
PluginManager._hookexecpluggy/_manager.py:12012 ms15.6%
_multicallpluggy/_callers.py:12112 ms15.6%
pytest_runtest_setup_pytest/runner.py:16512 ms15.6%
SetupState.setup_pytest/runner.py:52312 ms15.6%
TestCaseFunction.setup_pytest/unittest.py:22712 ms15.6%
Function.setup_pytest/python.py:172312 ms15.6%
TopRequest._fillfixtures_pytest/fixtures.py:70712 ms15.6%
FixtureRequest.getfixturevalue_pytest/fixtures.py:53912 ms15.6%
FixtureRequest._get_active_fixturedef_pytest/fixtures.py:62712 ms15.6%
FixtureDef.execute_pytest/fixtures.py:111012 ms15.6%
HookCaller.__call__pluggy/_hooks.py:51212 ms15.6%
PluginManager._hookexecpluggy/_manager.py:12012 ms15.6%
_multicallpluggy/_callers.py:12112 ms15.6%
pytest_fixture_setup_pytest/fixtures.py:120212 ms15.6%
call_fixture_func_pytest/fixtures.py:90812 ms15.6%
UnitTestCase._register_unittest_setup_class_fixture.<locals>.unittest_setup_class_fixture_pytest/unittest.py:15412 ms15.6%
TestCase.setUpClassdjango/test/testcases.py:1423 cls.cls_atomics = cls._enter_atomics()7 ms9.4%
TestCase._enter_atomicsdjango/test/testcases.py:13967 ms9.4%
Atomic.__enter__django/db/transaction.py:1987 ms9.4%
BaseDatabaseWrapper.get_autocommitdjango/db/backends/base/base.py:4547 ms9.4%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:3037 ms9.4%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:267 ms9.4%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:2797 ms9.4%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:267 ms9.4%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2567 ms9.4%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:267 ms9.4%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:3337 ms9.4%
Connection.connectpsycopg/connection.py:1097 ms9.4%
wait_connpsycopg/waiting.py:1414 ms4.7%
EpollSelector.select<stdlib>/selectors.py:4524 ms4.7%
wait_connpsycopg/waiting.py:1454 ms4.7%
BaseConnection._connect_genpsycopg/_connection_base.py:4394 ms4.7%
TestCase.setUpClassdjango/test/testcases.py:1439 cls.setUpTestData()5 ms6.3%
TestMute.setUpTestDataapps/api/tests.py:433 cls.project = baker.make("projects.Project", secrettokens_set__token=cls.secret_token)5 ms6.3%
makemodel_bakery/baker.py:1475 ms6.3%
Baker.makemodel_bakery/baker.py:4065 ms6.3%
Baker._makemodel_bakery/baker.py:4712 ms3.1%
Baker.generate_valuemodel_bakery/baker.py:8002 ms3.1%
gen_relatedmodel_bakery/random_gen.py:2742 ms3.1%
makemodel_bakery/baker.py:1472 ms3.1%
Baker.makemodel_bakery/baker.py:4062 ms3.1%
Baker._makemodel_bakery/baker.py:4822 ms3.1%
Baker.instancemodel_bakery/baker.py:5302 ms3.1%
Model.__init__django/db/models/base.py:5561 ms1.6%
Model.savedjango/db/models/base.py:8741 ms1.6%
Model.save_basedjango/db/models/base.py:9661 ms1.6%
Model._save_tabledjango/db/models/base.py:11671 ms1.6%
Model._do_insertdjango/db/models/base.py:12181 ms1.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.6%
QuerySet._insertdjango/db/models/query.py:19181 ms1.6%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.6%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.6%
Cursor.executepsycopg/cursor.py:1131 ms1.6%
Connection.waitpsycopg/connection.py:4951 ms1.6%
Baker._makemodel_bakery/baker.py:4821 ms1.6%
Baker.instancemodel_bakery/baker.py:5351 ms1.6%
Model.savedjango/db/models/base.py:8741 ms1.6%
Model.save_basedjango/db/models/base.py:9661 ms1.6%
Model._save_tabledjango/db/models/base.py:11671 ms1.6%
Model._do_insertdjango/db/models/base.py:12181 ms1.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.6%
QuerySet._insertdjango/db/models/query.py:19181 ms1.6%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.6%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.6%
Cursor.executepsycopg/cursor.py:1131 ms1.6%
Connection.waitpsycopg/connection.py:4951 ms1.6%
Baker._makemodel_bakery/baker.py:4901 ms1.6%
Baker.create_by_related_namemodel_bakery/baker.py:5601 ms1.6%
makemodel_bakery/baker.py:1471 ms1.6%
Baker.makemodel_bakery/baker.py:4061 ms1.6%
Baker._makemodel_bakery/baker.py:4821 ms1.6%
Baker.instancemodel_bakery/baker.py:5351 ms1.6%
Model.savedjango/db/models/base.py:8741 ms1.6%
Model.save_basedjango/db/models/base.py:9661 ms1.6%
Model._save_tabledjango/db/models/base.py:11671 ms1.6%
Model._do_insertdjango/db/models/base.py:12181 ms1.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.6%
QuerySet._insertdjango/db/models/query.py:19181 ms1.6%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.6%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.6%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.6%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.6%
Cursor.executepsycopg/cursor.py:1131 ms1.6%
Connection.waitpsycopg/connection.py:4951 ms1.6%
call63 ms82.6%
CallInfo.from_call_pytest/runner.py:35363 ms82.6%
call_and_report.<locals>.<lambda>_pytest/runner.py:24563 ms82.6%
HookCaller.__call__pluggy/_hooks.py:51263 ms82.6%
PluginManager._hookexecpluggy/_manager.py:12063 ms82.6%
_multicallpluggy/_callers.py:12163 ms82.6%
pytest_runtest_call_pytest/runner.py:17963 ms82.6%
_django_setup_unittest.<locals>.non_debugging_runtestpytest_django/plugin.py:57363 ms82.6%
SimpleTestCase.__call__django/test/testcases.py:31363 ms82.6%
SimpleTestCase._setup_and_calldjango/test/testcases.py:36859 ms77.2%
TestCase.__call__<stdlib>/unittest/case.py:74759 ms77.2%
TestCase.run<stdlib>/unittest/case.py:69159 ms77.2%
TestCase._callTestMethod<stdlib>/unittest/case.py:63759 ms77.2%
TestMute.test_muted_testsapps/api/tests.py:457 response = self.ingest_start()48 ms62.8%
TestMute.ingest_startapps/api/tests.py:423 return self.client.post(48 ms62.8%
Client.postdjango/test/client.py:115348 ms62.8%
RequestFactory.postdjango/test/client.py:49948 ms62.8%
RequestFactory.genericdjango/test/client.py:67148 ms62.8%
Client.requestdjango/test/client.py:108248 ms62.8%
ClientHandler.__call__django/test/client.py:17326 ms34.1%
BaseHandler.load_middlewaredjango/core/handlers/base.py:6226 ms34.1%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:10426 ms34.1%
WhiteNoise.add_fileswhitenoise/base.py:10826 ms34.1%
WhiteNoise.update_files_dictionarywhitenoise/base.py:12021 ms26.9%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:13119 ms25.1%
WhiteNoise.get_static_filewhitenoise/base.py:20814 ms18.0%
StaticFile.__init__whitenoise/responders.py:726 ms7.2%
StaticFile.get_file_statswhitenoise/responders.py:1614 ms5.4%
__init____init__:-11 ms1.8%
FileEntry.__init__whitenoise/responders.py:2631 ms1.8%
FileEntry.stat_regular_filewhitenoise/responders.py:2761 ms1.8%
<GC>~1 ms1.8%
StaticFile.__init__whitenoise/responders.py:734 ms5.4%
StaticFile.get_headerswhitenoise/responders.py:1764 ms5.4%
formatdate<stdlib>/email/utils.py:2663 ms3.6%
StaticFile.__init__whitenoise/responders.py:771 ms1.8%
StaticFile.get_alternativeswhitenoise/responders.py:2001 ms1.8%
StaticFile.__init__whitenoise/responders.py:741 ms1.8%
parsedate<stdlib>/email/_parseaddr.py:1851 ms1.8%
StaticFile.__init__whitenoise/responders.py:761 ms1.8%
WhiteNoise.get_static_filewhitenoise/base.py:2033 ms3.6%
WhiteNoise.add_cache_headerswhitenoise/base.py:2243 ms3.6%
WhiteNoiseMiddleware.immutable_file_testwhitenoise/middleware.py:1763 ms3.6%
WhiteNoiseMiddleware.get_static_urlwhitenoise/middleware.py:1973 ms3.6%
URLMixin.urldebug_toolbar/panels/staticfiles.py:203 ms3.6%
HashedFilesMixin.urldjango/contrib/staticfiles/storage.py:2051 ms1.8%
HashedFilesMixin._urldjango/contrib/staticfiles/storage.py:1861 ms1.8%
FileSystemStorage.urldjango/core/files/storage/filesystem.py:2121 ms1.8%
WhiteNoise.get_static_filewhitenoise/base.py:2021 ms1.8%
WhiteNoise.add_mime_headerswhitenoise/base.py:2211 ms1.8%
WhiteNoise.update_files_dictionarywhitenoise/base.py:1156 ms7.2%
scantreewhitenoise/base.py:2624 ms5.4%
scantreewhitenoise/base.py:2623 ms3.6%
scantreewhitenoise/base.py:2623 ms3.6%
scantreewhitenoise/base.py:2623 ms3.6%
scantreewhitenoise/base.py:2621 ms1.8%
scantreewhitenoise/base.py:2641 ms1.8%
scantreewhitenoise/base.py:2641 ms1.8%
scantreewhitenoise/base.py:2601 ms1.8%
ClientHandler.__call__django/test/client.py:18622 ms28.7%
BaseHandler.get_responsedjango/core/handlers/base.py:14122 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13022 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12322 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
MiddlewareMixin.__call__django/utils/deprecation.py:30922 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3422 ms28.7%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5522 ms28.7%
BaseHandler._get_responsedjango/core/handlers/base.py:19822 ms28.7%
csrf_exempt.<locals>._view_wrapperdjango/views/decorators/csrf.py:6522 ms28.7%
jsonify_errors.<locals>.wrapped_viewapps/api/urls.py:3722 ms28.7%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:6422 ms28.7%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:7517 ms21.5%
ingest_startapps/api/urls.py:100 process_ingest_start(ingest.id)14 ms18.0%
_SharedTaskProxy.__call__potatoq/app.py:76314 ms18.0%
Task.__call__potatoq/task.py:18914 ms18.0%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:11614 ms18.0%
process_ingest_startapps/api/tasks.py:776 ms7.2%
get_or_create_numberedapps/projects/models.py:23 with transaction.atomic():3 ms3.6%
Atomic.__enter__django/db/transaction.py:2111 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.8%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4001 ms1.8%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3671 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
Atomic.__exit__django/db/transaction.py:2471 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4311 ms1.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3751 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
get_or_create_numberedapps/projects/models.py:18 existing = model.objects.filter(project=project, **lookup).first()1 ms1.8%
QuerySet.firstdjango/db/models/query.py:11451 ms1.8%
QuerySet.__iter__django/db/models/query.py:3901 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms1.8%
ModelIterable.__iter__django/db/models/query.py:951 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16111 ms1.8%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7671 ms1.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:861 ms1.8%
SQLCompiler.setup_querydjango/db/models/sql/compiler.py:751 ms1.8%
SQLCompiler.get_selectdjango/db/models/sql/compiler.py:2551 ms1.8%
SQLCompiler.get_default_columnsdjango/db/models/sql/compiler.py:10301 ms1.8%
get_or_create_numberedapps/projects/models.py:21 number = next_number(model, project.pk)1 ms1.8%
process_ingest_startapps/api/tasks.py:843 ms3.6%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(3 ms3.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms3.6%
QuerySet.get_or_createdjango/db/models/query.py:9871 ms1.8%
QuerySet.getdjango/db/models/query.py:6351 ms1.8%
QuerySet.__len__django/db/models/query.py:3721 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms1.8%
ModelIterable.__iter__django/db/models/query.py:951 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
QuerySet.get_or_createdjango/db/models/query.py:9941 ms1.8%
QuerySet.createdjango/db/models/query.py:6691 ms1.8%
Model.savedjango/db/models/base.py:8741 ms1.8%
Model.save_basedjango/db/models/base.py:9661 ms1.8%
Model._save_tabledjango/db/models/base.py:11671 ms1.8%
Model._do_insertdjango/db/models/base.py:12181 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.8%
QuerySet._insertdjango/db/models/query.py:19181 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
process_ingest_startapps/api/tasks.py:89 Session.objects.get_or_create(3 ms3.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:873 ms3.6%
QuerySet.get_or_createdjango/db/models/query.py:9923 ms3.6%
Atomic.__enter__django/db/transaction.py:2111 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.8%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4001 ms1.8%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3671 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
Atomic.__exit__django/db/transaction.py:2471 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4311 ms1.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3751 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms1.8%
process_ingest_startapps/api/tasks.py:54 data = ingest.data1 ms1.8%
DeferredAttribute.__get__django/db/models/query_utils.py:2711 ms1.8%
Model.refresh_from_dbdjango/db/models/base.py:7581 ms1.8%
QuerySet.getdjango/db/models/query.py:6351 ms1.8%
QuerySet.__len__django/db/models/query.py:3721 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms1.8%
ModelIterable.__iter__django/db/models/query.py:951 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
process_ingest_startapps/api/tasks.py:105 ingest.save(update_fields=["date_processed"])1 ms1.8%
Model.savedjango/db/models/base.py:8741 ms1.8%
Model.save_basedjango/db/models/base.py:9661 ms1.8%
Model._save_tabledjango/db/models/base.py:11101 ms1.8%
Model._do_updatedjango/db/models/base.py:12111 ms1.8%
QuerySet._updatedjango/db/models/query.py:13271 ms1.8%
SQLUpdateCompiler.execute_returning_sqldjango/db/models/sql/compiler.py:21401 ms1.8%
SQLUpdateCompiler.execute_sqldjango/db/models/sql/compiler.py:21111 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1021 ms1.8%
ingest_startapps/api/urls.py:90 ingest = Ingest.objects.create(project=project, source="ingest_start", data=json.loads(request.body))1 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.8%
QuerySet.createdjango/db/models/query.py:6691 ms1.8%
Model.savedjango/db/models/base.py:8741 ms1.8%
Model.save_basedjango/db/models/base.py:9661 ms1.8%
Model._save_tabledjango/db/models/base.py:11671 ms1.8%
Model._do_insertdjango/db/models/base.py:12181 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.8%
QuerySet._insertdjango/db/models/query.py:19181 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
ingest_startapps/api/urls.py:95 "muted_tests": [{"name": test.name} for test in muted_tests],1 ms1.8%
QuerySet.__iter__django/db/models/query.py:3901 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms1.8%
ModelIterable.__iter__django/db/models/query.py:951 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:73 touch_token(request.headers.get("Authorization"))4 ms5.4%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1153 ms3.6%
Atomic.__enter__django/db/transaction.py:2111 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.8%
BaseDatabaseWrapper.savepointdjango/db/backends/base/base.py:4001 ms1.8%
BaseDatabaseWrapper._savepointdjango/db/backends/base/base.py:3671 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
Atomic.__exit__django/db/transaction.py:2471 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4311 ms1.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3751 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
ContextDecorator.__call__.<locals>.inner<stdlib>/contextlib.py:1161 ms1.8%
touch_tokenapps/api/urls.py:59 SecretTokens.objects.filter(pk__in=list(stale)).update(date_last_used=now)1 ms1.8%
QuerySet.__iter__django/db/models/query.py:3901 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms1.8%
FlatValuesListIterable.__iter__django/db/models/query.py:2771 ms1.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15731 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:72 project = get_object_or_404(Project, secrettokens__token=request.headers.get("Authorization"))1 ms1.8%
get_object_or_404django/shortcuts.py:901 ms1.8%
QuerySet.getdjango/db/models/query.py:6351 ms1.8%
QuerySet.__len__django/db/models/query.py:3721 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms1.8%
ModelIterable.__iter__django/db/models/query.py:951 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
TestMute.test_muted_testsapps/api/tests.py:453 baker.make(11 ms14.4%
makemodel_bakery/baker.py:14711 ms14.4%
Baker.makemodel_bakery/baker.py:40611 ms14.4%
Baker._makemodel_bakery/baker.py:47110 ms12.6%
Baker.generate_valuemodel_bakery/baker.py:80010 ms12.6%
gen_relatedmodel_bakery/random_gen.py:27410 ms12.6%
makemodel_bakery/baker.py:14710 ms12.6%
Baker.makemodel_bakery/baker.py:40610 ms12.6%
Baker._makemodel_bakery/baker.py:4828 ms10.8%
Baker.instancemodel_bakery/baker.py:5358 ms10.8%
Test.saveapps/projects/models.py:2934 ms5.4%
TestManager.slugs_forapps/projects/models.py:240 existing = dict(self.filter(project_id=project_id, name__in=names).values_list("name", "slug"))3 ms3.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.8%
QuerySet.filterdjango/db/models/query.py:15421 ms1.8%
QuerySet._filter_or_excludedjango/db/models/query.py:15601 ms1.8%
QuerySet._filter_or_exclude_inplacedjango/db/models/query.py:15701 ms1.8%
Query.add_qdjango/db/models/sql/query.py:16711 ms1.8%
Query._add_qdjango/db/models/sql/query.py:17031 ms1.8%
Query.build_filterdjango/db/models/sql/query.py:15991 ms1.8%
Query.trim_joinsdjango/db/models/sql/query.py:20231 ms1.8%
QuerySet.__iter__django/db/models/query.py:3901 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms1.8%
ValuesListIterable.__iter__django/db/models/query.py:2381 ms1.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15731 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
TestManager.slugs_forapps/projects/models.py:242 taken = set(self.filter(project_id=project_id, slug__in=set(new.values())).values_list("slug", flat=True))1 ms1.8%
QuerySet.__iter__django/db/models/query.py:3901 ms1.8%
QuerySet._fetch_alldjango/db/models/query.py:20001 ms1.8%
FlatValuesListIterable.__iter__django/db/models/query.py:2771 ms1.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15731 ms1.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16241 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
Test.saveapps/projects/models.py:294 super().save(*args, **kwargs)1 ms1.8%
Model.savedjango/db/models/base.py:8741 ms1.8%
Model.save_basedjango/db/models/base.py:9661 ms1.8%
Model._save_tabledjango/db/models/base.py:11671 ms1.8%
Model._do_insertdjango/db/models/base.py:12181 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.8%
QuerySet._insertdjango/db/models/query.py:19181 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
Model.savedjango/db/models/base.py:8741 ms1.8%
Model.save_basedjango/db/models/base.py:9661 ms1.8%
Model._save_tabledjango/db/models/base.py:11671 ms1.8%
Model._do_insertdjango/db/models/base.py:12181 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.8%
QuerySet._insertdjango/db/models/query.py:19181 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1021 ms1.8%
QueryStats.addflakytest/profiling/dbtrack.py:381 ms1.8%
normalize_sqlflakytest/profiling/dbtrack.py:241 ms1.8%
AbstractBaseUser.savedjango/contrib/auth/base_user.py:621 ms1.8%
Model.savedjango/db/models/base.py:8741 ms1.8%
Model.save_basedjango/db/models/base.py:9661 ms1.8%
Model._save_tabledjango/db/models/base.py:11671 ms1.8%
Model._do_insertdjango/db/models/base.py:12181 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.8%
QuerySet._insertdjango/db/models/query.py:19181 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
Baker._makemodel_bakery/baker.py:4711 ms1.8%
Baker.generate_valuemodel_bakery/baker.py:8001 ms1.8%
gen_relatedmodel_bakery/random_gen.py:2741 ms1.8%
makemodel_bakery/baker.py:1471 ms1.8%
Baker.makemodel_bakery/baker.py:4061 ms1.8%
Baker._makemodel_bakery/baker.py:4821 ms1.8%
Baker.instancemodel_bakery/baker.py:5351 ms1.8%
Model.savedjango/db/models/base.py:8741 ms1.8%
Model.save_basedjango/db/models/base.py:9661 ms1.8%
Model._save_tabledjango/db/models/base.py:11671 ms1.8%
Model._do_insertdjango/db/models/base.py:12181 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.8%
QuerySet._insertdjango/db/models/query.py:19181 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
Baker._makemodel_bakery/baker.py:4821 ms1.8%
Baker.instancemodel_bakery/baker.py:5351 ms1.8%
Model.savedjango/db/models/base.py:8741 ms1.8%
Model.save_basedjango/db/models/base.py:9661 ms1.8%
Model._save_tabledjango/db/models/base.py:11671 ms1.8%
Model._do_insertdjango/db/models/base.py:12181 ms1.8%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:871 ms1.8%
QuerySet._insertdjango/db/models/query.py:19181 ms1.8%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19251 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1051 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
SimpleTestCase._setup_and_calldjango/test/testcases.py:3714 ms5.4%
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()4 ms5.4%
TestCase._fixture_teardowndjango/test/testcases.py:14953 ms3.6%
DatabaseWrapper.check_constraintsdjango/db/backends/postgresql/base.py:4833 ms3.6%
CursorWrapper.executedjango/db/backends/utils.py:793 ms3.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms3.6%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1003 ms3.6%
CursorWrapper._executedjango/db/backends/utils.py:1033 ms3.6%
Cursor.executepsycopg/cursor.py:1133 ms3.6%
Connection.waitpsycopg/connection.py:4953 ms3.6%
TestCase._fixture_teardowndjango/test/testcases.py:14971 ms1.8%
TestCase._rollback_atomicsdjango/test/testcases.py:14051 ms1.8%
Atomic.__exit__django/db/transaction.py:2861 ms1.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:261 ms1.8%
BaseDatabaseWrapper.savepoint_commitdjango/db/backends/base/base.py:4311 ms1.8%
BaseDatabaseWrapper._savepoint_commitdjango/db/backends/base/base.py:3751 ms1.8%
CursorWrapper.executedjango/db/backends/utils.py:791 ms1.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:921 ms1.8%
QueryTracker._django_wrapperflakytest/profiling/dbtrack.py:1001 ms1.8%
CursorWrapper._executedjango/db/backends/utils.py:1031 ms1.8%
Cursor.executepsycopg/cursor.py:1131 ms1.8%
Connection.waitpsycopg/connection.py:4951 ms1.8%
Estimated from 57 samples; phase durations are exact. Frames from pytest and pluggy are
shown
.
Hot lines in your code
|
apps/api/tests.py:423
return self.client.post(
TestMute.ingest_start
· Libraries
|
26 ms |
|
apps/api/tests.py:453
baker.make(
TestMute.test_muted_tests
· Database
|
6 ms |
|
apps/api/tests.py:433
cls.project = baker.make("projects.Project", secrettokens_set__token=cls.secret_token)
TestMute.setUpTestData
· Database
|
5 ms |
|
apps/projects/models.py:240
existing = dict(self.filter(project_id=project_id, name__in=names).values_list("name", "slug"))
TestManager.slugs_for
· Database
|
3 ms |
|
apps/api/urls.py:73
touch_token(request.headers.get("Authorization"))
api_request.<locals>.decorator.<locals>.wrapped_view
· Database
|
3 ms |
|
apps/projects/models.py:23
with transaction.atomic():
get_or_create_numbered
· Database
|
3 ms |
|
apps/projects/environments.py:63
obj, created = Environment.objects.get_or_create(
get_or_create_environment
· Database
|
3 ms |
|
apps/api/tasks.py:89
Session.objects.get_or_create(
process_ingest_start
· Database
|
3 ms |
|
apps/projects/models.py:242
taken = set(self.filter(project_id=project_id, slug__in=set(new.values())).values_list("slug", flat=True))
TestManager.slugs_for
· Database
|
1 ms |
|
apps/projects/models.py:294
super().save(*args, **kwargs)
Test.save
· Database
|
1 ms |
Fixtures
Exact setup time| _unittest_setUpClass_fixture_TestMute class | 12 ms |
| _django_setup_unittest class | 0.31 ms |
| _django_db_marker function | 0.09 ms |
| _template_string_if_invalid_marker function | 0.04 ms |
| _django_set_urlconf function | 0.04 ms |
| _django_clear_site_cache function | 0.03 ms |
| _live_server_helper function | 0.03 ms |
| _dj_autoclear_mailbox function | 0.03 ms |
| monkeypatch function | 0.02 ms |
Database
42 queries · 20 msNo repeated queries.
Biggest pieces of work
|
call test body
apps/api/tests.py:457
|
59 ms |
|
setup setUpClass
django/test/testcases.py:1423
|
12 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
4 ms |
| setup pytest internals | 1 ms |
Reliability
5 results · 0 CI failures · 0 local failuresThis test hasn't failed recently.
History
Latest 50 results, oldest first in the strip| When | Environment | Outcome | Duration | |
|---|---|---|---|---|
| an hour ago | CI github-actions:test | passed | 77 ms | Profile |
| an hour ago | CI github-actions:test | passed | 75 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 102 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 53 ms | Profile |
| 8 hours ago | CI github-actions:test | passed | 85 ms | Profile |
| 2 years ago | CI github-actions | passed | 105 ms | Run |
| 2 years, 2 months ago | CI github-actions | passed | 106 ms | Run |
| 2 years, 3 months ago | CI github-actions | passed | 144 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 116 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 122 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 113 ms | Run |
| 2 years, 4 months ago | CI github-actions | passed | 104 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 105 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 102 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 106 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 104 ms | Run |
| 2 years, 5 months ago | CI github-actions | passed | 105 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 138 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 104 ms | Run |
| 2 years, 6 months ago | CI github-actions | passed | 102 ms | Run |