I have five or six Windows NT services running, in production, at a customer. They are built with VAST 5.5.2. This morning, three of them froze or went to sleep or what ever. I am deliberately trying not to use a real technical term to describe their state as I don't really know what it was. After about three hours they woke up or came back to life. During the time they were out, they did nothing and here I really do mean nothing.
All of the programs have a high priority fork that wakes up every minute to see if there is anything they need to do based upon the time of day. Every other minute this fork logs a time stamp with #outputToTTY. During the time these servers were frozen, these log entries are missing. I think I have seen some missing log entries for a few minutes but didn't connect that with anything else (I just thought the disk didn't get updated or something).
Two of these servers are connected to outside hosts via TCP/IP that send them messages. One of which gets between 1 and 2 million a day. During the time they were frozen these connections were not serviced. When the program woke up, it went back to reading from the connection. About 20 messages were read and then the line went dead. I'm sure the other side had killed the connection hours ago. I would think that as soon as the program woke up and tried to talk to the connection it should have been told the line was dead and not been able to read 20 messages. I'm not sure what this means but I thought I should mention it.
All these servers are also listening on a port for a connection from one of my workstation programs that can ask it questions or tell it to do something. After this program connected to one or more of the servers, they seem to wake up. I don't know if this is what woke them up or it is a coincidence.
I don't see how this could be caused by Smalltalk code. It could be a VM problem but that doesn't make a lot of sense because I can't think of any reason why the VM wouldn't dispatch any of the forks of Smalltalk code.
It could be windows not dispatching the Smalltalk VM but I can't think of a good reason for that.
Has anyone seen anything like this? By this I mean the program freezing, the stuff about the sockets and such is just how I know the programs were frozen.