Reached 100gb world to mineos and... cant even login to Web UI

How are you currently running it if I may ask? (sorry if this question sounds sarcastic it because it’s not meant to be)

MineOS should only ask for tha latest entries in the “latest.log”, and it should only read the last few lines of that log. I tried to take a look into the code, but cant see any place that should do anything different.

It could be interessting to see the size of the log files it tries to read. I guess it might be a problem with the log file length, but since we ask for the last lines of the file, (not anything specific or anything in the middle) it shouldn’t be to resource heavy gett ing the tail. Then again. if I try to load a really large log file into nano, it takes ages, and the log file size may have an impact. Log files are created new every day, but for large worlds (with many users) the file may grown large quickly due to the amount of items logged.

This is purely speculation though.

I’ve taken a look at my logs and I don’t even get as far as you.

It just times out after the “joined server namespace”.

I’ve made a chronology of what event I could gather.
1- Log in the webui
2- Web-ui is responding but not updating (cached most likely)
3- node goes into ‘rage’ mode and at this point the mineos web site can’t be accessed
4- node calm down from ‘rage’ and the web site is now available
5- go back to step one and repeat…

1-2-3 are pretty much instantaneous, while 4 seems to take a while.

@iMelsom My latest.log seem to be getting out of hand at times indeed but at this moment it’s 305k so nothing unmanagable
image

Then we have two possible scenarios:

  1. Huge log files makes for very slow tailing
  2. adding large server to namespace makes the webui outgrow it bounds but trying to load too much .

I somewhat doubt the first one, since there are spesific functions and variables in most development languages to define what end of a file to read from.

The only place “Joined namesapce” turns up in server.js is int this “else” in a if-else:

  else {
    logging.info('[{0}] {1} ({2}) joined server namespace'.format(server_name, username, ip_address));

    socket.on('command', produce_receipt);
    socket.on('get_file_contents', get_file_contents);
    socket.on('get_available_tails', get_available_tails);
    socket.on('property', get_prop);
    socket.on('page_data', get_page_data);
    socket.on('cron', manage_cron);
    socket.on('server.properties', broadcast_sp);
    socket.on('server.config', broadcast_sc);
    socket.on('cron.config', broadcast_cc);
    socket.on('server-icon.png', broadcast_icon);
    socket.on('config.yml', broadcast_cy);
    socket.on('req_server_activity', broadcast_notices);
  }

So if it hangs on server join to namespace, it has entered this part of the script…

I’m not sure if I fully understand your question, but I am running an HP Proliant DL380 G5 system. The specs are: dual quad core Xeon 2.33 GHz with 16 GB ram and 3 SAS 146GB had setup in RAID-5. It’s local so it isn’t impacted by the bandwidth as some SaaS solutions may be. And being a server, it is designed for data throughput.

What if mine-os fails to get a tail does it just go leave it be or keep trying?

Also where would we see server-icon.png I have actually never seen any server icon png’s.

I think the 2nd scenario might be really likely although I am not very advanced with nodeJS/this area. But I removed my log files and even then it’s still timing out.

I am just gonna post a few forum posts that might be comparable to this topic/problem:

gonna try to run a possible solution but I am waiting for the server to finish up zipping and transferring a backup in case it goes wrong.

Edit:
So I just completed the backup and deleted my biggest server from mineOS. And, it fixed it somehow so it’s probably the file size considering that the tar.bz2 file was already 15GB (my whole server was 30GB in tar.bz2 yesterday) the web-ui runs a lot more fluently now. But at the time of writing it just timed out again, telling me that it still isn’t optimally performing. I might just try installing the version I saw coming by of @JayMontana36 while looking around on the forums.

So yea whatever @hexparrot has coded does not work.

I can confirm if you run on an SSD this still occurs but after like 4 mins which is enough time to start or fix something on the control panel.

So HDD has 0 support essentially. This is kinda sad not being to host a big survival server :confused:

Ok so a bit late but it seems fixed on my side of things.

I had to move my dynmap another server so I switched to a mysql storage instead of the default filetree, I then deleted the files in /plugin/dynmap/web/tiles for my 3 worlds.
MineOS is now more resonsive than ever, so my best guess to the issue is that the code @hexparrot wrote to skip some directories must not work as intended.