New to CryoSPARC, web dashboard does not load

solved

#1

Hi, I probably messed up my standalone installation of cryosparc 2.5 somewhere. Running OpenSUSE harlequin. Originally used a drive that just barely didn’t have enough space to finish the install but still managed to start cryosparc in the background. I deleted the installation and cleared the additions from .bashrc and used a larger drive for the next one but didn’t stop cryosparc in the background before doing so. When I tried to launch the dashboard from firefox, I could connect but only a blank page would load. I deleted the .sock file from /tmp that was left by the previous installation (also searched for orphan supervisord processes but found none) but it didn’t fix the issue, only resolving cryosparc’s claim that another instance was already running and making ‘cryosparcm status’ generate a less problem-ridden output.

I was getting [Errno 98] from from ‘cryosparcm log command_core’ as well as another error in ‘cryosparcm log webapp’. I realized I had set up the second installation using the same default port as the first, which the directions suggest not to do, so I deleted everything, cleared the shell script, and reinstalled while telling it to use port 39001 instead of 39000. I think this may have resolved [Errno 98] and Cryosparc claims to be running normally according to the status command but there is a new error in command_core and the web dashboard is still blank. These are the outputs for the following diagnostic commands. Apologies if I put too much out at once:

$ cryosparcm status

CryoSPARC System master node installed at
/data/softwares/cryosparc/cryosparc2_master
Current cryoSPARC version: v2.5.0

cryosparcm process status:

command_core RUNNING pid 12611, uptime 23:20:03
command_proxy RUNNING pid 12641, uptime 23:20:00
command_vis RUNNING pid 12630, uptime 23:20:02
database RUNNING pid 12534, uptime 23:20:06
watchdog_dev STOPPED Not started
webapp RUNNING pid 12646, uptime 23:19:58
webapp_dev STOPPED Not started


global config variables:

export CRYOSPARC_LICENSE_ID=“xxx”
export CRYOSPARC_MASTER_HOSTNAME=“yyy”
export CRYOSPARC_DB_PATH="/data/softwares/cryosparc/cryosparc2_database"
export CRYOSPARC_BASE_PORT=39001
export CRYOSPARC_DEVELOP=false
export CRYOSPARC_INSECURE=false

$ cryosparcm log command_core
COMMAND CORE STARTED === 2019-02-09 01:12:03.045045 ==========================
*** BG WORKER START
[JSONRPC ERROR 2019-02-09 01:12:03.671016 at set_config_var ]

Traceback (most recent call last):
File “cryosparc2_command/command_core/init.py”, line 106, in wrapper
res = func(*args, **kwargs)
File “cryosparc2_command/command_core/init.py”, line 339, in set_config_var
mongo.db[colname].update_one({‘name’ : name}, {op : {‘name’ : name, ‘value’ : value}}, upsert=True)
File “/data/softwares/cryosparc/cryosparc2_master/deps/anaconda/lib/python2.7/site-packages/pymongo/collection.py”, line 894, in update_one
collation=collation)
File “/data/softwares/cryosparc/cryosparc2_master/deps/anaconda/lib/python2.7/site-packages/pymongo/collection.py”, line 753, in _update
codec_options=self.__write_response_codec_options).copy()
File “/data/softwares/cryosparc/cryosparc2_master/deps/anaconda/lib/python2.7/site-packages/pymongo/pool.py”, line 424, in command
self._raise_connection_failure(error)
File “/data/softwares/cryosparc/cryosparc2_master/deps/anaconda/lib/python2.7/site-packages/pymongo/pool.py”, line 552, in _raise_connection_failure
raise error
NotMasterError: not master

