GUI socket disconnected

15 posts / 0 new
Last post
erikklontz
GUI socket disconnected

Hi, 

I've seen similar threads posted on these forums but perhaps none that address my situation. During 2D classification (with my dataset) and/or ab-initio 3D reconstruction (with the tutorial dataset), the cisTEM GUI randomly crashes and terminal states that the GUI socket disconnected. Here are a few lines leading up to the crash during my last 2D classification:

"Dumping intermediate files...

Total logP = -789.116

Refine2D: Normal termination

Total logP = -1326.15

Refine2D: Normal termination

JOB CONTROL: Master Socket Disconnected!!

Running...

JOB CONTROL: Trying to connect to 10.0.2.15:3000 (Timeout = 4 sec)...

JOB CONTROL: Succeeded-Connection established!!

JOB CONTROL: GUI Socket Disconnected!!"

 

I don't have access to a dedicated linux box or cluster yet, so I am running cisTEM on a personal workstation:

  • Intel Core i5-7600K Processor 3.80GHz
  • NVIDIA GeForce GTX1070 8GB GDDR5 VR Ready
  • 16GB DDR4-3000 RAM

I have Windows 10 with VirtualBox running Ubuntu, and cisTEM installed as recommended in the tutorial (cistem-1.0.0-beta-intel-linux.tar.gz)

Any ideas how to prevent this?

Thanks!

Erik

 

 

erikklontz
I'm not sure if this is

I'm not sure if this is related, but the "canberra-gtk-module" fails to load when launching cisTEM.

Erik

timgrant
Hi Erik,

Hi Erik,

I don't have any experience running in VirtualBox, how much memory/disk space are you giving the virtual machine?   

Cheers,

Tim

erikklontz
Hi Tim,

Hi Tim,

I'm giving it 14GB of memory, and I've allocated 25GB of dedicated disk space. However, I'm running cisTEM out of a folder that is shared with the entire hard drive, so it shouldn't be able to run out of storage.

Thanks,

Erik

timgrant
Hi Erik,

Hi Erik,

Sorry you're having trouble. One way to get to the bottom of this, is if you could run a debug version and give us the backtrace output. Can you download a debug version of the cisTEM gui from here :-

http://grigoriefflab.janelia.org/sites/default/files/timgrant_18-07-12_5...

unzip it with :-

gzip -d cisTEM_debug.gz

then run it in GDB :-

gdb ./cisTEM_debug

At this point you need to type "run".  The gui should then run, and you should be able to open your project.  When it crashes, please type "bt" in the window and post the output.

Thanks!

Tim

 

erikklontz
Hi Tim, 

Hi Tim, 

Thanks for this advice! For whatever reason, the debug version never crashes. Problem solved I guess?

Erik

timgrant
Hmm.. it is a little worrying

Hmm.. it is a little worrying - but i'm glad it is working for you.

Yue Liu
Hi Tim,

Hi Tim,

I have had a very similar issue when using Virtual box. Essentially, GUI socket is disconnected. Just wonder if you could share the debugged version again or if there might be alternative workarounds. Thanks in advance for any help. 

Best,

Yue

timgrant
Hi Yue,

Hi Yue,

You can download it from here for the next month :-

http://grigoriefflab.janelia.org/sites/default/files/timgrant_19-05-02_6...

Cheers,

Tim

Yue Liu
Thanks, Tim!

Thanks, Tim. I have given it a go. However, a different type of error message popped up. I was wondering if you have any idea of what might have gone wrong. Thanks for any advice. 

Merge3D: Normal termination

Socket didn't read all bytes! (0 / 4) with 10 retries From gui/../core/../core/functions.h:126

void ReadFromSocket(wxSocketBase *, void *, unsigned int, bool)

Socket has an error (Input/Output error) From gui/../core/../core/functions.h:127

void ReadFromSocket(wxSocketBase *, void *, unsigned int, bool)

Failed socket is connected to : (Server Name hidden here) 

gui/../core/../core/functions.h(137): assert "Assert failure" failed in ReadFromSocket().

Running...

 JOB CONTROL: Trying to connect to 10.1.0.29:3000 (timeout = 4 sec) ...

 JOB CONTROL: Succeeded - Connection established!

Package is 37270 bytes long

We read 37270 bytes

Job Decoded

JOB CONTROL : GUI Socket Disconnected!!

 JOB : Failed ! Unable to connect

 JOB : Failed ! Unable to connect

timgrant
Hi,

Hi,

This just sort of says the GUI is dieing, can you run it in a debugger and let me know the backtrace :-

gdb ./cisTEM_debug

At this point you need to type "run".  The gui should then run, and you should be able to open your project.  When it crashes, please type "bt" in the window and post the output.

Thanks!

Tim

Yue Liu
Hi Tim,

Hi Tim,

