Skip to content
  • Rob Swindell's avatar
    74724d0b
    When searching for unused nodes, skip nodes that have sockets in-use · 74724d0b
    Rob Swindell authored
    We already know such nodes are in-use, so no need to read their node.dab
    record and put extra contention on the node.dab file. Hoepfully this
    reduces or eliminates occurrences of the error:
        Node n status is WFC, but the node socket (s) and thread are still in use!
    Though I kind of expect occurrences of "NODE STATUS FIXUP" errors to likely
    return.
    
    We could in theory just track status of nodes in memory (for those
    nodes that this instance of sbbs controls), and not read the node.dab file at
    all when checking those nodes' status, but:
    - that would prevent out of process control of node status
      e.g. using the node utility to mark a node as offline
    - we'd have to protect instance of in-memory node status checking/changing
      with a mutex
    74724d0b
    When searching for unused nodes, skip nodes that have sockets in-use
    Rob Swindell authored
    We already know such nodes are in-use, so no need to read their node.dab
    record and put extra contention on the node.dab file. Hoepfully this
    reduces or eliminates occurrences of the error:
        Node n status is WFC, but the node socket (s) and thread are still in use!
    Though I kind of expect occurrences of "NODE STATUS FIXUP" errors to likely
    return.
    
    We could in theory just track status of nodes in memory (for those
    nodes that this instance of sbbs controls), and not read the node.dab file at
    all when checking those nodes' status, but:
    - that would prevent out of process control of node status
      e.g. using the node utility to mark a node as offline
    - we'd have to protect instance of in-memory node status checking/changing
      with a mutex
Loading