All checks passed! ============================= test session starts ============================== platform linux -- Python 3.12.13, pytest-9.1.1, pluggy-1.6.0 django: version: 6.0.6, settings: settings.test (from ini) rootdir: /app configfile: pyproject.toml testpaths: tests plugins: cov-7.1.0, django-4.12.0, asyncio-1.4.0, mock-3.15.1, anyio-4.14.0, Faker-40.23.0, factoryboy-2.8.1 asyncio: mode=Mode.AUTO, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function collected 739 items tests/assets/api/test_views.py ......... [ 1%] tests/assets/services/test_defaults.py .... [ 1%] tests/assets/test_models.py ....... [ 2%] tests/capturer/test_overlay_service.py ........ [ 3%] tests/capturer/test_tasks.py ................ [ 5%] tests/common/test_commands.py .. [ 6%] tests/compositor/api/test_views.py ..................................... [ 11%] ............. [ 12%] tests/compositor/services/test_events.py ............. [ 14%] tests/compositor/services/test_lifecycle.py ............................ [ 18%] ........................................................................ [ 28%] ................. [ 30%] tests/compositor/test_models.py .... [ 31%] tests/compositor/test_tasks.py ....FFFF................................. [ 36%] . [ 36%] tests/overlays/api/test_pack_sessions.py ......... [ 38%] tests/overlays/api/test_project_control.py .... [ 38%] tests/overlays/api/test_project_create.py ........ [ 39%] tests/overlays/api/test_project_delete.py ...... [ 40%] tests/overlays/api/test_project_list.py ........ [ 41%] tests/overlays/api/test_project_publish.py .... [ 42%] tests/overlays/api/test_project_sessions.py ............................ [ 45%] ............ [ 47%] tests/overlays/api/test_project_update.py .... [ 48%] tests/overlays/api/test_render.py ..... [ 48%] tests/overlays/api/test_views.py ............. [ 50%] tests/overlays/services/test_account_overlay_plan.py .. [ 50%] tests/overlays/services/test_control.py .................... [ 53%] tests/overlays/services/test_create_project.py ....... [ 54%] tests/overlays/services/test_defaults.py .... [ 54%] tests/overlays/services/test_delete_project.py .... [ 55%] tests/overlays/services/test_image_url_validation.py ...... [ 56%] tests/overlays/services/test_interactive.py ............................ [ 60%] ......... [ 61%] tests/overlays/services/test_packs.py ........... [ 62%] tests/overlays/services/test_resolve_render_config.py .. [ 63%] tests/overlays/services/test_seed_templates.py .......... [ 64%] tests/overlays/test_models.py ....... [ 65%] tests/recording/test_ffmpeg.py .... [ 65%] tests/recording/test_models.py ... [ 66%] tests/recording/test_tasks.py ...... [ 67%] tests/recording/test_views.py ........... [ 68%] tests/sources/api/test_views.py ...................... [ 71%] tests/sources/services/test_mediamtx.py ................................ [ 75%] .... [ 76%] tests/broadcast/test_consumers.py ... [ 76%] tests/broadcast/test_routing.py . [ 76%] tests/compositor/services/test_lifecycle.py . [ 77%] tests/overlays/test_consumers.py ........ [ 78%] tests/overlays/test_routing.py ... [ 78%] tests/overlays/test_session_consumers.py ......... [ 79%] tests/assets/test_models.py . [ 79%] tests/capturer/test_overlay_service.py ....................... [ 83%] tests/capturer/test_process_manager.py .................. [ 85%] tests/capturer/test_tasks.py ... [ 85%] tests/common/services/test_auth.py ...... [ 86%] tests/compositor/services/test_dispatcher.py ........................... [ 90%] ..................................... [ 95%] tests/compositor/test_choices.py .. [ 95%] tests/compositor/test_tasks.py ............. [ 97%] tests/overlays/test_choices.py ....... [ 98%] tests/overlays/test_models.py . [ 98%] tests/sources/services/test_mediamtx.py ....... [ 99%] tests/test_asgi.py . [ 99%] tests/test_storage.py ... [100%] =================================== FAILURES =================================== _________ test_run_compositor_removes_overlay_on_overlay_source_error __________ self = , value = 'ov-1' def to_python(self, value): if value is not None and not isinstance(value, uuid.UUID): input_form = "int" if isinstance(value, int) else "hex" try: > return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2766: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[AttributeError("'UUID' object has no attribute 'int'") raised in repr()] UUID object at 0x711c028cd910> hex = 'ov1', bytes = None, bytes_le = None, fields = None, int = None version = None, is_safe = def __init__(self, hex=None, bytes=None, bytes_le=None, fields=None, int=None, version=None, *, is_safe=SafeUUID.unknown): r"""Create a UUID from either a string of 32 hexadecimal digits, a string of 16 bytes as the 'bytes' argument, a string of 16 bytes in little-endian order as the 'bytes_le' argument, a tuple of six integers (32-bit time_low, 16-bit time_mid, 16-bit time_hi_version, 8-bit clock_seq_hi_variant, 8-bit clock_seq_low, 48-bit node) as the 'fields' argument, or a single 128-bit integer as the 'int' argument. When a string of hex digits is given, curly braces, hyphens, and a URN prefix are all optional. For example, these expressions all yield the same UUID: UUID('{12345678-1234-5678-1234-567812345678}') UUID('12345678123456781234567812345678') UUID('urn:uuid:12345678-1234-5678-1234-567812345678') UUID(bytes='\x12\x34\x56\x78'*4) UUID(bytes_le='\x78\x56\x34\x12\x34\x12\x78\x56' + '\x12\x34\x56\x78\x12\x34\x56\x78') UUID(fields=(0x12345678, 0x1234, 0x5678, 0x12, 0x34, 0x567812345678)) UUID(int=0x12345678123456781234567812345678) Exactly one of 'hex', 'bytes', 'bytes_le', 'fields', or 'int' must be given. The 'version' argument is optional; if given, the resulting UUID will have its variant and version set according to RFC 4122, overriding the given 'hex', 'bytes', 'bytes_le', 'fields', or 'int'. is_safe is an enum exposed as an attribute on the instance. It indicates whether the UUID has been generated in a way that is safe for multiprocessing applications, via uuid_generate_time_safe(3). """ if [hex, bytes, bytes_le, fields, int].count(None) != 4: raise TypeError('one of the hex, bytes, bytes_le, fields, ' 'or int arguments must be given') if hex is not None: hex = hex.replace('urn:', '').replace('uuid:', '') hex = hex.strip('{}').replace('-', '') if len(hex) != 32: > raise ValueError('badly formed hexadecimal UUID string') E ValueError: badly formed hexadecimal UUID string /usr/local/lib/python3.12/uuid.py:178: ValueError During handling of the above exception, another exception occurred: mocker = @pytest.mark.django_db def test_run_compositor_removes_overlay_on_overlay_source_error(mocker): """A GStreamer error traced back to an overlay's own source must remove just that overlay — not be misattributed to a producer source or tear down the pipeline.""" Gst, pipeline, compositor, audiomix, bus = _make_gst_and_pipeline() error_msg = MagicMock() error_msg.type = Gst.MessageType.ERROR # Simulate an error posted by a nested internal element of the overlay's # uridecodebin: msg.src itself isn't named overlay-src-*, but walking up # .get_parent() reaches the top-level overlay-src-{id} element. inner_elem = MagicMock() inner_elem.get_name.return_value = 'souphttpsrc0' top_elem = MagicMock() top_elem.get_name.return_value = 'overlay-src-ov-1' top_elem.get_parent.return_value = None inner_elem.get_parent.return_value = top_elem error_msg.src = inner_elem err = MagicMock() err.domain = 'gst-resource-error-quark' err.code = 3 error_msg.parse_error.return_value = (err, 'debug info') bus.timed_pop_filtered.side_effect = [error_msg, None] mocker.patch('apps.compositor.tasks.get_compositor_commands', side_effect=[[{'action': 'stop'}]]) mocker.patch('apps.compositor.tasks.build_composition_pipeline', return_value=(pipeline, compositor, audiomix)) mock_remove_overlay = mocker.patch('apps.compositor.tasks.remove_overlay') mock_remove_source = mocker.patch('apps.compositor.tasks.remove_source') mocker.patch('apps.compositor.tasks._get_gst', return_value=Gst) > run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') tests/compositor/test_tasks.py:295: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/local/lib/python3.12/site-packages/celery/local.py:182: in __call__ return self._get_current_object()(*a, **kw) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/celery/app/task.py:430: in __call__ return self.run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ src/apps/compositor/tasks.py:392: in run_compositor if _handle_bus_message( src/apps/compositor/tasks.py:290: in _handle_bus_message return _handle_bus_error( src/apps/compositor/tasks.py:536: in _handle_bus_error _notify_source_auto_removed(object_id, sid) src/apps/compositor/tasks.py:496: in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/manager.py:87: in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1542: in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1560: in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1570: in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1676: in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1708: in _add_q child_clause, needed_inner = self.build_filter( /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1618: in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1445: in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:35: in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:391: in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:93: in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2750: in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , value = 'ov-1' def to_python(self, value): if value is not None and not isinstance(value, uuid.UUID): input_form = "int" if isinstance(value, int) else "hex" try: return uuid.UUID(**{input_form: value}) except (AttributeError, ValueError): > raise exceptions.ValidationError( self.error_messages["invalid"], code="invalid", params={"value": value}, ) E django.core.exceptions.ValidationError: ['“ov-1” is not a valid UUID.'] /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2768: ValidationError ----------------------------- Captured stderr call ----------------------------- --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 295, in test_run_compositor_removes_overlay_on_overlay_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 378, in run_compositor logger.info( Message: 'Compositor pipeline started: object_id=%s sources=%d overlays=%d' Arguments: ('00000000-0000-0000-0000-000000000099', 0, 0) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 295, in test_run_compositor_removes_overlay_on_overlay_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 378, in run_compositor logger.info( Message: 'Compositor pipeline started: object_id=%s sources=%d overlays=%d' Arguments: ('00000000-0000-0000-0000-000000000099', 0, 0) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 295, in test_run_compositor_removes_overlay_on_overlay_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( File "/app/src/apps/compositor/tasks.py", line 532, in _handle_bus_error logger.warning( Message: 'Overlay source error, removing overlay: object_id=%s overlay_id=%s error=%s' Arguments: ('00000000-0000-0000-0000-000000000099', 'ov-1', ) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 295, in test_run_compositor_removes_overlay_on_overlay_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( File "/app/src/apps/compositor/tasks.py", line 532, in _handle_bus_error logger.warning( Message: 'Overlay source error, removing overlay: object_id=%s overlay_id=%s error=%s' Arguments: ('00000000-0000-0000-0000-000000000099', 'ov-1', ) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 536, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“ov-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 295, in test_run_compositor_removes_overlay_on_overlay_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 423, in run_compositor _clear_compositor_task_id(object_id) File "/app/src/apps/compositor/tasks.py", line 581, in _clear_compositor_task_id logger.warning('_clear_compositor_task_id: no Composition found id=%s', object_id) Message: '_clear_compositor_task_id: no Composition found id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 536, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“ov-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 295, in test_run_compositor_removes_overlay_on_overlay_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 423, in run_compositor _clear_compositor_task_id(object_id) File "/app/src/apps/compositor/tasks.py", line 581, in _clear_compositor_task_id logger.warning('_clear_compositor_task_id: no Composition found id=%s', object_id) Message: '_clear_compositor_task_id: no Composition found id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 536, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“ov-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 295, in test_run_compositor_removes_overlay_on_overlay_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 424, in run_compositor logger.info('Compositor pipeline stopped: object_id=%s', object_id) Message: 'Compositor pipeline stopped: object_id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 536, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“ov-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 295, in test_run_compositor_removes_overlay_on_overlay_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 424, in run_compositor logger.info('Compositor pipeline stopped: object_id=%s', object_id) Message: 'Compositor pipeline stopped: object_id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) ------------------------------ Captured log call ------------------------------- INFO sink:tasks.py:378 Compositor pipeline started: object_id=00000000-0000-0000-0000-000000000099 sources=0 overlays=0 WARNING sink:tasks.py:532 Overlay source error, removing overlay: object_id=00000000-0000-0000-0000-000000000099 overlay_id=ov-1 error= WARNING sink:tasks.py:581 _clear_compositor_task_id: no Composition found id=00000000-0000-0000-0000-000000000099 INFO sink:tasks.py:424 Compositor pipeline stopped: object_id=00000000-0000-0000-0000-000000000099 ______________ test_run_compositor_removes_source_on_source_error ______________ self = , value = 'src-1' def to_python(self, value): if value is not None and not isinstance(value, uuid.UUID): input_form = "int" if isinstance(value, int) else "hex" try: > return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2766: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[AttributeError("'UUID' object has no attribute 'int'") raised in repr()] UUID object at 0x711c011aa910> hex = 'src1', bytes = None, bytes_le = None, fields = None, int = None version = None, is_safe = def __init__(self, hex=None, bytes=None, bytes_le=None, fields=None, int=None, version=None, *, is_safe=SafeUUID.unknown): r"""Create a UUID from either a string of 32 hexadecimal digits, a string of 16 bytes as the 'bytes' argument, a string of 16 bytes in little-endian order as the 'bytes_le' argument, a tuple of six integers (32-bit time_low, 16-bit time_mid, 16-bit time_hi_version, 8-bit clock_seq_hi_variant, 8-bit clock_seq_low, 48-bit node) as the 'fields' argument, or a single 128-bit integer as the 'int' argument. When a string of hex digits is given, curly braces, hyphens, and a URN prefix are all optional. For example, these expressions all yield the same UUID: UUID('{12345678-1234-5678-1234-567812345678}') UUID('12345678123456781234567812345678') UUID('urn:uuid:12345678-1234-5678-1234-567812345678') UUID(bytes='\x12\x34\x56\x78'*4) UUID(bytes_le='\x78\x56\x34\x12\x34\x12\x78\x56' + '\x12\x34\x56\x78\x12\x34\x56\x78') UUID(fields=(0x12345678, 0x1234, 0x5678, 0x12, 0x34, 0x567812345678)) UUID(int=0x12345678123456781234567812345678) Exactly one of 'hex', 'bytes', 'bytes_le', 'fields', or 'int' must be given. The 'version' argument is optional; if given, the resulting UUID will have its variant and version set according to RFC 4122, overriding the given 'hex', 'bytes', 'bytes_le', 'fields', or 'int'. is_safe is an enum exposed as an attribute on the instance. It indicates whether the UUID has been generated in a way that is safe for multiprocessing applications, via uuid_generate_time_safe(3). """ if [hex, bytes, bytes_le, fields, int].count(None) != 4: raise TypeError('one of the hex, bytes, bytes_le, fields, ' 'or int arguments must be given') if hex is not None: hex = hex.replace('urn:', '').replace('uuid:', '') hex = hex.strip('{}').replace('-', '') if len(hex) != 32: > raise ValueError('badly formed hexadecimal UUID string') E ValueError: badly formed hexadecimal UUID string /usr/local/lib/python3.12/uuid.py:178: ValueError During handling of the above exception, another exception occurred: mocker = @pytest.mark.django_db def test_run_compositor_removes_source_on_source_error(mocker): """Direct regression test for the original bug: a producer-source error isolates to just that source, not the whole pipeline — there is no special-cased single- source retry/teardown path anymore, structurally, regardless of composition size.""" Gst, pipeline, compositor, audiomix, bus = _make_gst_and_pipeline() error_msg = MagicMock() error_msg.type = Gst.MessageType.ERROR error_msg.src.get_name.return_value = 'source-src-src-1' error_msg.src.get_parent.return_value = None err = MagicMock() err.domain = 'gst-resource-error-quark' err.code = 3 error_msg.parse_error.return_value = (err, 'debug info') bus.timed_pop_filtered.side_effect = [error_msg, None] mocker.patch('apps.compositor.tasks.get_compositor_commands', side_effect=[[{'action': 'stop'}]]) mocker.patch('apps.compositor.tasks.build_composition_pipeline', return_value=(pipeline, compositor, audiomix)) mock_remove_source = mocker.patch('apps.compositor.tasks.remove_source') mocker.patch('apps.compositor.tasks._get_gst', return_value=Gst) mocker.patch('apps.compositor.tasks._acquire_retry_lock', return_value=True) mock_retry = mocker.patch('apps.compositor.tasks.retry_add_source.apply_async') > run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') tests/compositor/test_tasks.py:328: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/local/lib/python3.12/site-packages/celery/local.py:182: in __call__ return self._get_current_object()(*a, **kw) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/celery/app/task.py:430: in __call__ return self.run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ src/apps/compositor/tasks.py:392: in run_compositor if _handle_bus_message( src/apps/compositor/tasks.py:290: in _handle_bus_message return _handle_bus_error( src/apps/compositor/tasks.py:542: in _handle_bus_error _notify_source_auto_removed(object_id, sid) src/apps/compositor/tasks.py:496: in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/manager.py:87: in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1542: in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1560: in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1570: in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1676: in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1708: in _add_q child_clause, needed_inner = self.build_filter( /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1618: in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1445: in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:35: in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:391: in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:93: in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2750: in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , value = 'src-1' def to_python(self, value): if value is not None and not isinstance(value, uuid.UUID): input_form = "int" if isinstance(value, int) else "hex" try: return uuid.UUID(**{input_form: value}) except (AttributeError, ValueError): > raise exceptions.ValidationError( self.error_messages["invalid"], code="invalid", params={"value": value}, ) E django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2768: ValidationError ----------------------------- Captured stderr call ----------------------------- --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 328, in test_run_compositor_removes_source_on_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 378, in run_compositor logger.info( Message: 'Compositor pipeline started: object_id=%s sources=%d overlays=%d' Arguments: ('00000000-0000-0000-0000-000000000099', 0, 0) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 328, in test_run_compositor_removes_source_on_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 378, in run_compositor logger.info( Message: 'Compositor pipeline started: object_id=%s sources=%d overlays=%d' Arguments: ('00000000-0000-0000-0000-000000000099', 0, 0) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 328, in test_run_compositor_removes_source_on_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( File "/app/src/apps/compositor/tasks.py", line 538, in _handle_bus_error logger.warning('Source error, removing source: object_id=%s source_id=%s error=%s', object_id, sid, err) Message: 'Source error, removing source: object_id=%s source_id=%s error=%s' Arguments: ('00000000-0000-0000-0000-000000000099', 'src-1', ) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 328, in test_run_compositor_removes_source_on_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( File "/app/src/apps/compositor/tasks.py", line 538, in _handle_bus_error logger.warning('Source error, removing source: object_id=%s source_id=%s error=%s', object_id, sid, err) Message: 'Source error, removing source: object_id=%s source_id=%s error=%s' Arguments: ('00000000-0000-0000-0000-000000000099', 'src-1', ) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 328, in test_run_compositor_removes_source_on_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 423, in run_compositor _clear_compositor_task_id(object_id) File "/app/src/apps/compositor/tasks.py", line 581, in _clear_compositor_task_id logger.warning('_clear_compositor_task_id: no Composition found id=%s', object_id) Message: '_clear_compositor_task_id: no Composition found id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 328, in test_run_compositor_removes_source_on_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 423, in run_compositor _clear_compositor_task_id(object_id) File "/app/src/apps/compositor/tasks.py", line 581, in _clear_compositor_task_id logger.warning('_clear_compositor_task_id: no Composition found id=%s', object_id) Message: '_clear_compositor_task_id: no Composition found id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 328, in test_run_compositor_removes_source_on_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 424, in run_compositor logger.info('Compositor pipeline stopped: object_id=%s', object_id) Message: 'Compositor pipeline stopped: object_id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 328, in test_run_compositor_removes_source_on_source_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 424, in run_compositor logger.info('Compositor pipeline stopped: object_id=%s', object_id) Message: 'Compositor pipeline stopped: object_id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) ------------------------------ Captured log call ------------------------------- INFO sink:tasks.py:378 Compositor pipeline started: object_id=00000000-0000-0000-0000-000000000099 sources=0 overlays=0 WARNING sink:tasks.py:538 Source error, removing source: object_id=00000000-0000-0000-0000-000000000099 source_id=src-1 error= WARNING sink:tasks.py:581 _clear_compositor_task_id: no Composition found id=00000000-0000-0000-0000-000000000099 INFO sink:tasks.py:424 Compositor pipeline stopped: object_id=00000000-0000-0000-0000-000000000099 _____ test_run_compositor_isolates_decoder_error_not_just_connection_error _____ self = , value = 'src-1' def to_python(self, value): if value is not None and not isinstance(value, uuid.UUID): input_form = "int" if isinstance(value, int) else "hex" try: > return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2766: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[AttributeError("'UUID' object has no attribute 'int'") raised in repr()] UUID object at 0x711c01e12250> hex = 'src1', bytes = None, bytes_le = None, fields = None, int = None version = None, is_safe = def __init__(self, hex=None, bytes=None, bytes_le=None, fields=None, int=None, version=None, *, is_safe=SafeUUID.unknown): r"""Create a UUID from either a string of 32 hexadecimal digits, a string of 16 bytes as the 'bytes' argument, a string of 16 bytes in little-endian order as the 'bytes_le' argument, a tuple of six integers (32-bit time_low, 16-bit time_mid, 16-bit time_hi_version, 8-bit clock_seq_hi_variant, 8-bit clock_seq_low, 48-bit node) as the 'fields' argument, or a single 128-bit integer as the 'int' argument. When a string of hex digits is given, curly braces, hyphens, and a URN prefix are all optional. For example, these expressions all yield the same UUID: UUID('{12345678-1234-5678-1234-567812345678}') UUID('12345678123456781234567812345678') UUID('urn:uuid:12345678-1234-5678-1234-567812345678') UUID(bytes='\x12\x34\x56\x78'*4) UUID(bytes_le='\x78\x56\x34\x12\x34\x12\x78\x56' + '\x12\x34\x56\x78\x12\x34\x56\x78') UUID(fields=(0x12345678, 0x1234, 0x5678, 0x12, 0x34, 0x567812345678)) UUID(int=0x12345678123456781234567812345678) Exactly one of 'hex', 'bytes', 'bytes_le', 'fields', or 'int' must be given. The 'version' argument is optional; if given, the resulting UUID will have its variant and version set according to RFC 4122, overriding the given 'hex', 'bytes', 'bytes_le', 'fields', or 'int'. is_safe is an enum exposed as an attribute on the instance. It indicates whether the UUID has been generated in a way that is safe for multiprocessing applications, via uuid_generate_time_safe(3). """ if [hex, bytes, bytes_le, fields, int].count(None) != 4: raise TypeError('one of the hex, bytes, bytes_le, fields, ' 'or int arguments must be given') if hex is not None: hex = hex.replace('urn:', '').replace('uuid:', '') hex = hex.strip('{}').replace('-', '') if len(hex) != 32: > raise ValueError('badly formed hexadecimal UUID string') E ValueError: badly formed hexadecimal UUID string /usr/local/lib/python3.12/uuid.py:178: ValueError During handling of the above exception, another exception occurred: mocker = @pytest.mark.django_db def test_run_compositor_isolates_decoder_error_not_just_connection_error(mocker): """Regression test for the error-attribution gap: add_source's depay/parse/decoder elements (source-vdec-{id} etc.) are added directly to the pipeline as siblings of source-src-{id}, not as children of a bin, so an error posted by the decoder itself (e.g. corrupt H.264 from a flaky producer) has no ancestry path back to source-src-{id} — only checking the element's own name against every known role prefix (not just walking up an ancestry that doesn't exist for these elements) catches this. Without this fix, a decoder error would fall through as unattributable and tear down the entire composition, reintroducing the original bug through a different failure class.""" Gst, pipeline, compositor, audiomix, bus = _make_gst_and_pipeline() error_msg = MagicMock() error_msg.type = Gst.MessageType.ERROR # avdec_h264 posting a decode error — named source-vdec-{id} by _link_video_pad, # added as a pipeline-level sibling, not nested inside source-src-{id}. error_msg.src.get_name.return_value = 'source-vdec-src-1' error_msg.src.get_parent.return_value = None err = MagicMock() err.domain = 'gst-stream-error-quark' err.code = 1 error_msg.parse_error.return_value = (err, 'debug info') bus.timed_pop_filtered.side_effect = [error_msg, None] mocker.patch('apps.compositor.tasks.get_compositor_commands', side_effect=[[{'action': 'stop'}]]) mocker.patch('apps.compositor.tasks.build_composition_pipeline', return_value=(pipeline, compositor, audiomix)) mock_remove_source = mocker.patch('apps.compositor.tasks.remove_source') mocker.patch('apps.compositor.tasks._get_gst', return_value=Gst) mocker.patch('apps.compositor.tasks._acquire_retry_lock', return_value=True) mocker.patch('apps.compositor.tasks.retry_add_source.apply_async') > run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') tests/compositor/test_tasks.py:371: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/local/lib/python3.12/site-packages/celery/local.py:182: in __call__ return self._get_current_object()(*a, **kw) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/celery/app/task.py:430: in __call__ return self.run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ src/apps/compositor/tasks.py:392: in run_compositor if _handle_bus_message( src/apps/compositor/tasks.py:290: in _handle_bus_message return _handle_bus_error( src/apps/compositor/tasks.py:542: in _handle_bus_error _notify_source_auto_removed(object_id, sid) src/apps/compositor/tasks.py:496: in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/manager.py:87: in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1542: in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1560: in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1570: in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1676: in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1708: in _add_q child_clause, needed_inner = self.build_filter( /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1618: in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1445: in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:35: in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:391: in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:93: in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2750: in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , value = 'src-1' def to_python(self, value): if value is not None and not isinstance(value, uuid.UUID): input_form = "int" if isinstance(value, int) else "hex" try: return uuid.UUID(**{input_form: value}) except (AttributeError, ValueError): > raise exceptions.ValidationError( self.error_messages["invalid"], code="invalid", params={"value": value}, ) E django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2768: ValidationError ----------------------------- Captured stderr call ----------------------------- --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 371, in test_run_compositor_isolates_decoder_error_not_just_connection_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 378, in run_compositor logger.info( Message: 'Compositor pipeline started: object_id=%s sources=%d overlays=%d' Arguments: ('00000000-0000-0000-0000-000000000099', 0, 0) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 371, in test_run_compositor_isolates_decoder_error_not_just_connection_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 378, in run_compositor logger.info( Message: 'Compositor pipeline started: object_id=%s sources=%d overlays=%d' Arguments: ('00000000-0000-0000-0000-000000000099', 0, 0) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 371, in test_run_compositor_isolates_decoder_error_not_just_connection_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( File "/app/src/apps/compositor/tasks.py", line 538, in _handle_bus_error logger.warning('Source error, removing source: object_id=%s source_id=%s error=%s', object_id, sid, err) Message: 'Source error, removing source: object_id=%s source_id=%s error=%s' Arguments: ('00000000-0000-0000-0000-000000000099', 'src-1', ) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 371, in test_run_compositor_isolates_decoder_error_not_just_connection_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( File "/app/src/apps/compositor/tasks.py", line 538, in _handle_bus_error logger.warning('Source error, removing source: object_id=%s source_id=%s error=%s', object_id, sid, err) Message: 'Source error, removing source: object_id=%s source_id=%s error=%s' Arguments: ('00000000-0000-0000-0000-000000000099', 'src-1', ) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 371, in test_run_compositor_isolates_decoder_error_not_just_connection_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 423, in run_compositor _clear_compositor_task_id(object_id) File "/app/src/apps/compositor/tasks.py", line 581, in _clear_compositor_task_id logger.warning('_clear_compositor_task_id: no Composition found id=%s', object_id) Message: '_clear_compositor_task_id: no Composition found id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 371, in test_run_compositor_isolates_decoder_error_not_just_connection_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 423, in run_compositor _clear_compositor_task_id(object_id) File "/app/src/apps/compositor/tasks.py", line 581, in _clear_compositor_task_id logger.warning('_clear_compositor_task_id: no Composition found id=%s', object_id) Message: '_clear_compositor_task_id: no Composition found id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 371, in test_run_compositor_isolates_decoder_error_not_just_connection_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 424, in run_compositor logger.info('Compositor pipeline stopped: object_id=%s', object_id) Message: 'Compositor pipeline stopped: object_id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 371, in test_run_compositor_isolates_decoder_error_not_just_connection_error run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 424, in run_compositor logger.info('Compositor pipeline stopped: object_id=%s', object_id) Message: 'Compositor pipeline stopped: object_id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) ------------------------------ Captured log call ------------------------------- INFO sink:tasks.py:378 Compositor pipeline started: object_id=00000000-0000-0000-0000-000000000099 sources=0 overlays=0 WARNING sink:tasks.py:538 Source error, removing source: object_id=00000000-0000-0000-0000-000000000099 source_id=src-1 error= WARNING sink:tasks.py:581 _clear_compositor_task_id: no Composition found id=00000000-0000-0000-0000-000000000099 INFO sink:tasks.py:424 Compositor pipeline stopped: object_id=00000000-0000-0000-0000-000000000099 _________ test_run_compositor_skips_retry_when_chain_already_in_flight _________ self = , value = 'src-1' def to_python(self, value): if value is not None and not isinstance(value, uuid.UUID): input_form = "int" if isinstance(value, int) else "hex" try: > return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2766: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[AttributeError("'UUID' object has no attribute 'int'") raised in repr()] UUID object at 0x711c016c5210> hex = 'src1', bytes = None, bytes_le = None, fields = None, int = None version = None, is_safe = def __init__(self, hex=None, bytes=None, bytes_le=None, fields=None, int=None, version=None, *, is_safe=SafeUUID.unknown): r"""Create a UUID from either a string of 32 hexadecimal digits, a string of 16 bytes as the 'bytes' argument, a string of 16 bytes in little-endian order as the 'bytes_le' argument, a tuple of six integers (32-bit time_low, 16-bit time_mid, 16-bit time_hi_version, 8-bit clock_seq_hi_variant, 8-bit clock_seq_low, 48-bit node) as the 'fields' argument, or a single 128-bit integer as the 'int' argument. When a string of hex digits is given, curly braces, hyphens, and a URN prefix are all optional. For example, these expressions all yield the same UUID: UUID('{12345678-1234-5678-1234-567812345678}') UUID('12345678123456781234567812345678') UUID('urn:uuid:12345678-1234-5678-1234-567812345678') UUID(bytes='\x12\x34\x56\x78'*4) UUID(bytes_le='\x78\x56\x34\x12\x34\x12\x78\x56' + '\x12\x34\x56\x78\x12\x34\x56\x78') UUID(fields=(0x12345678, 0x1234, 0x5678, 0x12, 0x34, 0x567812345678)) UUID(int=0x12345678123456781234567812345678) Exactly one of 'hex', 'bytes', 'bytes_le', 'fields', or 'int' must be given. The 'version' argument is optional; if given, the resulting UUID will have its variant and version set according to RFC 4122, overriding the given 'hex', 'bytes', 'bytes_le', 'fields', or 'int'. is_safe is an enum exposed as an attribute on the instance. It indicates whether the UUID has been generated in a way that is safe for multiprocessing applications, via uuid_generate_time_safe(3). """ if [hex, bytes, bytes_le, fields, int].count(None) != 4: raise TypeError('one of the hex, bytes, bytes_le, fields, ' 'or int arguments must be given') if hex is not None: hex = hex.replace('urn:', '').replace('uuid:', '') hex = hex.strip('{}').replace('-', '') if len(hex) != 32: > raise ValueError('badly formed hexadecimal UUID string') E ValueError: badly formed hexadecimal UUID string /usr/local/lib/python3.12/uuid.py:178: ValueError During handling of the above exception, another exception occurred: mocker = @pytest.mark.django_db def test_run_compositor_skips_retry_when_chain_already_in_flight(mocker): """A source that keeps re-erroring (its own async rtspsrc connect failing again) must not spawn a second overlapping retry chain on top of the one already running.""" Gst, pipeline, compositor, audiomix, bus = _make_gst_and_pipeline() error_msg = MagicMock() error_msg.type = Gst.MessageType.ERROR error_msg.src.get_name.return_value = 'source-src-src-1' error_msg.src.get_parent.return_value = None err = MagicMock() err.domain = 'gst-resource-error-quark' err.code = 3 error_msg.parse_error.return_value = (err, 'debug info') bus.timed_pop_filtered.side_effect = [error_msg, None] mocker.patch('apps.compositor.tasks.get_compositor_commands', side_effect=[[{'action': 'stop'}]]) mocker.patch('apps.compositor.tasks.build_composition_pipeline', return_value=(pipeline, compositor, audiomix)) mocker.patch('apps.compositor.tasks.remove_source') mocker.patch('apps.compositor.tasks._get_gst', return_value=Gst) mocker.patch('apps.compositor.tasks._acquire_retry_lock', return_value=False) mock_retry = mocker.patch('apps.compositor.tasks.retry_add_source.apply_async') > run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') tests/compositor/test_tasks.py:402: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/local/lib/python3.12/site-packages/celery/local.py:182: in __call__ return self._get_current_object()(*a, **kw) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/celery/app/task.py:430: in __call__ return self.run(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ src/apps/compositor/tasks.py:392: in run_compositor if _handle_bus_message( src/apps/compositor/tasks.py:290: in _handle_bus_message return _handle_bus_error( src/apps/compositor/tasks.py:542: in _handle_bus_error _notify_source_auto_removed(object_id, sid) src/apps/compositor/tasks.py:496: in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/manager.py:87: in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1542: in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1560: in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) /usr/local/lib/python3.12/site-packages/django/db/models/query.py:1570: in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1676: in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1708: in _add_q child_clause, needed_inner = self.build_filter( /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1618: in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py:1445: in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:35: in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:391: in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/lookups.py:93: in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2750: in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , value = 'src-1' def to_python(self, value): if value is not None and not isinstance(value, uuid.UUID): input_form = "int" if isinstance(value, int) else "hex" try: return uuid.UUID(**{input_form: value}) except (AttributeError, ValueError): > raise exceptions.ValidationError( self.error_messages["invalid"], code="invalid", params={"value": value}, ) E django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] /usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py:2768: ValidationError ----------------------------- Captured stderr call ----------------------------- --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 402, in test_run_compositor_skips_retry_when_chain_already_in_flight run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 378, in run_compositor logger.info( Message: 'Compositor pipeline started: object_id=%s sources=%d overlays=%d' Arguments: ('00000000-0000-0000-0000-000000000099', 0, 0) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 402, in test_run_compositor_skips_retry_when_chain_already_in_flight run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 378, in run_compositor logger.info( Message: 'Compositor pipeline started: object_id=%s sources=%d overlays=%d' Arguments: ('00000000-0000-0000-0000-000000000099', 0, 0) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 402, in test_run_compositor_skips_retry_when_chain_already_in_flight run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( File "/app/src/apps/compositor/tasks.py", line 538, in _handle_bus_error logger.warning('Source error, removing source: object_id=%s source_id=%s error=%s', object_id, sid, err) Message: 'Source error, removing source: object_id=%s source_id=%s error=%s' Arguments: ('00000000-0000-0000-0000-000000000099', 'src-1', ) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 402, in test_run_compositor_skips_retry_when_chain_already_in_flight run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( File "/app/src/apps/compositor/tasks.py", line 538, in _handle_bus_error logger.warning('Source error, removing source: object_id=%s source_id=%s error=%s', object_id, sid, err) Message: 'Source error, removing source: object_id=%s source_id=%s error=%s' Arguments: ('00000000-0000-0000-0000-000000000099', 'src-1', ) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 402, in test_run_compositor_skips_retry_when_chain_already_in_flight run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 423, in run_compositor _clear_compositor_task_id(object_id) File "/app/src/apps/compositor/tasks.py", line 581, in _clear_compositor_task_id logger.warning('_clear_compositor_task_id: no Composition found id=%s', object_id) Message: '_clear_compositor_task_id: no Composition found id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 402, in test_run_compositor_skips_retry_when_chain_already_in_flight run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 423, in run_compositor _clear_compositor_task_id(object_id) File "/app/src/apps/compositor/tasks.py", line 581, in _clear_compositor_task_id logger.warning('_clear_compositor_task_id: no Composition found id=%s', object_id) Message: '_clear_compositor_task_id: no Composition found id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 402, in test_run_compositor_skips_retry_when_chain_already_in_flight run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 424, in run_compositor logger.info('Compositor pipeline stopped: object_id=%s', object_id) Message: 'Compositor pipeline stopped: object_id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2766, in to_python return uuid.UUID(**{input_form: value}) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/uuid.py", line 178, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/app/src/apps/compositor/tasks.py", line 392, in run_compositor if _handle_bus_message( ^^^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 290, in _handle_bus_message return _handle_bus_error( ^^^^^^^^^^^^^^^^^^ File "/app/src/apps/compositor/tasks.py", line 542, in _handle_bus_error _notify_source_auto_removed(object_id, sid) File "/app/src/apps/compositor/tasks.py", line 496, in _notify_source_auto_removed source = CompositionSource.objects.filter(id=sid).first() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1542, in filter return self._filter_or_exclude(False, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1560, in _filter_or_exclude clone._filter_or_exclude_inplace(negate, args, kwargs) File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1570, in _filter_or_exclude_inplace self._query.add_q(Q(*args, **kwargs)) File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1676, in add_q clause, _ = self._add_q(q_object, can_reuse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1708, in _add_q child_clause, needed_inner = self.build_filter( ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1618, in build_filter condition = self.build_lookup(lookups, col, value) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1445, in build_lookup lookup = lookup_class(lhs, rhs) ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 35, in __init__ self.rhs = self.get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 391, in get_prep_lookup return super().get_prep_lookup() ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/lookups.py", line 93, in get_prep_lookup return self.lhs.output_field.get_prep_value(self.rhs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2750, in get_prep_value return self.to_python(value) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/django/db/models/fields/__init__.py", line 2768, in to_python raise exceptions.ValidationError( django.core.exceptions.ValidationError: ['“src-1” is not a valid UUID.'] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 464, in format return self._format(record) ^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 460, in _format return self._fmt % values ~~~~~~~~~~^~~~~~~~ KeyError: 'otelTraceID' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.12/logging/__init__.py", line 1160, in emit msg = self.format(record) ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 999, in format return fmt.format(record) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 706, in format s = self.formatMessage(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 675, in formatMessage return self._style.format(record) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/logging/__init__.py", line 466, in format raise ValueError('Formatting field not found in record: %s' % e) ValueError: Formatting field not found in record: 'otelTraceID' Call stack: File "/usr/local/bin/pytest", line 10, in sys.exit(_console_main()) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 253, in _console_main code = _main(prog=_get_prog_name(sys.argv)) File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 229, in _main ret: ExitCode | int = config.hook.pytest_cmdline_main(config=config) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 377, in pytest_cmdline_main return wrap_session(config, _main) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 330, in wrap_session session.exitstatus = doit(config, session) or 0 File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 384, in _main config.hook.pytest_runtestloop(session=session) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 408, in pytest_runtestloop item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 118, in pytest_runtest_protocol runtestprotocol(item, nextitem=nextitem) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 139, in runtestprotocol reports.append(call_and_report(item, "call", log)) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 249, in call_and_report call = CallInfo.from_call( File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/app/tests/compositor/test_tasks.py", line 402, in test_run_compositor_skips_retry_when_chain_already_in_flight run_compositor(object_id='00000000-0000-0000-0000-000000000099', rtsp_out='rtsp://live') File "/usr/local/lib/python3.12/site-packages/celery/local.py", line 182, in __call__ return self._get_current_object()(*a, **kw) File "/usr/local/lib/python3.12/site-packages/celery/app/task.py", line 430, in __call__ return self.run(*args, **kwargs) File "/app/src/apps/compositor/tasks.py", line 424, in run_compositor logger.info('Compositor pipeline stopped: object_id=%s', object_id) Message: 'Compositor pipeline stopped: object_id=%s' Arguments: ('00000000-0000-0000-0000-000000000099',) ------------------------------ Captured log call ------------------------------- INFO sink:tasks.py:378 Compositor pipeline started: object_id=00000000-0000-0000-0000-000000000099 sources=0 overlays=0 WARNING sink:tasks.py:538 Source error, removing source: object_id=00000000-0000-0000-0000-000000000099 source_id=src-1 error= WARNING sink:tasks.py:581 _clear_compositor_task_id: no Composition found id=00000000-0000-0000-0000-000000000099 INFO sink:tasks.py:424 Compositor pipeline stopped: object_id=00000000-0000-0000-0000-000000000099 =============================== warnings summary =============================== ../usr/local/lib/python3.12/site-packages/channels/http.py:1 /usr/local/lib/python3.12/site-packages/channels/http.py:1: DeprecationWarning: 'cgi' is deprecated and slated for removal in Python 3.13 import cgi ../usr/local/lib/python3.12/site-packages/lark/utils.py:150 /usr/local/lib/python3.12/site-packages/lark/utils.py:150: DeprecationWarning: module 'sre_parse' is deprecated import sre_parse ../usr/local/lib/python3.12/site-packages/lark/utils.py:151 /usr/local/lib/python3.12/site-packages/lark/utils.py:151: DeprecationWarning: module 'sre_constants' is deprecated import sre_constants tests/test_storage.py::test_storage_env_keys_defined /app:0: PytestWarning: Error when trying to teardown test databases: OperationalError('database "test_sink" is being accessed by other users\nDETAIL: There is 1 other session using the database.\n') -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/compositor/test_tasks.py::test_run_compositor_removes_overlay_on_overlay_source_error FAILED tests/compositor/test_tasks.py::test_run_compositor_removes_source_on_source_error FAILED tests/compositor/test_tasks.py::test_run_compositor_isolates_decoder_error_not_just_connection_error FAILED tests/compositor/test_tasks.py::test_run_compositor_skips_retry_when_chain_already_in_flight ================== 4 failed, 735 passed, 4 warnings in 35.85s ==================