Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 682482 - sys-cluster/ceph-14.2.0-r3: Interpreter change detected - this module can only be loaded into one interpreter per process.
Summary: sys-cluster/ceph-14.2.0-r3: Interpreter change detected - this module can onl...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Patrick McLean
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks:
 
Reported: 2019-04-04 04:00 UTC by Hector Martin
Modified: 2019-04-05 01:48 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Patch to also apply the Cython fix during distutils install (cythonfix.patch,946 bytes, patch)
2019-04-04 04:00 UTC, Hector Martin
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Hector Martin 2019-04-04 04:00:28 UTC
Created attachment 571786 [details, diff]
Patch to also apply the Cython fix during distutils install

After installing ceph-14.2.0-r3, all ceph-mgr modules fail with the following error:

```
2019-04-04 12:13:39.408 7f1b867dadc0 -1 mgr[py] Class not found in module 'volumes'
2019-04-04 12:13:39.408 7f1b867dadc0 -1 mgr[py] Error loading module 'volumes': (22) Invalid argument
2019-04-04 12:13:39.408 7f1b867dadc0  1 mgr[py] Loading python module 'zabbix'
2019-04-04 12:13:39.435 7f1b867dadc0 -1 mgr[py] Module not found: 'mgr_module'
2019-04-04 12:13:39.435 7f1b867dadc0 -1 mgr[py] Traceback (most recent call last):
  File "/usr/share/ceph/mgr/mgr_module.py", line 8, in <module>
    import rados
ImportError: Interpreter change detected - this module can only be loaded into one interpreter per process.
```

This happens then Ceph is built with cython-0.29 and later. See:

https://github.com/ceph/ceph/pull/25585
https://tracker.ceph.com/issues/37472

This fix is already in 14.2.0 upstream. This problem still occurs because the way Gentoo builds Ceph causes Cython modules to be recompiled during the install phase, and the fix does not set the workaround CFLAGS during that phase.

Attached is a patch to fix this. I'll submit it upstream too.
Comment 1 Larry the Git Cow gentoo-dev 2019-04-05 01:48:06 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84f2bdae597f394425b96329fc8305d9b729f782

commit 84f2bdae597f394425b96329fc8305d9b729f782
Author:     Patrick McLean <patrick.mclean@sony.com>
AuthorDate: 2019-04-05 01:45:22 +0000
Commit:     Patrick McLean <chutzpah@gentoo.org>
CommitDate: 2019-04-05 01:47:56 +0000

    sys-cluster/ceph: revbumps, fix build with cython-29 (bug 682482)
    
    Closes: https://bugs.gentoo.org/682482
    Copyright: Sony Interactive Entertainment Inc.
    Package-Manager: Portage-2.3.62, Repoman-2.3.12
    Signed-off-by: Patrick McLean <chutzpah@gentoo.org>

 .../{ceph-13.2.5-r1.ebuild => ceph-13.2.5-r2.ebuild}    |  1 +
 .../{ceph-14.2.0-r3.ebuild => ceph-14.2.0-r4.ebuild}    |  1 +
 sys-cluster/ceph/files/ceph-14.2.0-cython-0.29.patch    | 17 +++++++++++++++++
 3 files changed, 19 insertions(+)