• Instances

    From Recon #1@126.Wwivnet@11:1/101 to All on Sat Nov 23 21:11:45 2024

    It's a quiet bunch....

    ... 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?

    |08r|103|08c|100|08n

    |08Gh|150|08sts |07in the |15Machine
    |08ghostmachine.ddns.net|15:|08 t|151717 |08ssh|157777


                 
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Jimmy Mac #1@707.Wwivnet@11:1/101 to Recon #1 on Sun Nov 24 10:07:08 2024


    ... 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.


    <--> The Blood Stone BBS - Telnet & HTTP www.bsbbs.com <-->
    \/ WWIVnet Node 1@707 - Sonoma County California \/
          
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Recon #1@126.Wwivnet@11:1/101 to Jimmy Mac #1 on Sun Nov 24 11:01:06 2024

    /q[B
    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 :/

    Thanks Mr. Mac!

    |08r|103|08c|100|08n

    |08Gh|150|08sts |07in the |15Machine
    |08ghostmachine.ddns.net|15:|08 t|151717 |08ssh|157777


              
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Jimmy Mac #1@707.Wwivnet@11:1/101 to Recon #1 on Sun Nov 24 20:12:26 2024


    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?

    Not sure if it's the same on Linux, but I use the fllowing:
    "C:\wwiv\bbs.exe -m -nxx" with the xx being the node number


    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 :/

    I wonder if it's getting that info from the chain file?


    <--> The Blood Stone BBS - Telnet & HTTP www.bsbbs.com <-->
    \/ WWIVnet Node 1@707 - Sonoma County California \/
          
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Rushfan #1@513.Wwivnet@11:1/101 to Recon #1 on Mon Nov 25 12:35:40 2024


    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.

    There's no separate bsy files, it's all instance.dat

    rushfan



    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Recon #1@126.Wwivnet@11:1/101 to Rushfan #1 on Mon Nov 25 17:58:40 2024

    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.

    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.

    In the meantime, I just use ./bbs -u1 -n$NODE_TO_CLEAR and then logoff. That's the best current fix unfortunately.

    Yeah that does appear to be a more time consuming solution but not that 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 been a long day ..)

    If a subcommand existed would it make more sense in wwivd or wwivutil?

    |08r|103|08c|100|08n

    |08Gh|150|08sts |07in the |15Machine
    |08ghostmachine.ddns.net|15:|08 t|151717 |08ssh|157777


    p ╞"→
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Recon #1@126.Wwivnet@11:1/101 to Jimmy Mac #1 on Mon Nov 25 18:00:49 2024

    I wonder if it's getting that info from the chain file?

    I thought the same thing too! However resetting WWIVD fixed it for now. I'll keep an eye on it and use you and Rush's suggestion to login as the ghost node user and log it out.

    Thanks jM!


    |08Gh|150|08sts |07in the |15Machine
    |08ghostmachine.ddns.net|15:|08 t|151717 |08ssh|157777


    →          
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Jimmy Mac #1@707.Wwivnet@11:1/101 to Rushfan #1 on Tue Nov 26 08:56:44 2024


    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?


    <--> The Blood Stone BBS - Telnet & HTTP www.bsbbs.com <-->
    \/ WWIVnet Node 1@707 - Sonoma County California \/
    →p ╞"
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Jimmy Mac #1@707.Wwivnet@11:1/101 to Jimmy Mac #1 on Tue Nov 26 08:59:26 2024


    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.
    Not to mention the different commands between Win and Linux


    <--> The Blood Stone BBS - Telnet & HTTP www.bsbbs.com <-->
    \/ WWIVnet Node 1@707 - Sonoma County California \/
          
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Phigan #1@137.Wwivnet@11:1/101 to Recon #1 on Tue Nov 26 08:32:55 2024

    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.
    → 
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Rushfan #1@513.Wwivnet@11:1/101 to Recon #1 on Tue Nov 26 12:43:05 2024


    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.

    Yes, wwivutil is still used and all new external tooling has been added to it over the years, just run wwivutil help and there are lots of commands.


    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

    Each binary has a -? or help command which lists out the commands and arguments, Also our docs have much of it online, example:
    https://docs.wwivbbs.org/en/latest/wwivutil/


    If a subcommand existed would it make more sense in wwivd or wwivutil?


    wwivutil would make sense, wwivd is just a daemon, wwivutil is a tool. If I ever finished the API to wwivd then we could add an HTTP handler but it'd likely just call wwivutil under the covers.

    rushfan



    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Rushfan #1@513.Wwivnet@11:1/101 to Jimmy Mac #1 on Tue Nov 26 12:44:21 2024


    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?

    A sysop menu command could just run wwivutil to do it. That'd be a good way to invoke it.

    rushfan



    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Rushfan #1@513.Wwivnet@11:1/101 to Phigan #1 on Tue Nov 26 12:46:03 2024


    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.

    Oh, I misread that it was a hung instance, I thougth it was just the status (i..e //WHO).

    Yes for that you do need to force kill the node and then it should recycle appropriately. Sorry, need more coffee



    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Recon #1@126.Wwivnet@11:1/101 to Phigan #1 on Tue Nov 26 17:44:04 2024

    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.

    |08r|103|08c|100|08n

    |08Gh|150|08sts |07in the |15Machine
    |08ghostmachine.ddns.net|15:|08 t|151717 |08ssh|157777


              
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Rushfan #1@513.Wwivnet@11:1/101 to Recon #1 on Wed Nov 27 00:41:52 2024


    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



    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From apam #10@127.Wwivnet@11:1/101 to All on Thu Nov 28 06:48:26 2024

    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 new connection comes in, go through each pid and see if it exists, and if it does check if the process name is talisman. (The idea being that if the pid gets reused, it will have a different name, though the likely hood of that happening are very low). so if it doesn't exist or has a different name, the node is free, otherwise, it's still in use.

    Linux uses the proc filesystem to grab the process name, windows has a different mechanism, i forget what right now - but the source code is there, and macOS has libproc (*BSD uses /proc too).

    Andrew
    --- Noddy git-4716e54
    * Origin: Space Junk! BBS :: SpaceJunkBBS.com:2323 (127)
     
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Rushfan #1@513.Wwivnet@11:1/101 to Apam #10 on Thu Nov 28 10:13:12 2024


    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.



    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Rushfan #1@513.Wwivnet@11:1/101 to Rushfan #1 on Thu Nov 28 10:14:10 2024


    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.

    I added this idea to a github issue so I don't forget it - https://github.com/wwivbbs/wwiv/issues/1640

    Thanks apam@ !!!



    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Recon #1@126.Wwivnet@11:1/101 to Rushfan #1 on Fri Jan 10 18:22:26 2025

    To revist the below, I'll see if an issue is open on git; for here also 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 user 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 the other issue that was discussed below for what it's worth.


    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



    |08Gh|150|08sts |07in the |15Machine
    |08ghostmachine.ddns.net|15:|08 t|151717 |08ssh|157777


              
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)
  • From Utopian Galt #1@815.Wwivnet@11:1/101 to Recon #1 on Fri Jan 10 23:52:06 2025


    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 user
    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
    SSM should be sent to sysop to designate what node directory the busy file is in.


    * |10message brought to you by |15Inland Utopia BBS mail reader.
        
    --- WWIVToss v.1.52
    * Origin: http://www.weather-station.org * Bel Air, MD -USA (11:1/101.0)