Closed vstanojcic closed 1 year ago
Mark, could you debug this with @vstanojcic
Error log:
Environment:
Request Method: GET
Request URL: http://vws.openkat.dev/en/test/objects/?observed_at=2023-08-21&clearance_level=0&clearance_level=1&clearance_level=2&clearance_level=3&clearance_level=4&clearance_type=empty
Django Version: 4.2.1
Python Version: 3.11.2
Installed Applications:
['django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.forms',
'django_otp',
'django_otp.plugins.otp_static',
'django_otp.plugins.otp_totp',
'two_factor',
'account',
'tools',
'fmea',
'crisis_room',
'onboarding',
'katalogus',
'django_password_validators',
'django_password_validators.password_history',
'rest_framework',
'tagulous',
'csp']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'rocky.middleware.remote_user.RemoteUserMiddleware',
'django_otp.middleware.OTPMiddleware',
'rocky.middleware.auth_required.AuthRequiredMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'rocky.middleware.onboarding.OnboardingMiddleware',
'csp.middleware.CSPMiddleware']
Template error:
In template /opt/venvs/kat-rocky/lib/python3.11/site-packages/rocky/templates/partials/hyperlink_ooi_id.html, error at line 5
pop from empty list
1 : {% load i18n %}
2 : {% load static %}
3 :
4 : <a href="{% ooi_url "ooi_detail" value.primary_key organization_code query=mandatory_fields %}"
5 : title=" {% blocktranslate trimmed with name=value.human_readable %} Show details for {{ name }} {% endblocktranslate %}">{{ value.human_readable }}</a>
6 :
Traceback (most recent call last):
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 880, in _resolve_lookup
current = current[bit]
^^^^^^^^^^^^
During handling of the above exception ('ImageMetadata' object is not subscriptable), another exception occurred:
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/core/handlers/exception.py", line 55, in inner
response = get_response(request)
^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/core/handlers/base.py", line 220, in _get_response
response = response.render()
^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/response.py", line 114, in render
self.content = self.rendered_content
^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/response.py", line 92, in rendered_content
return template.render(context, self._request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/backends/django.py", line 61, in render
return self.template.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 175, in render
return self._render(context)
^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/loader_tags.py", line 157, in render
return compiled_parent._render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/loader_tags.py", line 63, in render
result = block.nodelist.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/loader_tags.py", line 63, in render
result = block.nodelist.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/defaulttags.py", line 238, in render
nodelist.append(node.render_annotated(context))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1070, in render
return render_value_in_context(output, context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1047, in render_value_in_context
value = str(value)
^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/utils/html.py", line 420, in <lambda>
klass.__str__ = lambda self: mark_safe(klass_str(self))
^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/forms/boundfield.py", line 34, in __str__
return self.as_widget()
^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/forms/boundfield.py", line 107, in as_widget
return widget.render(
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/forms/widgets.py", line 281, in render
return self._render(self.template_name, context, renderer)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/forms/widgets.py", line 286, in _render
return mark_safe(renderer.render(template_name, context))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/forms/renderers.py", line 29, in render
return template.render(context, request=request).strip()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/backends/django.py", line 61, in render
return self.template.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 175, in render
return self._render(context)
^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/defaulttags.py", line 541, in render
return self.nodelist.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/defaulttags.py", line 238, in render
nodelist.append(node.render_annotated(context))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/defaulttags.py", line 238, in render
nodelist.append(node.render_annotated(context))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/defaulttags.py", line 541, in render
return self.nodelist.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/defaulttags.py", line 321, in render
return nodelist.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/loader_tags.py", line 208, in render
return template.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 177, in render
return self._render(context)
^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in render
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 1005, in <listcomp>
return SafeString("".join([node.render_annotated(context) for node in self]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 966, in render_annotated
return self.render(context)
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/templatetags/i18n.py", line 156, in render
{var: val.resolve(context) for var, val in self.extra_context.items()}
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/templatetags/i18n.py", line 156, in <dictcomp>
{var: val.resolve(context) for var, val in self.extra_context.items()}
^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 715, in resolve
obj = self.var.resolve(context)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 847, in resolve
value = self._resolve_lookup(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/django/template/base.py", line 890, in _resolve_lookup
current = getattr(current, bit)
^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/octopoes/models/__init__.py", line 116, in human_readable
return self.format_reference_human_readable(self.reference)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/octopoes/models/ooi/web.py", line 222, in format_reference_human_readable
t = reference.tokenized
^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/octopoes/models/__init__.py", line 214, in tokenized
return self.class_type.get_tokenized_primary_key(self.natural_key)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/octopoes/models/__init__.py", line 170, in get_tokenized_primary_key
return PrimaryKeyToken.parse_obj(hydrate(token_tree))
^^^^^^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/octopoes/models/__init__.py", line 165, in hydrate
node[key] = hydrate(value)
^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/octopoes/models/__init__.py", line 165, in hydrate
node[key] = hydrate(value)
^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/octopoes/models/__init__.py", line 165, in hydrate
node[key] = hydrate(value)
^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/octopoes/models/__init__.py", line 165, in hydrate
node[key] = hydrate(value)
^^^^^^^^^^^^^^
File "/opt/venvs/kat-rocky/lib/python3.11/site-packages/octopoes/models/__init__.py", line 167, in hydrate
node[key] = natural_key_parts.pop(0)
^^^^^^^^^^^^^^^^^^^^^^^^
Exception Type: IndexError at /en/test/objects/
Exception Value: pop from empty list
This has already been resolved in #1539. Do we want to backport that fix to 1.10 or do we advise users to upgrade to 1.11 (once released) instead?
Fix was backported to 1.10, so it will be part of version 1.10.2.
When applying a specific set of filters on the objects page this results in a server error. This happens on the .dev environment. On the staging environment this error does not happen.
Apply these filters as shown here below and press "set filters"
The result is
Version used is v1.10.1