device delete causes stack dump. #6845

Closed
opened 2025-12-29 19:45:59 +01:00 by adam · 1 comment
Owner

Originally created by @ThomasADavis on GitHub (Aug 19, 2022).

NetBox version

v3.3.0

Python version

3.10

Steps to Reproduce

Used an existing netbox db from v3.2

Expected Behavior

Delete works.

Observed Behavior


There was a problem with your request. Please contact an administrator.

The complete exception is provided below:

<class 'IndexError'>

list index out of range

Python version: 3.10.4
NetBox version: 3.3.0

If further assistance is required, please post to the [NetBox discussion forum](https://github.com/netbox-community/netbox/discussions) on GitHub.

and

10.42.0.10 - - [19/Aug/2022:18:12:45 +0000] "GET /dcim/devices/101/delete/ HTTP/1.1" 200 854 "http://netbox-192-168-85-16.nip.io/dcim/devices/101/" "Mozilla/5.0 (X11; Linux x86_64; rv:103.0) Gecko/20100101 Firefox/103.0"
Internal Server Error: /dcim/devices/101/delete/
Traceback (most recent call last):
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/handlers/base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/views/generic/base.py", line 84, in view
    return self.dispatch(request, *args, **kwargs)
  File "/opt/netbox/netbox/utilities/views.py", line 90, in dispatch
    return super().dispatch(request, *args, **kwargs)
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/views/generic/base.py", line 119, in dispatch
    return handler(request, *args, **kwargs)
  File "/opt/netbox/netbox/netbox/views/generic/object_views.py", line 490, in post
    obj.delete()
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/base.py", line 1094, in delete
    return collector.delete()
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/deletion.py", line 488, in delete
    signals.post_delete.send(
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/dispatch/dispatcher.py", line 176, in send
    return [
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/dispatch/dispatcher.py", line 177, in <listcomp>
    (receiver, receiver(signal=self, sender=sender, **named))
  File "/opt/netbox/netbox/dcim/signals.py", line 125, in nullify_connected_endpoints
    cablepath.retrace()
  File "/opt/netbox/netbox/dcim/models/cables.py", line 604, in retrace
    _new = self.from_origin(self.origins)
  File "/opt/netbox/netbox/dcim/models/cables.py", line 510, in from_origin
    local_cable_end = local_cable_terminations[0].cable_end
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/query.py", line 362, in 
 _getitem__
    return qs._result_cache[0]
IndexError: list index out of range
Originally created by @ThomasADavis on GitHub (Aug 19, 2022). ### NetBox version v3.3.0 ### Python version 3.10 ### Steps to Reproduce Used an existing netbox db from v3.2 ### Expected Behavior Delete works. ### Observed Behavior ```Server Error There was a problem with your request. Please contact an administrator. The complete exception is provided below: <class 'IndexError'> list index out of range Python version: 3.10.4 NetBox version: 3.3.0 If further assistance is required, please post to the [NetBox discussion forum](https://github.com/netbox-community/netbox/discussions) on GitHub. ``` and ``` 10.42.0.10 - - [19/Aug/2022:18:12:45 +0000] "GET /dcim/devices/101/delete/ HTTP/1.1" 200 854 "http://netbox-192-168-85-16.nip.io/dcim/devices/101/" "Mozilla/5.0 (X11; Linux x86_64; rv:103.0) Gecko/20100101 Firefox/103.0" Internal Server Error: /dcim/devices/101/delete/ Traceback (most recent call last): File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/handlers/exception.py", line 55, in inner response = get_response(request) File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/handlers/base.py", line 197, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/opt/netbox/venv/lib/python3.10/site-packages/django/views/generic/base.py", line 84, in view return self.dispatch(request, *args, **kwargs) File "/opt/netbox/netbox/utilities/views.py", line 90, in dispatch return super().dispatch(request, *args, **kwargs) File "/opt/netbox/venv/lib/python3.10/site-packages/django/views/generic/base.py", line 119, in dispatch return handler(request, *args, **kwargs) File "/opt/netbox/netbox/netbox/views/generic/object_views.py", line 490, in post obj.delete() File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/base.py", line 1094, in delete return collector.delete() File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/deletion.py", line 488, in delete signals.post_delete.send( File "/opt/netbox/venv/lib/python3.10/site-packages/django/dispatch/dispatcher.py", line 176, in send return [ File "/opt/netbox/venv/lib/python3.10/site-packages/django/dispatch/dispatcher.py", line 177, in <listcomp> (receiver, receiver(signal=self, sender=sender, **named)) File "/opt/netbox/netbox/dcim/signals.py", line 125, in nullify_connected_endpoints cablepath.retrace() File "/opt/netbox/netbox/dcim/models/cables.py", line 604, in retrace _new = self.from_origin(self.origins) File "/opt/netbox/netbox/dcim/models/cables.py", line 510, in from_origin local_cable_end = local_cable_terminations[0].cable_end File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/query.py", line 362, in _getitem__ return qs._result_cache[0] IndexError: list index out of range ```
adam closed this issue 2025-12-29 19:45:59 +01:00
Author
Owner

@ThomasADavis commented on GitHub (Aug 19, 2022):

further digging around gives when I try to delete the cables for this device.

10.42.0.10 - - [19/Aug/2022:18:18:57 +0000] "POST /dcim/interfaces/disconnect/?return_url=/dcim/devices/101/interfaces/ HTTP/1.1" 200 95936 "http://netbox-192-168-85-16.nip.io/dcim/devices/101/interfaces/" "Mozilla/5.0 (X11; Linux x86_64; rv:103.0) Gecko/20100101 Firefox/103.0"
Internal Server Error: /dcim/interfaces/disconnect/
Traceback (most recent call last):
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/fields/related_descriptors.py", line 187, in __get__
    rel_obj = self.field.get_cached_value(instance)
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/fields/mixins.py", line 15, in get_cached_value
    return instance._state.fields_cache[cache_name]
KeyError: 'cable'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/handlers/base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/views/generic/base.py", line 84, in view
    return self.dispatch(request, *args, **kwargs)
  File "/opt/netbox/netbox/utilities/views.py", line 90, in dispatch
    return super().dispatch(request, *args, **kwargs)
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/views/generic/base.py", line 119, in dispatch
    return handler(request, *args, **kwargs)
  File "/opt/netbox/netbox/dcim/views.py", line 120, in post
    if obj.cable is None:
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/fields/related_descriptors.py", line 205, in __get__
    rel_obj = self.get_object(instance)
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/fields/related_descriptors.py", line 168, in get_object
    return qs.get(self.field.get_reverse_related_filter(instance))
  File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/query.py", line 496, in get
    raise self.model.DoesNotExist(
dcim.models.cables.Cable.DoesNotExist: Cable matching query does not exist.
@ThomasADavis commented on GitHub (Aug 19, 2022): further digging around gives when I try to delete the cables for this device. ``` 10.42.0.10 - - [19/Aug/2022:18:18:57 +0000] "POST /dcim/interfaces/disconnect/?return_url=/dcim/devices/101/interfaces/ HTTP/1.1" 200 95936 "http://netbox-192-168-85-16.nip.io/dcim/devices/101/interfaces/" "Mozilla/5.0 (X11; Linux x86_64; rv:103.0) Gecko/20100101 Firefox/103.0" Internal Server Error: /dcim/interfaces/disconnect/ Traceback (most recent call last): File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/fields/related_descriptors.py", line 187, in __get__ rel_obj = self.field.get_cached_value(instance) File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/fields/mixins.py", line 15, in get_cached_value return instance._state.fields_cache[cache_name] KeyError: 'cable' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/handlers/exception.py", line 55, in inner response = get_response(request) File "/opt/netbox/venv/lib/python3.10/site-packages/django/core/handlers/base.py", line 197, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/opt/netbox/venv/lib/python3.10/site-packages/django/views/generic/base.py", line 84, in view return self.dispatch(request, *args, **kwargs) File "/opt/netbox/netbox/utilities/views.py", line 90, in dispatch return super().dispatch(request, *args, **kwargs) File "/opt/netbox/venv/lib/python3.10/site-packages/django/views/generic/base.py", line 119, in dispatch return handler(request, *args, **kwargs) File "/opt/netbox/netbox/dcim/views.py", line 120, in post if obj.cable is None: File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/fields/related_descriptors.py", line 205, in __get__ rel_obj = self.get_object(instance) File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/fields/related_descriptors.py", line 168, in get_object return qs.get(self.field.get_reverse_related_filter(instance)) File "/opt/netbox/venv/lib/python3.10/site-packages/django/db/models/query.py", line 496, in get raise self.model.DoesNotExist( dcim.models.cables.Cable.DoesNotExist: Cable matching query does not exist. ```
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#6845