在Alpine 3.5 segfault上使用Python 2.7.13的Odoo 9

时间:2017-01-16 11:49:30

标签: python openerp odoo-9 alpine musl

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

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

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

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
...

在非常罕见的情况下,错误是不同的,我设法在调试器中捕获它一次:

{{1}}

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

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

0 个答案:

没有答案