1

我想将此作为错误发布,但我什至不知道应该向谁报告。这里是。

我已经在标准的 Alpine 3.5 上安装了 Odoo 9.0,同时使用了打包的 Python 2.7.13,我也尝试过使用从源代码编译的相同版本的 python,但结果是相同的:

当我从 Odoo 应用程序中的任何视图导航到会计仪表板 python 段错误时。奇怪的是,如果我复制会计仪表板的 URL 并粘贴到导航栏中——这样会强制加载整个页面——一切正常。我在 python 解释器上尝试了 gdb,看看会发生什么。该错误似乎大部分是一致的,但不幸的是我得到的信息没有那么有用:

Thread 34 "python2" received signal SIGSEGV, Segmentation fault.
[Switching to LWP 13754]
0x00007ffff7dc52f5 in sem_timedwait () from /lib/ld-musl-x86_64.so.1
(gdb) bt
#0  0x00007ffff7dc52f5 in sem_timedwait () from /lib/ld-musl-x86_64.so.1
#1  0x0000000000000000 in ?? ()

在极少数情况下错误是不同的,我设法在调试器中捕获它一次:

Thread 47 "python2" received signal SIGSEGV, Segmentation fault.
[Switching to LWP 4096]
0x00007ffff7a58b00 in _PyType_Lookup (type=type@entry=0x555555888280, name=name@entry=0x7ffff7e3fb90) at Objects/typeobject.c:2527
2527    Objects/typeobject.c: Permission denied.
(gdb) bt
#0  0x00007ffff7a58b00 in _PyType_Lookup (type=type@entry=0x555555888280, name=name@entry=0x7ffff7e3fb90) at Objects/typeobject.c:2527
#1  0x00007ffff7a4372c in _PyObject_GenericGetAttrWithDict (obj=0x7fffec6b66d0, name=0x7ffff7e3fb90, dict=0x0) at Objects/object.c:1389
#2  0x00007ffff7a8adb5 in PyEval_EvalFrameEx (f=f@entry=0x7fffedd8eb90, throwflag=throwflag@entry=0) at Python/ceval.c:2543
#3  0x00007ffff7a8e3c7 in PyEval_EvalCodeEx (co=0x7ffff7e3abb0, globals=<optimized out>, locals=locals@entry=0x0, args=<optimized out>, argcount=<optimized out>, kws=<optimized out>, kwcount=0, defs=0x7ffff7e60568, defcount=1, closure=0x0) at Python/ceval.c:3584
#4  0x00007ffff7a8c671 in fast_function (nk=0, na=<optimized out>, n=1, pp_stack=0x7fffebada318, func=0x7ffff7e53b18) at Python/ceval.c:4447
...

这种情况下的堆栈跟踪很长,这只是一个片段。只是为了解决这个问题,我确实尝试了 grsec 内核和香草内核,结果相同。

我对 python 很陌生,所以关于如何进一步调试或解决这个问题的任何想法将不胜感激。

4

0 回答 0