我正在apache网络服务器上运行django应用程序。此应用程序使用django.contrib程序包,特别是django.contrib.gis.geos。
现在有时这可以持续数周,直到一天崩溃多次,而且似乎与用户交互没有直接关系。
日志显示以下内容:
Traceback (most recent call last):
File "[...]/lib/python3.4/site-packages/django/contrib/gis/ptr.py", line 37, in __del__
NameError: name 'AttributeError' is not defined
[...] Exception ignored in: Exception ignored in: Exception ignored in: <bound method _WKBReader.__del__ of <django.contrib.gis.geos.prototypes.io._WKBReader object at 0x7ff4c2f92a58>>
我缩短了Exception ignored in:
的庞大链。
此后,直到重新启动apache为止,它不会再处理其他请求,但仍将作为守护程序保持活动状态。
我不确定哪一行确切是造成此错误的原因。但是我发现了这一点:
https://docs.djangoproject.com/en/2.2/ref/contrib/gis/geos/#creating-a-geometry
在“我的日志中充满了与GEOS相关的错误”
它说可以通过在顶层不创建任何GEOS对象来避免这种情况,因此我试图清除这些情况,但没有帮助。
同样似乎很奇怪地看到NameError: name 'AttributeError' is not defined
可能暗示了这个问题的根源?
如果您不知道如何立即解决此问题,能否给我一些如何避免的见解? 完全不使用该程序包是可能的,但是我真的想保留它作为最后的手段。
感谢您的帮助。
答案 0 :(得分:0)
想知道您是否已解决此问题。从Django 2.x更新到3.x之后,我刚刚遇到了这个确切的错误。这可能有线索。