We're having an intermittent error with Jellyfish causing a seg fault with our upgrade from Python 3.7 to Python 3.8. Happens when calling metaphone.
Unfortunately I can't replicate the issue locally, it only happens when running tests on CircleCI. I've even tried using the exact same image but still can't get it to happen on our machines. I'm using pytest to run tests.
The trace is below, not sure if it helps. If you need more info just let me know; I realise there's not much to go on but thought it best to report!
I've copied the code into our own project for the moment, we weren't using much.
TutorCruncher/accounting/tests/test_ahcs.py Fatal Python error: Segmentation fault
Current thread 0x00007f63d7e83740 (most recent call first):
File "/tutorcruncher/TutorCruncher/search/adapters.py", line 109 in _prepare_metaphone
File "/tutorcruncher/TutorCruncher/search/adapters.py", line 64 in get_entry_data
File "/tutorcruncher/TutorCruncher/search/search_engine.py", line 45 in update_index
File "/tutorcruncher/TutorCruncher/api/hooks.py", line 238 in __init__
File "/tutorcruncher/TutorCruncher/api/hooks.py", line 194 in propagate_activity
File "/usr/local/lib/python3.8/dist-packages/rq/job.py", line 670 in _execute
File "/usr/local/lib/python3.8/dist-packages/rq/job.py", line 664 in perform
File "/tutorcruncher/TutorCruncher/tcrq/mod.py", line 76 in perform
File "/usr/local/lib/python3.8/dist-packages/rq/queue.py", line 335 in run_job
File "/usr/local/lib/python3.8/dist-packages/rq/queue.py", line 427 in enqueue_job
File "/usr/local/lib/python3.8/dist-packages/rq/queue.py", line 331 in enqueue_call
File "/usr/local/lib/python3.8/dist-packages/django_rq/queues.py", line 64 in original_enqueue_call
File "/usr/local/lib/python3.8/dist-packages/django_rq/queues.py", line 68 in enqueue_call
File "/usr/local/lib/python3.8/dist-packages/rq/decorators.py", line 62 in delay
File "/tutorcruncher/TutorCruncher/api/hooks.py", line 151 in finish
File "/tutorcruncher/TutorCruncher/api/middleware.py", line 70 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/tutorcruncher/TutorCruncher/translations/middleware.py", line 14 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/tutorcruncher/TutorCruncher/tcauth/middleware.py", line 189 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/usr/local/lib/python3.8/dist-packages/django/utils/deprecation.py", line 94 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/usr/local/lib/python3.8/dist-packages/django/utils/deprecation.py", line 94 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/usr/local/lib/python3.8/dist-packages/django/utils/deprecation.py", line 94 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/usr/local/lib/python3.8/dist-packages/django/utils/deprecation.py", line 94 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/usr/local/lib/python3.8/dist-packages/django/utils/deprecation.py", line 94 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/tutorcruncher/TutorCruncher/domain/middleware.py", line 103 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/tutorcruncher/TutorCruncher/common/middleware.py", line 215 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/usr/local/lib/python3.8/dist-packages/django/utils/deprecation.py", line 94 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/usr/local/lib/python3.8/dist-packages/django/utils/deprecation.py", line 94 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py", line 34 in inner
File "/usr/local/lib/python3.8/dist-packages/django/core/handlers/base.py", line 75 in get_response
File "/usr/local/lib/python3.8/dist-packages/django/test/client.py", line 140 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/test/client.py", line 485 in request
File "/usr/local/lib/python3.8/dist-packages/django/test/client.py", line 422 in generic
File "/usr/local/lib/python3.8/dist-packages/django/test/client.py", line 356 in post
File "/usr/local/lib/python3.8/dist-packages/django/test/client.py", line 543 in post
File "/tutorcruncher/TutorCruncher/accounting/tests/test_ahcs.py", line 695 in test_add_from_apt
File "/usr/lib/python3.8/unittest/case.py", line 633 in _callTestMethod
File "/usr/lib/python3.8/unittest/case.py", line 676 in run
File "/usr/lib/python3.8/unittest/case.py", line 736 in __call__
File "/usr/local/lib/python3.8/dist-packages/django/test/testcases.py", line 271 in __call__
File "/usr/local/lib/python3.8/dist-packages/pytest_django/plugin.py", line 517 in non_debugging_runtest
File "/usr/local/lib/python3.8/dist-packages/_pytest/runner.py", line 134 in pytest_runtest_call
File "/usr/local/lib/python3.8/dist-packages/pluggy/callers.py", line 187 in _multicall
File "/usr/local/lib/python3.8/dist-packages/pluggy/manager.py", line 84 in <lambda>
File "/usr/local/lib/python3.8/dist-packages/pluggy/manager.py", line 93 in _hookexec
File "/usr/local/lib/python3.8/dist-packages/pluggy/hooks.py", line 286 in __call__
File "/usr/local/lib/python3.8/dist-packages/_pytest/runner.py", line 210 in <lambda>
File "/usr/local/lib/python3.8/dist-packages/_pytest/runner.py", line 237 in from_call
File "/usr/local/lib/python3.8/dist-packages/_pytest/runner.py", line 209 in call_runtest_hook
File "/usr/local/lib/python3.8/dist-packages/_pytest/runner.py", line 185 in call_and_report
File "/usr/local/lib/python3.8/dist-packages/_pytest/runner.py", line 99 in runtestprotocol
File "/usr/local/lib/python3.8/dist-packages/_pytest/runner.py", line 84 in pytest_runtest_protocol
File "/usr/local/lib/python3.8/dist-packages/pluggy/callers.py", line 187 in _multicall
File "/usr/local/lib/python3.8/dist-packages/pluggy/manager.py", line 84 in <lambda>
File "/usr/local/lib/python3.8/dist-packages/pluggy/manager.py", line 93 in _hookexec
File "/usr/local/lib/python3.8/dist-packages/pluggy/hooks.py", line 286 in __call__
File "/usr/local/lib/python3.8/dist-packages/_pytest/main.py", line 271 in pytest_runtestloop
File "/usr/local/lib/python3.8/dist-packages/pluggy/callers.py", line 187 in _multicall
File "/usr/local/lib/python3.8/dist-packages/pluggy/manager.py", line 84 in <lambda>
File "/usr/local/lib/python3.8/dist-packages/pluggy/manager.py", line 93 in _hookexec
File "/usr/local/lib/python3.8/dist-packages/pluggy/hooks.py", line 286 in __call__
File "/usr/local/lib/python3.8/dist-packages/_pytest/main.py", line 247 in _main
File "/usr/local/lib/python3.8/dist-packages/_pytest/main.py", line 197 in wrap_session
File "/usr/local/lib/python3.8/dist-packages/_pytest/main.py", line 240 in pytest_cmdline_main
File "/usr/local/lib/python3.8/dist-packages/pluggy/callers.py", line 187 in _multicall
File "/usr/local/lib/python3.8/dist-packages/pluggy/manager.py", line 84 in <lambda>
File "/usr/local/lib/python3.8/dist-packages/pluggy/manager.py", line 93 in _hookexec
File "/usr/local/lib/python3.8/dist-packages/pluggy/hooks.py", line 286 in __call__
File "/usr/local/lib/python3.8/dist-packages/_pytest/config/__init__.py", line 92 in main
File "/usr/local/bin/pytest", line 8 in <module>
Makefile:65: recipe for target 'test' failed
make: *** [test] Segmentation fault (core dumped)
Hi folks,
We're having an intermittent error with Jellyfish causing a seg fault with our upgrade from Python 3.7 to Python 3.8. Happens when calling
metaphone
.Unfortunately I can't replicate the issue locally, it only happens when running tests on CircleCI. I've even tried using the exact same image but still can't get it to happen on our machines. I'm using pytest to run tests.
The trace is below, not sure if it helps. If you need more info just let me know; I realise there's not much to go on but thought it best to report!
I've copied the code into our own project for the moment, we weren't using much.