biolab / orange3

🍊 :bar_chart: :bulb: Orange: Interactive data analysis
https://orangedatamining.com
Other
4.85k stars 1.01k forks source link

Introduction of lazy import of openTSNE causes crash #3893

Closed PrimozGodec closed 5 years ago

PrimozGodec commented 5 years ago
Orange version

master

Expected behavior

Lazy import in tSNE should work.

Actual behavior

Merging https://github.com/biolab/orange3/pull/3883 in master caused Travis tests to start failing in Orange3-bioinformatics. Tests fail at the point when openTSNE is lazily imported:

https://github.com/biolab/orange3/blob/019a41d8ee68b70ea37e93ed9a22b0ee8e7875d9/Orange/projection/manifold.py#L189

This problem should be solved or PR should be reverted.

Steps to reproduce the behavior

Check the second Travis test (source) at https://github.com/biolab/orange3-bioinformatics/pull/147.

Additional info (worksheets, data, screenshots, ...)

Error message:

test_input_projector (widgets.test_OWAnnotateProjection.TestOWAnnotateProjection) ... Received signal 11 SEGV_MAPERR 000fffffff8d
#0 0x7f9eed41c52f <unknown>
#1 0x7f9eebe4db1d <unknown>
#2 0x7f9eed41ca3e <unknown>
#3 0x7f9f0c71f390 <unknown>
#4 0x7f9f0c491c88 <unknown>
#5 0x7f9ec93777bf llvm::SmallVectorImpl<>::operator=()
#6 0x7f9e7de288be <unknown>
#7 0x7f9e7de28f30 <unknown>
#8 0x7f9e7e87b46a <unknown>
#9 0x7f9e7de194e6 <unknown>
#10 0x7f9e7de1957b <unknown>
#11 0x7f9f09e68630 ffi_call_unix64
#12 0x7f9f09e67fed ffi_call
#13 0x7f9f09e7efce _ctypes_callproc
#14 0x7f9f09e7fa04 PyCFuncPtr_call
#15 0x55b75c0a2dce PyObject_Call
#16 0x55b75c14c73b _PyEval_EvalFrameDefault
#17 0x55b75c0901a9 _PyEval_EvalCodeWithName
#18 0x55b75c091275 _PyFunction_FastCallDict
#19 0x55b75c0b0393 _PyObject_Call_Prepend
#20 0x55b75c0e95ea slot_tp_call
#21 0x55b75c0ea50b _PyObject_FastCallKeywords
#22 0x55b75c14fb5d _PyEval_EvalFrameDefault
#23 0x55b75c0e115b _PyFunction_FastCallKeywords
#24 0x55b75c14f469 _PyEval_EvalFrameDefault
#25 0x55b75c0e115b _PyFunction_FastCallKeywords
#26 0x55b75c14aed3 _PyEval_EvalFrameDefault
#27 0x55b75c0911ab _PyFunction_FastCallDict
#28 0x55b75c0b0393 _PyObject_Call_Prepend
#29 0x55b75c0e952a slot_tp_init
#30 0x55b75c0ea198 _PyObject_FastCallKeywords
#31 0x55b75c14fb5d _PyEval_EvalFrameDefault
#32 0x55b75c0911ab _PyFunction_FastCallDict
#33 0x55b75c14c73b _PyEval_EvalFrameDefault
#34 0x55b75c090a59 _PyEval_EvalCodeWithName
#35 0x55b75c0e13e7 _PyFunction_FastCallKeywords
#36 0x55b75c14aed3 _PyEval_EvalFrameDefault
#37 0x55b75c0911ab _PyFunction_FastCallDict
#38 0x55b75c0b0393 _PyObject_Call_Prepend
#39 0x55b75c0e952a slot_tp_init
#40 0x55b75c0ea198 _PyObject_FastCallKeywords
#41 0x55b75c14fb5d _PyEval_EvalFrameDefault
#42 0x55b75c0e115b _PyFunction_FastCallKeywords
#43 0x55b75c14f469 _PyEval_EvalFrameDefault
#44 0x55b75c0901a9 _PyEval_EvalCodeWithName
#45 0x55b75c091275 _PyFunction_FastCallDict
#46 0x55b75c0b068e object_vacall
#47 0x55b75c0b07d9 PyObject_CallFunctionObjArgs
#48 0x55b75c0a5230 _PyObject_GenericGetAttrWithDict
#49 0x55b75c14b0ca _PyEval_EvalFrameDefault
#50 0x55b75c0911ab _PyFunction_FastCallDict
#51 0x55b75c0f7052 property_descr_get
#52 0x55b75c0a5141 _PyObject_GenericGetAttrWithDict
#53 0x55b75c14b0ca _PyEval_EvalFrameDefault
#54 0x55b75c0901a9 _PyEval_EvalCodeWithName
#55 0x55b75c0914a0 _PyFunction_FastCallDict
#56 0x55b75c0b0393 _PyObject_Call_Prepend
#57 0x55b75c0e952a slot_tp_init
#58 0x55b75c0e9f37 type_call
#59 0x55b75c0a2dce PyObject_Call
#60 0x55b75c14c73b _PyEval_EvalFrameDefault
#61 0x55b75c090a59 _PyEval_EvalCodeWithName
  r8: fffff00e2f801928  r9: 0000000000000004 r10: 00007f9e83ff36a8 r11: 00007f9e8c000078
 r12: ffff807173df207d r13: 00007f9e8c20df80 r14: 00007f9e83ff38a0 r15: 00007f9e83ff3890
  di: 00007f9e83ff36c0  si: 00007f9e8c20df90  bp: ffff80717c00c940  bx: 00007f9e83ff36b0
  dx: ffff807173df207d  ax: 00007f9e83ff36c0  cx: 000000100000000d  sp: 00007f9e83ff3618
  ip: 00007f9f0c491c88 efl: 0000000000010286 cgf: 002b000000000033 erf: 0000000000000004
 trp: 000000000000000e msk: 0000000000000000 cr2: 0000000fffffff8d
[end of stack trace]
Calling _exit(1). Core file will not be generated.
pavlin-policar commented 5 years ago

So this was fixed when the PR was reverted, but then #3523 is relevant again.