The debug version works very well on a single workstation. However, when accessing multiple computers using ssh (ssh hostname directory/$command. Unlike the GUI, the command does not run in a debugger), it crashed. Here is the backtrace. Thanks for any suggestions.  Yue

ASSERT INFO:
gui/../core/../core/functions.h(137): assert "Assert failure" failed in ReadFromSocket().

BACKTRACE:
[1] ReadFromSocket(wxSocketBase*, void*, unsigned int, bool) /tmp/cistem-1.0.0-beta/src/core/functions.h:137
[2] ReceivewxStringFromSocket(wxSocketBase*) /tmp/cistem-1.0.0-beta/src/core/functions.cpp:184
[3] AbInitio3DPanel::OnJobSocketEvent(wxSocketEvent&):184
[4] wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const:184
[5] wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&, wxEvent&) const:184
[6] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&):184
[7] wxEvtHandler::SearchDynamicEventTable(wxEvent&):184
[8] wxEvtHandler::TryHereOnly(wxEvent&):184
[9] wxEvtHandler::TryBeforeAndHere(wxEvent&):184
[10] wxEvtHandler::ProcessEventLocally(wxEvent&):184
[11] wxEvtHandler::ProcessEvent(wxEvent&):184
[12] wxEvtHandler::ProcessPendingEvents():184
[13] wxAppConsoleBase::ProcessPendingEvents():184
[14] wxApp::DoIdle():184
[15] wxapp_idle_callback app.cpp:184
[16] g_main_context_dispatch
[17] g_main_loop_run
[18] gtk_main
[19] wxGUIEventLoop::DoRun()
[20] wxEventLoopBase::Run() /home/grigoriefflab/tmp/wxWidgets-3.0.2/./src/common/evtloopcmn.cpp:78
[21] wxAppConsoleBase::MainLoop():78
[22] wxAppConsoleBase::OnRun():78
[23] wxAppBase::OnRun():78
[24] wxEntry(int&, wchar_t**):78
[25] wxEntry(int&, char**):78
[26] main /tmp/cistem-1.0.0-beta/src/programs/projectx/projectx.cpp:14
[27] __libc_start_main
[28] _start

After typing bt, here is the output. 
#0  0x00007ffff4629207 in raise () at /usr/lib64/libc.so.6
#1  0x00007ffff462a8f8 in abort () at /usr/lib64/libc.so.6
#2  0x0000000000542cd3 in ReadFromSocket(wxSocketBase*, void*, unsigned int, bool) (socket=0x6714, buffer=0x6714, nbytes=6, die_on_error=255)
    at core/functions.h:138
#3  0x00000000006ed707 in ReceivewxStringFromSocket(wxSocketBase*) (socket=0x6714) at core/functions.cpp:180
#4  0x0000000000690dc3 in AbInitio3DPanel::OnJobSocketEvent(wxSocketEvent&) ()
#5  0x0000000000e6126a in wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const ()
#6  0x0000000000e611c2 in wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&, wxEvent&) const ()
#7  0x0000000000f76cc5 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) ()
#8  0x0000000000f76fb6 in wxEvtHandler::SearchDynamicEventTable(wxEvent&) ()
#9  0x0000000000f7784d in wxEvtHandler::TryHereOnly(wxEvent&) ()
#10 0x0000000000f78f87 in wxEvtHandler::TryBeforeAndHere(wxEvent&) ()
#11 0x0000000000f75f7f in wxEvtHandler::ProcessEventLocally(wxEvent&) ()
#12 0x0000000000f75d48 in wxEvtHandler::ProcessEvent(wxEvent&) ()
#13 0x0000000000f76a75 in wxEvtHandler::ProcessPendingEvents() ()
#14 0x0000000000e6151d in wxAppConsoleBase::ProcessPendingEvents() ()

timgrant
Hi,

Hi,

This is hard to diagnose - do you have problems with jobs other than the ab-inito?

Cheers,

Tim

Yue Liu
Hi Tim,

Hi Tim,

Yes, I also tested 2D classification and ran into a similar situation. Please find the backtrace below. 

#0  0x00007ffff4629207 in raise () at /usr/lib64/libc.so.6
#1  0x00007ffff462a8f8 in abort () at /usr/lib64/libc.so.6
#2  0x0000000000542cd3 in ReadFromSocket(wxSocketBase*, void*, unsigned int, bool) (socket=0x8dc9, buffer=0x8dc9, nbytes=6, die_on_error=255)
    at core/functions.h:138
