rosinality / knotter

Implementation of Mapper algorithm for Topological Data Analysis
MIT License
45 stars 13 forks source link

Data fails to load #10

Open NickHogan opened 6 years ago

NickHogan commented 6 years ago

After clicking browse and selecting a CSV, that is comma separated, the data fails to load. Any idea why?

rosinality commented 6 years ago

If data file is too large that can be problematic, because web interface uses simple http (websocket) communication. Anyway, you can get error messages from the shell or command prompt that running knotter.

NickHogan commented 6 years ago

It actually seems to say the port is in use and even when I shutdown the virtual environment running knott I can still access it on localhost:8000

Could it be that I'm not shunting the program down correctly?

rosinality commented 6 years ago

Seems like that server process is running. You can shutdown knotter with Ctrl-C. Or could you try to kill the running process?

NickHogan commented 6 years ago

I've done both already, I've even shutdown the VM but the process seems to be still running. Any idea how that's possible? I'm on Linux by the way.

rosinality commented 6 years ago

Maybe it became zombie process. Please try to use kill -9 or kill parent python process. Because of knotter launches several child processes (webserver, websocket server, etc.) running/exiting can became complicated.

NickHogan commented 6 years ago

I can't figure out how to kill it. I've opened the virtual environment where is it stored and looked for the process but can't see it running anywhere. Any ideas?

NickHogan commented 6 years ago

Also, when I open 127.0.0.1:8000 the Knotter GUI loads, but when I search for listening ports with lsof -i | grep 8000 I find nothing? Whenever I open knotter it claims the port is taken.

rosinality commented 6 years ago

I don't know how could process is still running even after the reset virtual machine... (maybe process is auto restarting after the reset?) Anyway please try something like pkill -9 python.

NickHogan commented 6 years ago

I've tried pkill -9 python and that didn't change much, but I went into the init and server.py files and tried to change some stuff. I changed the local host from 8000 to a new local host and I changed the server location from 9000 to 9000 because I got the errors:

OSError: [Errno 98] Address already in use

and

OSError: [Errno 98] error while attempting to bind on address ('127.0.0.1', 9000): address already in use

these both loaded without error but the data still wouldn't load so I closed them with crtl-c and ran pkill -9 python and tried relaunching them, at which point I got the same errors but with the ports changed to my new ports.

It seems that ctrl-c can't shutdown knotter from the command line, but it doesn't explain why the data can't be loaded in the new ports?

rosinality commented 6 years ago

Because 9000 (websocket port) hardcoded in https://github.com/rosinality/knotter/blob/master/knotter/static/js/main.js#L137 Still I don't know why this happens.