Sysop: | Amessyroom |
---|---|
Location: | Fayetteville, NC |
Users: | 43 |
Nodes: | 6 (0 / 6) |
Uptime: | 28:00:21 |
Calls: | 286 |
Calls today: | 1 |
Files: | 899 |
Messages: | 76,591 |
... I can't seem to find the discussion but recall it having occured,
where with Linux or maybe just WWIV 5.9-Dev, if a user hangs up,
especially when within a chain/door, the instance does not clear. I can type ./wwivutil instance dump and see that one of four are stuck. Eventually it gets to a point that all nodes are busy and nobody can
call in.
1. I can't locate any bsy files.
2. I can delete the nodeinuse file but it doesn't actually clear the instance.
3. The only thing that works is systemctl restart wwivd.service
Is there a trick to getting these cleared out and or has someone come up with a short script that does this after a hang up / after each logoff
that works?
I don't seem to fully understand the command I can use to clear these
up.
Thoughts?
I see the same here on Windows x86. Never have been able to figure out exactly why, but what I have to do IF a restart doesn't fix it, is to manually launch each instance locally and sign off normally.
I don't think I've ever logged on to a specific instance before as you describe. Do you do this from ./bbs ? And sign in as the user locally?
What I had done was install a door, and now my SysOp account when
listing //who is online, states that I'm online in that door, while also
the actual instance I'm within. I'm not sure if there is a trick to clearing it out not as you described but I'd love to give it a go as restarting wwivd.service didn't quite do the trick :/
Is there a trick to getting these cleared out and or has someone come up with a short script that does this after a hang up / after each logoff
that works?
I don't seem to fully understand the command I can use to clear these
up.
It's in instances.dat I believe. If you want to add a subcommand to fix
it to wwivutil instance that'd be a handy thing to have.
In the meantime, I just use ./bbs -u1 -n$NODE_TO_CLEAR and then logoff. That's the best current fix unfortunately.
I wonder if it's getting that info from the chain file?
In the meantime, I just use ./bbs -u1 -n$NODE_TO_CLEAR and then logoff. That's the best current fix unfortunately.
Could something like that become a Sysop menu command or WFC option?Realizing as I hit /s that it wouldn't work as you're launching a new instance with no interface to terminate it.
I wasn't sure if wwivutil was used any longer or not, I can surely try
to figure out how to add a sub command :) I was only able to view the instances with ./wwivutil instance dump.
much more time. Is there a singular place where ./bbs and ./network
command line options (or most common used) exist? (off topic but it's
If a subcommand existed would it make more sense in wwivd or wwivutil?
In the meantime, I just use ./bbs -u1 -n$NODE_TO_CLEAR and then
logoff.
That's the best current fix unfortunately.
Could something like that become a Sysop menu command or WFC option?
Is the door actually running when it shows the 'ghost' user logged in
still? Since you're in Linux, can't you just 'ps aux | grep <filename>'
(the filename of the door that's running) and then kill that process? It should throw the 'user' back to the BBS which should in turn notice that they're not connected anymore. Maybe this is a more 'heavy-handed' way
of doing things.
Is the door actually running when it shows the 'ghost' user logged in
still? Since you're in Linux, can't you just 'ps aux | grep <filename>'
No the doors not running. And as for killing the process, the issue is
that eventually it ties up all availble nodes and then nobody can call
the BBS until they are cleared out. So if one is not home atm, an
automated process would be a slick solution. Also, I'm not sure there
is a process running at that moment or not but wil check next time it occurs. It would be heavy handed but also a bit faster than logging
into the node and logging off the ghost user.
and either email to me or post on here. I'm trying to think through a solution
and don't completely understand the state of things.
I don't know if this is helpful or not... in servo (talismans wwivd
thing) I store the pid of each node that is forked off, then each time a thing) new connection comes in, go through each pid and see if it
I don't know if this is helpful or not... in servo (talismans wwivd thing) I store the pid of each node that is forked off, then
each time a
thing) new connection comes in, go through each pid and see if it
Thanks, this may be helpful if the bbs process has exited and wwivd
missed that and thought it was still there.
No the doors not running. And as for killing the process, the
issue is
that eventually it ties up all availble nodes and then nobody
can call
the BBS until they are cleared out. So if one is not home atm, an automated process would be a slick solution. Also, I'm not
sure there
is a process running at that moment or not but wil check next time it occurs. It would be heavy handed but also a bit faster than logging
into the node and logging off the ghost user.
I gotcha, now I understand what's happening, this is in the wwivd's
version of which node is still available to be assigned out.
can you do a ps -ef | grep wwiv next time you have some of these tied up nodes and either email to me or post on here. I'm trying to think
through a solution and don't completely understand the state of things.
Thanks so much! I appreciate it
rushfan
when a user hangs up while a door game is active in the chains menu, it creates a bsy file for that node somewhere, so the next time the userSSM should be sent to sysop to designate what node directory the busy file is in.
logs in and attempt to play that game it states "a user already in node1 playing that game want to join in" or something to that sort. It never seems to clear itself out. It's not been an issue but maybe related to