Reset Password
Existing players used to logging in with their character name and moo password must signup for a website account.
- BitLittle 18m
- adrognik 20m
- AmenBH2003 19m
- Komira 3s
- QueenZombean 3m
- JMo 4m Sheriff's posse's on my tail 'cause I'm in demand
- BigLammo 47s youtu.be/NZR4EeTkRqk
- BluuOwl 1m
- Napoleon 6m
- zxq 1m
- Ralph 5h
a Mench 1h Doing a bit of everything.
And 29 more hiding and/or disguised
Connect to Sindome @ moo.sindome.org:5555 or just Play Now

Files, files, files!
Long standing issue fixed

So, there was a long standing issue we have had. It's that MOO would routinely be told 'you have too many open files' when we tried to open a file and write it to disk. I investigated this.

MacOS had a 256 file limit on processes spawned from the terminal. I updated that, and last year and we restarted the MOO. It was not fixed.

This is a problem because as many of you may have encountered, sometimes we have to read data (e-notes, tv, scripts) from disk. And if they can't be read, things get a bit wonky.

The thing is, the MOO -never- has 256 files open. So WTF?

After we moved to our new server, the file limit was 1024 for processes by default. I thought the issue was resolved. It was not. We kept having the issue.

Turns out file-io has a built in limit that is set at compile time of 256 files. If it see's you have more than that, it says no, even if you're able. It's a hold over I guess, from times when open file handlers were a big source of latency or memory consumption I guess.

But STILL. The MOO -never- has that many files open.

Well, guess what? In Linux, everything is a damn file. Actual files being opened, but also socket connections. For those of you that don't know, each player connected equals a socket connection. And each time the MOO reaches out to an external service like a database or the website... that's a socket connection.

So now it makes more sense that we hit the 256 limit.

So, I updated the max files allowed to be opened in the fileio patch and recompiled the MOO. Then brought us back up. Then it still wasn't fixed, because I forgot to run 'make clean' before I ran 'make' which is why we had to go down for a minute again.

But now... I can confirm, it is fixed!

-- S

Shoulda let NSec handle it.

https://youtu.be/L_o_O7v1ews