[2019-02-09 01:12:03,674] ERROR in app: Exception on /startup [GET]
Traceback (most recent call last):
File “/data/softwares/cryosparc/cryosparc2_master/deps/anaconda/lib/python2.7/site-packages/flask/app.py”, line 1982, in wsgi_app
response = self.full_dispatch_request()
File “/data/softwares/cryosparc/cryosparc2_master/deps/anaconda/lib/python2.7/site-packages/flask/app.py”, line 1614, in full_dispatch_request
rv = self.handle_user_exception(e)
File “/data/softwares/cryosparc/cryosparc2_master/deps/anaconda/lib/python2.7/site-packages/flask/app.py”, line 1517, in handle_user_exception
reraise(exc_type, exc_value, tb)
File “/data/softwares/cryosparc/cryosparc2_master/deps/anaconda/lib/python2.7/site-packages/flask/app.py”, line 1612, in full_dispatch_request
rv = self.dispatch_request()
File “/data/softwares/cryosparc/cryosparc2_master/deps/anaconda/lib/python2.7/site-packages/flask/app.py”, line 1598, in dispatch_request
return self.view_functionsrule.endpoint
File “cryosparc2_command/command_core/init.py”, line 208, in startup
set_config_var(‘running_version’, versionfile.read().strip())
File “cryosparc2_command/command_core/init.py”, line 115, in wrapper
raise e
NotMasterError: not master
*** LINK WORKER START
======== Creating User: xxx yyy
COMMAND CORE STARTED === 2019-02-09 01:23:29.503078 ==========================
*** BG WORKER START
*** LINK WORKER START
COMMAND CORE STARTED === 2019-02-09 01:28:48.359864 ==========================
*** BG WORKER START
*** LINK WORKER START
COMMAND CORE STARTED === 2019-02-09 02:20:23.501915 ==========================
*** BG WORKER START
*** LINK WORKER START

$ cryosparcm log webapp
cryoSPARC v2
Ready to serve GridFS
cryoSPARC v2
Ready to serve GridFS
cryoSPARC v2
Ready to serve GridFS
cryoSPARC v2
Ready to serve GridFS

I can provide the database log if you wish. I am not entirely certain if it has real errors or not but it was too long to include here.

When I go into developer mode in firefox, I see 2 actions occur. The first is a successful GET for ‘the workstation’s ip’:39001/ and the second is a 304 unmodified GET for ‘the workstation’s ip’:39001/bee5194516e3c0f0626ac0d188c87ed28d1a257a.js?meteor_js_resource=true
Also from everything I can tell, the port is open.

Don’t know which or if any of that might help but I’m most interested in fixing the ’ NotMasterError: not master’ problems that appeared in command_core log. Is it a coincidense or are they related to the GET requests from the web browser? Thank you in advance just for getting through this whole post, I appreciate it more than you know.


#2

You should keep using 39000 in you installation commands. A port is not going to be “used up” by a previous installation (assuming that you have restarted the computer). 39001 is used internally by mongodb. You should not need to specify 39001 during installation at all.

Easiest thing to do is to re-install, which entails deleting the current installation directory and restarting computer (so that cryosparc2 is not started). However I suspect that you may also have some necessary libraries missing. You can try doing the following before you start installing cryoSPARC2:

Test your nvidia driver installation is OK:

glxgears

Compile RELION-GPU verion. This will fail if your linux lacks certain packages that cryoSPARC2 may also need. Certainly it will fail if your CUDA is not installed properly. If it succeeds you can proceed to cryoSPARC2. The following commands may be helpful to get your system ready (not sure what SUSE’s package manager is, the following are for ubuntu):

sudo apt-get update && sudo apt-get install build-essential
sudo apt-get install libfltk1.3-dev libfftw3-dev libfftw3-doc libtiff5-dev
apt install libopenmpi openmpi-bin openmpi-common
(this one is only for relion)
sudo apt install libx11-dev
(for relion too, doesn’t hurt to have)


#3

Thanks for the suggestion. I wasn’t able to spend a lot of time to fix the issue but the packages were all there. Managed to fix it by stopping cryosparc, uninstalling, referring to this: cryoSPARC on OpenSuse 13 and then reinstalling and using the latest chrome. I’m weary of running into other conflicts with the OS but at least I can find out what they will be now.


#4

I also encountered a blank webapp after a fresh installation … and a simple stop/start of cryosparcm seems to solve it!