#3  0x00000000006ed707 in ReceivewxStringFromSocket(wxSocketBase*) (socket=0x8dc9) at core/functions.cpp:180
#4  0x000000000063d93c in MyRefine2DPanel::OnJobSocketEvent(wxSocketEvent&) (this=0x8dc9, event=...) at gui/MyRefine2DPanel.cpp:1512
#5  0x0000000000e6126a in wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const ()
#6  0x0000000000e611c2 in wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&, wxEvent&) const ()
#7  0x0000000000f76cc5 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) (entry=..., handler=0x3d88ff0, event=...) at ./src/common/event.cpp:1392
#8  0x0000000000f76fb6 in wxEvtHandler::SearchDynamicEventTable(wxEvent&) (this=0x3d88ff0, event=...) at ./src/common/event.cpp:1751
#9  0x0000000000f7784d in wxEvtHandler::TryHereOnly(wxEvent&) (this=0x3d88ff0, event=...) at ./src/common/event.cpp:1585
#10 0x0000000000f78f87 in wxEvtHandler::TryBeforeAndHere(wxEvent&) ()
#11 0x0000000000f75f7f in wxEvtHandler::ProcessEventLocally(wxEvent&) (this=0x3d88ff0, event=...) at ./src/common/event.cpp:1522
#12 0x0000000000f75d48 in wxEvtHandler::ProcessEvent(wxEvent&) (this=0x3d88ff0, event=...) at ./src/common/event.cpp:1495
#13 0x0000000000f76a75 in wxEvtHandler::ProcessPendingEvents() (this=0x3d88ff0) at ./src/common/event.cpp:1359
#14 0x0000000000e6151d in wxAppConsoleBase::ProcessPendingEvents() ()
#15 0x0000000000be13a8 in wxApp::DoIdle() ()
#16 0x0000000000bdee55 in wxapp_idle_callback ()
#17 0x00007ffff588dc77 in g_idle_dispatch () at /usr/lib64/libglib-2.0.so.0
#18 0x00007ffff5891049 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#19 0x00007ffff58913a8 in g_main_context_iterate.isra.19 () at /usr/lib64/libglib-2.0.so.0
#20 0x00007ffff589167a in g_main_loop_run () at /usr/lib64/libglib-2.0.so.0
#21 0x00007ffff789d247 in gtk_main () at /usr/lib64/libgtk-x11-2.0.so.0
#22 0x0000000000de5da2 in wxGUIEventLoop::DoRun() ()
#23 0x0000000000e9f4c4 in wxEventLoopBase::Run() (this=0x49240a0) at ./src/common/evtloopcmn.cpp:78
#24 0x0000000000e61db8 in wxAppConsoleBase::MainLoop() ()
#25 0x0000000000e60a6b in wxAppConsoleBase::OnRun() ()
#26 0x0000000000c8c6c9 in wxAppBase::OnRun() ()
#27 0x0000000000ed8ad8 in wxEntry(int&, wchar_t**) ()
#28 0x0000000000ed8bd0 in wxEntry(int&, char**) ()
#29 0x000000000043906d in main (argc=1, argv=0x8dc9) at programs/projectx/projectx.cpp:14

Best,

Yue

 

Yue Liu
Hi Tim,

Hi Tim,

Just to add to previous message, 

ASSERT INFO:
gui/../core/../core/functions.h(137): assert "Assert failure" failed in ReadFromSocket().

BACKTRACE:
[1] ReadFromSocket(wxSocketBase*, void*, unsigned int, bool) /tmp/cistem-1.0.0-beta/src/core/functions.h:137
[2] ReceivewxStringFromSocket(wxSocketBase*) /tmp/cistem-1.0.0-beta/src/core/functions.cpp:184
[3] MyRefine2DPanel::OnJobSocketEvent(wxSocketEvent&) /tmp/cistem-1.0.0-beta/src/gui/MyRefine2DPanel.cpp:1512
[4] wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const:1512
[5] wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&, wxEvent&) const:1512
[6] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&):1512
[7] wxEvtHandler::SearchDynamicEventTable(wxEvent&):1512
[8] wxEvtHandler::TryHereOnly(wxEvent&):1512
[9] wxEvtHandler::TryBeforeAndHere(wxEvent&):1512
[10] wxEvtHandler::ProcessEventLocally(wxEvent&):1512
[11] wxEvtHandler::ProcessEvent(wxEvent&):1512
[12] wxEvtHandler::ProcessPendingEvents():1512
[13] wxAppConsoleBase::ProcessPendingEvents():1512
[14] wxApp::DoIdle():1512
[15] wxapp_idle_callback app.cpp:1512
[16] g_main_context_dispatch
[17] g_main_loop_run
[18] gtk_main
[19] wxGUIEventLoop::DoRun()
[20] wxEventLoopBase::Run() /home/grigoriefflab/tmp/wxWidgets-3.0.2/./src/common/evtloopcmn.cpp:78
[21] wxAppConsoleBase::MainLoop():78
[22] wxAppConsoleBase::OnRun():78
[23] wxAppBase::OnRun():78
[24] wxEntry(int&, wchar_t**):78
[25] wxEntry(int&, char**):78
[26] main /tmp/cistem-1.0.0-beta/src/programs/projectx/projectx.cpp:14
[27] __libc_start_main
[28] _start
 

Log in or register to post comments