Tests / apps/api/tests.py
IngestStartEndpointTest::test_ingest_end_after_progress
First seen 2 years, 10 months ago in 9ff0a7e
CI
github-actions:test
12 runs
Average
291 ms
median 300 ms
max 468 ms
max 468 ms
Phases
Setup 0.90 ms
Call 290 ms
Teardown 0.25 ms
Categories
Database 142 ms
Factories 0.73 ms
App code 0.53 ms
Other (DB schema, Libraries, Imports, Unsampled, ...) 148 ms
133 database queries per run
Needs 323 KB of memory (max 752 KB)
Duration per run
Where the time goes
Latest run in ci:github-actions:test, 16 hours ago ·
open run
call415 ms99.7%
IngestStartEndpointTest.test_ingest_end_after_progressapps/api/tests.py:239 response = self.ingest_start({"env": {"GITHUB_RUN_ID": "run1"}})208 ms50.1%
IngestStartEndpointTest.ingest_startapps/api/tests.py:98 return self.client.post(208 ms50.1%
Client.postdjango/test/client.py:1153208 ms50.1%
RequestFactory.postdjango/test/client.py:499208 ms50.1%
RequestFactory.genericdjango/test/client.py:671208 ms50.1%
Client.requestdjango/test/client.py:1082208 ms50.1%
ClientHandler.__call__django/test/client.py:173193 ms46.5%
BaseHandler.load_middlewaredjango/core/handlers/base.py:62192 ms46.2%
WhiteNoiseMiddleware.__init__whitenoise/middleware.py:104192 ms46.2%
WhiteNoise.add_fileswhitenoise/base.py:108192 ms46.2%
WhiteNoise.update_files_dictionarywhitenoise/base.py:115168 ms40.4%
scantreewhitenoise/base.py:262168 ms40.4%
scantreewhitenoise/base.py:262168 ms40.4%
scantreewhitenoise/base.py:264167 ms40.1%
<GC>~166 ms39.8%
1 smaller frames hidden
WhiteNoise.update_files_dictionarywhitenoise/base.py:1206 ms1.4%
WhiteNoise.add_file_to_dictionarywhitenoise/base.py:1316 ms1.4%
WhiteNoise.get_static_filewhitenoise/base.py:2086 ms1.4%
StaticFile.__init__whitenoise/responders.py:773 ms0.8%
StaticFile.get_alternativeswhitenoise/responders.py:2002 ms0.6%
1 smaller frames hidden
2 smaller frames hidden
1 smaller frames hidden
ClientHandler.__call__django/test/client.py:18615 ms3.6%
BaseHandler.get_responsedjango/core/handlers/base.py:14115 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13015 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12315 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
MiddlewareMixin.__call__django/utils/deprecation.py:30915 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3415 ms3.6%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5515 ms3.6%
BaseHandler._get_responsedjango/core/handlers/base.py:19815 ms3.6%
csrf_exempt.<locals>._view_wrapperdjango/views/decorators/csrf.py:6515 ms3.6%
jsonify_errors.<locals>.wrapped_viewapps/api/urls.py:3715 ms3.6%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:6415 ms3.6%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:7512 ms2.8%
ingest_startapps/api/urls.py:100 process_ingest_start(ingest.id)9 ms2.2%
_SharedTaskProxy.__call__potatoq/app.py:7639 ms2.2%
Task.__call__potatoq/task.py:1899 ms2.2%
process_ingest_startapps/api/tasks.py:773 ms0.8%
process_ingest_startapps/api/tasks.py:842 ms0.6%
get_or_create_environmentapps/projects/environments.py:63 obj, created = Environment.objects.get_or_create(2 ms0.6%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:872 ms0.6%
3 smaller frames hidden
2 smaller frames hidden
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:73 touch_token(request.headers.get("Authorization"))2 ms0.6%
touch_tokenapps/api/urls.py:59 SecretTokens.objects.filter(pk__in=list(stale)).update(date_last_used=now)2 ms0.6%
1 smaller frames hidden
TransactionTestCase._post_teardowndjango/test/testcases.py:1240 self._fixture_teardown()79 ms18.9%
TransactionTestCase._fixture_teardowndjango/test/testcases.py:127579 ms18.9%
call_commanddjango/core/management/__init__.py:19579 ms18.9%
BaseCommand.executedjango/core/management/base.py:46079 ms18.9%
Command.handledjango/core/management/commands/flush.py:9239 ms9.5%
emit_post_migrate_signaldjango/core/management/sql.py:5239 ms9.5%
Signal.senddjango/dispatch/dispatcher.py:20939 ms9.5%
create_permissionsdjango/contrib/auth/management/__init__.py:10712 ms2.8%
QuerySet.bulk_createdjango/db/models/query.py:83310 ms2.5%
QuerySet._batched_insertdjango/db/models/query.py:195610 ms2.5%
QuerySet._insertdjango/db/models/query.py:191810 ms2.5%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19259 ms2.2%
CursorWrapper.executedjango/db/backends/utils.py:799 ms2.2%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:929 ms2.2%
CursorWrapper._executedjango/db/backends/utils.py:1059 ms2.2%
Cursor.executepsycopg/cursor.py:1139 ms2.2%
Connection.waitpsycopg/connection.py:4959 ms2.2%
BaseCursor._execute_genpsycopg/_cursor_base.py:2052 ms0.6%
BaseCursor._convert_querypsycopg/_cursor_base.py:4652 ms0.6%
PostgresClientQuery.convertpsycopg/_queries.py:2892 ms0.6%
PostgresClientQuery.dumppsycopg/_queries.py:2992 ms0.6%
PostgresClientQuery.dump.<locals>.<genexpr>psycopg/_queries.py:3002 ms0.6%
Dumper.quotepsycopg/adapt.py:592 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
create_permissionsdjango/contrib/auth/management/__init__.py:6110 ms2.5%
create_contenttypesdjango/contrib/contenttypes/management/__init__.py:1227 ms1.7%
QuerySet.__iter__django/db/models/query.py:3907 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20007 ms1.7%
FlatValuesListIterable.__iter__django/db/models/query.py:2777 ms1.7%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15737 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16246 ms1.4%
CursorWrapper.executedjango/db/backends/utils.py:796 ms1.4%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:926 ms1.4%
CursorWrapper._executedjango/db/backends/utils.py:1056 ms1.4%
Cursor.executepsycopg/cursor.py:1136 ms1.4%
Connection.waitpsycopg/connection.py:4956 ms1.4%
1 smaller frames hidden
create_contenttypesdjango/contrib/contenttypes/management/__init__.py:1322 ms0.6%
QuerySet.bulk_createdjango/db/models/query.py:8332 ms0.6%
QuerySet._batched_insertdjango/db/models/query.py:19562 ms0.6%
QuerySet._insertdjango/db/models/query.py:19182 ms0.6%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19252 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.6%
Cursor.executepsycopg/cursor.py:1132 ms0.6%
Connection.waitpsycopg/connection.py:4952 ms0.6%
1 smaller frames hidden
create_permissionsdjango/contrib/auth/management/__init__.py:807 ms1.7%
ContentTypeManager.get_for_modelsdjango/contrib/contenttypes/models.py:917 ms1.7%
QuerySet.__iter__django/db/models/query.py:3907 ms1.7%
QuerySet._fetch_alldjango/db/models/query.py:20007 ms1.7%
ModelIterable.__iter__django/db/models/query.py:957 ms1.7%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16115 ms1.1%
SQLCompiler.as_sqldjango/db/models/sql/compiler.py:7673 ms0.8%
SQLCompiler.pre_sql_setupdjango/db/models/sql/compiler.py:882 ms0.6%
WhereNode.split_having_qualifydjango/db/models/sql/where.py:472 ms0.6%
cached_property.__get__django/utils/functional.py:472 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.6%
Cursor.executepsycopg/cursor.py:1132 ms0.6%
Connection.waitpsycopg/connection.py:4952 ms0.6%
create_permissionsdjango/contrib/auth/management/__init__.py:875 ms1.1%
QuerySet.__iter__django/db/models/query.py:3905 ms1.1%
QuerySet._fetch_alldjango/db/models/query.py:20005 ms1.1%
ValuesListIterable.__iter__django/db/models/query.py:2385 ms1.1%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15735 ms1.1%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16243 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:793 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1053 ms0.8%
Cursor.executepsycopg/cursor.py:1133 ms0.8%
Connection.waitpsycopg/connection.py:4953 ms0.8%
1 smaller frames hidden
create_contenttypesdjango/contrib/contenttypes/management/__init__.py:1223 ms0.8%
QuerySet.__iter__django/db/models/query.py:3903 ms0.8%
QuerySet._fetch_alldjango/db/models/query.py:20003 ms0.8%
FlatValuesListIterable.__iter__django/db/models/query.py:2773 ms0.8%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15733 ms0.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.6%
CursorWrapper._executedjango/db/backends/utils.py:1052 ms0.6%
Cursor.executepsycopg/cursor.py:1132 ms0.6%
1 smaller frames hidden
2 smaller frames hidden
Command.handledjango/core/management/commands/flush.py:7435 ms8.4%
BaseDatabaseOperations.execute_sql_flushdjango/db/backends/base/operations.py:46829 ms7.0%
CursorWrapper.executedjango/db/backends/utils.py:7929 ms7.0%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:9229 ms7.0%
CursorWrapper._executedjango/db/backends/utils.py:10329 ms7.0%
Cursor.executepsycopg/cursor.py:11329 ms7.0%
Connection.waitpsycopg/connection.py:49529 ms7.0%
BaseDatabaseOperations.execute_sql_flushdjango/db/backends/base/operations.py:4626 ms1.4%
Atomic.__exit__django/db/transaction.py:2636 ms1.4%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:266 ms1.4%
BaseDatabaseWrapper.commitdjango/db/backends/base/base.py:3276 ms1.4%
BaseDatabaseWrapper._commitdjango/db/backends/base/base.py:3036 ms1.4%
Connection.commitpsycopg/connection.py:3096 ms1.4%
Connection.waitpsycopg/connection.py:4956 ms1.4%
Command.handledjango/core/management/commands/flush.py:523 ms0.8%
sql_flushdjango/core/management/sql.py:113 ms0.8%
BaseDatabaseIntrospection.django_table_namesdjango/db/backends/base/introspection.py:1133 ms0.8%
BaseDatabaseIntrospection.table_namesdjango/db/backends/base/introspection.py:603 ms0.8%
BaseDatabaseIntrospection.table_names.<locals>.get_namesdjango/db/backends/base/introspection.py:543 ms0.8%
DatabaseIntrospection.get_table_listdjango/db/backends/postgresql/introspection.py:583 ms0.8%
CursorWrapper.executedjango/db/backends/utils.py:793 ms0.8%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:923 ms0.8%
CursorWrapper._executedjango/db/backends/utils.py:1033 ms0.8%
Cursor.executepsycopg/cursor.py:1133 ms0.8%
Connection.waitpsycopg/connection.py:4953 ms0.8%
1 smaller frames hidden
IngestStartEndpointTest.test_ingest_end_after_progressapps/api/tests.py:24660 ms14.5%
IngestStartEndpointTest.join_workersapps/api/tests.py:76 drain(current_app(), raise_on_failure=True)60 ms14.5%
drainpotatoq/testing.py:7360 ms14.5%
executepotatoq/worker/executor.py:28860 ms14.5%
_executepotatoq/worker/executor.py:36857 ms13.7%
Task.__call__potatoq/task.py:19257 ms13.7%
warm_reportsapps/api/tasks.py:266 flaky_report(Project.objects.get(pk=project_id), DEFAULT_DAYS)19 ms4.5%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:8712 ms2.8%
QuerySet.getdjango/db/models/query.py:63512 ms2.8%
QuerySet.__len__django/db/models/query.py:37212 ms2.8%
QuerySet._fetch_alldjango/db/models/query.py:200012 ms2.8%
ModelIterable.__iter__django/db/models/query.py:9512 ms2.8%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:162212 ms2.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2612 ms2.8%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:32012 ms2.8%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:29612 ms2.8%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:30312 ms2.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2612 ms2.8%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:27912 ms2.8%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2612 ms2.8%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:25610 ms2.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2610 ms2.5%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:33310 ms2.5%
Connection.connectpsycopg/connection.py:1099 ms2.2%
wait_connpsycopg/waiting.py:1413 ms0.8%
EpollSelector.select<stdlib>/selectors.py:4523 ms0.8%
wait_connpsycopg/waiting.py:1453 ms0.8%
BaseConnection._connect_genpsycopg/_connection_base.py:4393 ms0.8%
wait_connpsycopg/waiting.py:1362 ms0.6%
BaseConnection._connect_genpsycopg/_connection_base.py:4392 ms0.6%
1 smaller frames hidden
1 smaller frames hidden
flaky_reportapps/projects/flakiness.py:2535 ms1.1%
compute_flaky_reportapps/projects/flakiness.py:2685 ms1.1%
failing_test_idsapps/projects/flakiness.py:202 ids = set(2 ms0.6%
QuerySet.__iter__django/db/models/query.py:3902 ms0.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.6%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms0.6%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.6%
failing_test_idsapps/projects/flakiness.py:212 ids |= set(2 ms0.6%
QuerySet.__iter__django/db/models/query.py:3902 ms0.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.6%
FlatValuesListIterable.__iter__django/db/models/query.py:2772 ms0.6%
SQLCompiler.results_iterdjango/db/models/sql/compiler.py:15732 ms0.6%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16242 ms0.6%
CursorWrapper.executedjango/db/backends/utils.py:792 ms0.6%
CursorWrapper._execute_with_wrappersdjango/db/backends/utils.py:922 ms0.6%
flaky_reportapps/projects/flakiness.py:2502 ms0.6%
Atomic.__enter__django/db/transaction.py:19819 ms4.5%
BaseDatabaseWrapper.get_autocommitdjango/db/backends/base/base.py:45419 ms4.5%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:30319 ms4.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2619 ms4.5%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:27919 ms4.5%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2619 ms4.5%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:25617 ms4.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:2617 ms4.2%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:33317 ms4.2%
Connection.connectpsycopg/connection.py:10917 ms4.2%
wait_connpsycopg/waiting.py:14510 ms2.5%
BaseConnection._connect_genpsycopg/_connection_base.py:43910 ms2.5%
wait_connpsycopg/waiting.py:1416 ms1.4%
EpollSelector.select<stdlib>/selectors.py:4526 ms1.4%
1 smaller frames hidden
1 smaller frames hidden
process_ingest_progressapps/api/tasks.py:1213 ms0.8%
process_ingest_progressapps/api/tasks.py:1852 ms0.6%
update_session_countsapps/api/tasks.py:193 counts = TestRun.objects.filter(session=session).aggregate(2 ms0.6%
QuerySet.aggregatedjango/db/models/query.py:5942 ms0.6%
process_ingest_endapps/api/tasks.py:2062 ms0.6%
QuerySet.getdjango/db/models/query.py:6352 ms0.6%
QuerySet.__len__django/db/models/query.py:3722 ms0.6%
QuerySet._fetch_alldjango/db/models/query.py:20002 ms0.6%
10 smaller frames hidden
_executepotatoq/worker/executor.py:3562 ms0.6%
Signal.sendpotatoq/signals.py:1192 ms0.6%
_close_old_connectionspotatoq/contrib/django/__init__.py:2722 ms0.6%
close_old_connectionsdjango/db/__init__.py:592 ms0.6%
BaseDatabaseWrapper.close_if_unusable_or_obsoletedjango/db/backends/base/base.py:6152 ms0.6%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:262 ms0.6%
BaseDatabaseWrapper.closedjango/db/backends/base/base.py:3612 ms0.6%
1 smaller frames hidden
IngestStartEndpointTest.test_ingest_end_after_progressapps/api/tests.py:25523 ms5.6%
IngestStartEndpointTest.join_workersapps/api/tests.py:76 drain(current_app(), raise_on_failure=True)23 ms5.6%
drainpotatoq/testing.py:7322 ms5.3%
executepotatoq/worker/executor.py:28822 ms5.3%
_executepotatoq/worker/executor.py:36822 ms5.3%
Task.__call__potatoq/task.py:19222 ms5.3%
Atomic.__enter__django/db/transaction.py:1988 ms2.0%
BaseDatabaseWrapper.get_autocommitdjango/db/backends/base/base.py:4548 ms2.0%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:3038 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:2798 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2568 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:3338 ms2.0%
Connection.connectpsycopg/connection.py:1097 ms1.7%
wait_connpsycopg/waiting.py:1455 ms1.1%
BaseConnection._connect_genpsycopg/_connection_base.py:4395 ms1.1%
wait_connpsycopg/waiting.py:1412 ms0.6%
EpollSelector.select<stdlib>/selectors.py:4522 ms0.6%
1 smaller frames hidden
process_ingest_progressapps/api/tasks.py:1215 ms1.1%
TestManager.upsertapps/projects/models.py:2292 ms0.6%
2 smaller frames hidden
process_ingest_progressapps/api/tasks.py:118 session = Session.objects.get(project=ingest.project, ingest_id=parent_ingest_id)2 ms0.6%
process_ingest_progressapps/api/tasks.py:1852 ms0.6%
4 smaller frames hidden
1 smaller frames hidden
IngestStartEndpointTest.setUpapps/api/tests.py:73 self.project = baker.make("projects.Project", secrettokens_set__token=self.secret_token)14 ms3.3%
makemodel_bakery/baker.py:14714 ms3.3%
Baker.makemodel_bakery/baker.py:40614 ms3.3%
Baker._makemodel_bakery/baker.py:47112 ms2.8%
Baker.generate_valuemodel_bakery/baker.py:80012 ms2.8%
gen_relatedmodel_bakery/random_gen.py:27412 ms2.8%
makemodel_bakery/baker.py:14712 ms2.8%
Baker.makemodel_bakery/baker.py:40612 ms2.8%
Baker._makemodel_bakery/baker.py:48212 ms2.8%
Baker.instancemodel_bakery/baker.py:53512 ms2.8%
Model.savedjango/db/models/base.py:87412 ms2.8%
Model.save_basedjango/db/models/base.py:96612 ms2.8%
Model._save_tabledjango/db/models/base.py:11679 ms2.2%
Model._do_insertdjango/db/models/base.py:12189 ms2.2%
BaseManager._get_queryset_methods.<locals>.create_method.<locals>.manager_methoddjango/db/models/manager.py:879 ms2.2%
QuerySet._insertdjango/db/models/query.py:19189 ms2.2%
SQLInsertCompiler.execute_sqldjango/db/models/sql/compiler.py:19238 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3208 ms2.0%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2968 ms2.0%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:3038 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:2798 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2567 ms1.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:267 ms1.7%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:3337 ms1.7%
Connection.connectpsycopg/connection.py:1097 ms1.7%
wait_connpsycopg/waiting.py:1413 ms0.8%
EpollSelector.select<stdlib>/selectors.py:4523 ms0.8%
wait_connpsycopg/waiting.py:1453 ms0.8%
BaseConnection._connect_genpsycopg/_connection_base.py:4393 ms0.8%
1 smaller frames hidden
1 smaller frames hidden
Model._save_tabledjango/db/models/base.py:11562 ms0.6%
2 smaller frames hidden
IngestStartEndpointTest.test_ingest_end_after_progressapps/api/tests.py:24813 ms3.1%
IngestStartEndpointTest.ingest_progressapps/api/tests.py:10613 ms3.1%
Client.postdjango/test/client.py:115313 ms3.1%
RequestFactory.postdjango/test/client.py:49913 ms3.1%
RequestFactory.genericdjango/test/client.py:67113 ms3.1%
Client.requestdjango/test/client.py:108213 ms3.1%
ClientHandler.__call__django/test/client.py:18613 ms3.1%
BaseHandler.get_responsedjango/core/handlers/base.py:14113 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:13013 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
MiddlewareMixin.__call__django/utils/deprecation.py:30913 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:12313 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
MiddlewareMixin.__call__django/utils/deprecation.py:30913 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
MiddlewareMixin.__call__django/utils/deprecation.py:30913 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
MiddlewareMixin.__call__django/utils/deprecation.py:30913 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
MiddlewareMixin.__call__django/utils/deprecation.py:30913 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
MiddlewareMixin.__call__django/utils/deprecation.py:30913 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
MiddlewareMixin.__call__django/utils/deprecation.py:30913 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:3413 ms3.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:5513 ms3.1%
BaseHandler._get_responsedjango/core/handlers/base.py:19813 ms3.1%
csrf_exempt.<locals>._view_wrapperdjango/views/decorators/csrf.py:6513 ms3.1%
jsonify_errors.<locals>.wrapped_viewapps/api/urls.py:3713 ms3.1%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:6413 ms3.1%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:72 project = get_object_or_404(Project, secrettokens__token=request.headers.get("Authorization"))10 ms2.5%
get_object_or_404django/shortcuts.py:9010 ms2.5%
QuerySet.getdjango/db/models/query.py:63510 ms2.5%
QuerySet.__len__django/db/models/query.py:37210 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:200010 ms2.5%
ModelIterable.__iter__django/db/models/query.py:9510 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16228 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3208 ms2.0%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2968 ms2.0%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:3038 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:2798 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2567 ms1.7%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:267 ms1.7%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:3337 ms1.7%
Connection.connectpsycopg/connection.py:1097 ms1.7%
wait_connpsycopg/waiting.py:1413 ms0.8%
EpollSelector.select<stdlib>/selectors.py:4523 ms0.8%
wait_connpsycopg/waiting.py:1453 ms0.8%
BaseConnection._connect_genpsycopg/_connection_base.py:4393 ms0.8%
1 smaller frames hidden
2 smaller frames hidden
2 smaller frames hidden
IngestStartEndpointTest.test_ingest_end_after_progressapps/api/tests.py:257 run = Run.objects.filter(project=self.project).get()12 ms2.8%
QuerySet.getdjango/db/models/query.py:63510 ms2.5%
QuerySet.__len__django/db/models/query.py:37210 ms2.5%
QuerySet._fetch_alldjango/db/models/query.py:200010 ms2.5%
ModelIterable.__iter__django/db/models/query.py:9510 ms2.5%
SQLCompiler.execute_sqldjango/db/models/sql/compiler.py:16229 ms2.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:269 ms2.2%
BaseDatabaseWrapper.cursordjango/db/backends/base/base.py:3209 ms2.2%
BaseDatabaseWrapper._cursordjango/db/backends/base/base.py:2969 ms2.2%
SimpleTestCase.ensure_connection_patch_method.<locals>.patched_ensure_connectiondjango/test/testcases.py:3039 ms2.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:269 ms2.2%
BaseDatabaseWrapper.ensure_connectiondjango/db/backends/base/base.py:2799 ms2.2%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:269 ms2.2%
BaseDatabaseWrapper.connectdjango/db/backends/base/base.py:2568 ms2.0%
async_unsafe.<locals>.decorator.<locals>.innerdjango/utils/asyncio.py:268 ms2.0%
DatabaseWrapper.get_new_connectiondjango/db/backends/postgresql/base.py:3338 ms2.0%
Connection.connectpsycopg/connection.py:1098 ms2.0%
wait_connpsycopg/waiting.py:1455 ms1.1%
BaseConnection._connect_genpsycopg/_connection_base.py:4395 ms1.1%
wait_connpsycopg/waiting.py:1413 ms0.8%
EpollSelector.select<stdlib>/selectors.py:4523 ms0.8%
1 smaller frames hidden
1 smaller frames hidden
1 smaller frames hidden
IngestStartEndpointTest.test_ingest_end_after_progressapps/api/tests.py:2445 ms1.1%
IngestStartEndpointTest.ingest_endapps/api/tests.py:1145 ms1.1%
Client.postdjango/test/client.py:11535 ms1.1%
RequestFactory.postdjango/test/client.py:4995 ms1.1%
RequestFactory.genericdjango/test/client.py:6715 ms1.1%
Client.requestdjango/test/client.py:10825 ms1.1%
ClientHandler.__call__django/test/client.py:1865 ms1.1%
BaseHandler.get_responsedjango/core/handlers/base.py:1415 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
DebugToolbarMiddleware.__call__debug_toolbar/middleware.py:1305 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3095 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
WhiteNoiseMiddleware.__call__whitenoise/middleware.py:1235 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3095 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3095 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3095 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3095 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3095 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
MiddlewareMixin.__call__django/utils/deprecation.py:3095 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
AccountMiddleware.<locals>.middlewareallauth/account/middleware.py:345 ms1.1%
convert_exception_to_response.<locals>.innerdjango/core/handlers/exception.py:555 ms1.1%
BaseHandler._get_responsedjango/core/handlers/base.py:1985 ms1.1%
csrf_exempt.<locals>._view_wrapperdjango/views/decorators/csrf.py:655 ms1.1%
jsonify_errors.<locals>.wrapped_viewapps/api/urls.py:375 ms1.1%
require_http_methods.<locals>.decorator.<locals>.innerdjango/views/decorators/http.py:645 ms1.1%
api_request.<locals>.decorator.<locals>.wrapped_viewapps/api/urls.py:73 touch_token(request.headers.get("Authorization"))2 ms0.6%
2 smaller frames hidden
1 smaller frames hidden
Estimated from 358 samples; phase durations are exact. Frames from pytest and pluggy are
hidden
.
Hot lines in your code
|
apps/api/tests.py:98
return self.client.post(
IngestStartEndpointTest.ingest_start
· Libraries
|
193 ms |
|
apps/api/tests.py:76
drain(current_app(), raise_on_failure=True)
IngestStartEndpointTest.join_workers
· Database
|
34 ms |
|
apps/api/tests.py:73
self.project = baker.make("projects.Project", secrettokens_set__token=self.secret_token)
IngestStartEndpointTest.setUp
· Database
|
14 ms |
|
apps/api/urls.py:72
project = get_object_or_404(Project, secrettokens__token=request.headers.get("Authorization"))
api_request.<locals>.decorator.<locals>.wrapped_view
· Database
|
13 ms |
|
apps/api/tests.py:257
run = Run.objects.filter(project=self.project).get()
IngestStartEndpointTest.test_ingest_end_after_progress
· Database
|
12 ms |
|
apps/api/tasks.py:266
flaky_report(Project.objects.get(pk=project_id), DEFAULT_DAYS)
warm_reports
· Database
|
12 ms |
|
apps/api/urls.py:59
SecretTokens.objects.filter(pk__in=list(stale)).update(date_last_used=now)
touch_token
· Database
|
3 ms |
|
apps/api/tasks.py:118
session = Session.objects.get(project=ingest.project, ingest_id=parent_ingest_id)
process_ingest_progress
· Database
|
3 ms |
|
apps/api/tasks.py:193
counts = TestRun.objects.filter(session=session).aggregate(
update_session_counts
· Database
|
3 ms |
|
apps/projects/models.py:188
super().save(*args, **kwargs)
Run.save
· Database
|
2 ms |
Fixtures
Exact setup time| _template_string_if_invalid_marker function | 0.06 ms |
| _dj_autoclear_mailbox function | 0.06 ms |
| _django_db_marker function | 0.05 ms |
| _django_clear_site_cache function | 0.05 ms |
| _live_server_helper function | 0.05 ms |
| _django_set_urlconf function | 0.04 ms |
| monkeypatch function | 0.02 ms |
Database
133 queries · 97 ms
Repeated queries are usually N+1 lookups: fetch them once with select_related / prefetch_related (or selectinload).
20×
SELECT "django_content_type"."model" AS "model" FROM "django_content_type" WHERE "django_content_type"."app_label" = %s
10×
SELECT "django_content_type"."id", "django_content_type"."app_label", "django_content_type"."model" FROM "django_content_type" WHERE ("django_content_type"."app_label" = %s AND "django_content_type"."model" IN (…))
10×
SELECT "auth_permission"."content_type_id" AS "content_type", "auth_permission"."codename" AS "codename" FROM "auth_permission" INNER JOIN "django_content_type" ON ("auth_permission"."content_type_id" = "django_content_type"."id") WHERE "auth_permission"."content_type_id" IN (…) ORDER BY "django_co…
10×
INSERT INTO "auth_permission" ("name", "content_type_id", "codename") SELECT * FROM UNNEST((%s)::varchar(?)[], (%s)::integer[], (%s)::varchar(?)[]) RETURNING "auth_permission"."id"
8×
SELECT "projects_project"."id", "projects_project"."organization_id", "projects_project"."name", "projects_project"."slug", "projects_project"."public", "projects_project"."description", "projects_project"."date_created", "projects_project"."date_updated", "projects_project"."created_by_id" FROM "p…
Biggest pieces of work
|
call test body
apps/api/tests.py:239
|
322 ms |
|
call _post_teardown
django/test/testcases.py:1240
|
79 ms |
|
call setUp
apps/api/tests.py:73
|
14 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 | 416 ms | Profile |
| 1 week, 5 days ago | CI github-actions:test | passed | 170 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 280 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 227 ms | Profile |
| 2 weeks, 1 day ago | CI github-actions:test | passed | 321 ms | Profile |
| 2 weeks, 2 days ago | CI github-actions:test | passed | 224 ms | Profile |
| 2 weeks, 4 days ago | CI github-actions:test | passed | 304 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 296 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 304 ms | Profile |
| 2 weeks, 6 days ago | CI github-actions:test | passed | 468 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 184 ms | Profile |
| 3 weeks ago | CI github-actions:test | passed | 304 ms | Profile |