Date:  02/25/2005 04:29:07 AM Msg ID:  002461
From:  Andrea Caletti Thread:  002459
Subject:  Re: No Channels Active when run as SERVICE
Our test in RED.
 
Thank you.
 
Sent by FoxWeb Support on 02/24/2005 01:12:33 PM:
Are you sure that channels are started to begin with?  This does not make much sense, because if FoxWeb can start channels when the service is started, it should also be able to kill and restart them.
Yes, we have 3 channels: after we reboot the server all channels are active (scripts/foxweb.exe/show_channels ) .
 
In general, if something works if you run FoxWeb as a regular app., but does not work if you run it as a service, it's a user rights issue.  However, in this case the service is running as the Local System account (you wrote "Local Machine", but I assume you meant "Local System"), which normally has full user rights on the local computer.
Yes, the account is Local System and not Local Machine
 
I recommend that you first make sure that channels are started properly:
  1. Start FoxWeb as a service.  Open the Task Manager by right-clicking on the task bar and selecting "Task Manager".
  2. In the Windows Task Manager window, make sure that the "Show processes from all users" check box is checked.
  3. Sort the various processes by name, by clicking on the "Image Name" header.
  4. Can you see fwstart.exe? YES  What user is it running under (it should be SYSTEM)? SYSTEM
  5. Can you see fwserver.exe or VFP.EXE (which on you see will depend on whether you are using the VFP run-time DLL).  There should be a separate instance for each channel.  These processes should be running under the same user name as fwstart.exe. We have 3 fwserver.exe (1 for each channel)
  6. Try killing one of the channel instances, by selecting it and clicking the "End Process" button.  Does the process come back? The process come back, but from scripts/foxweb.exe/show_channels we see only 2 channels active ( we have also refreshed the page and waiting for a few minutes).

Fwserver restarts but not the channel. In the same condition we made our test : in our web site, we have a page that drive foxweb in time-out, we load this page once for every channel (3) in the same moment, all of the 3 channel go busy, after a few minutes channels go down one after another,3 fwserver are killed and restored, 2 of the 3 channels return ready, not the third. We reload 3 pages in this condition, so 2 channels go busy and 1 request remain pending, when channel go down , the pending request is cancelled (We thought that pending request wait for ready-channel...) and only one of the two active channel was restored. The next time (1 channel busy and 2 pending request) non channel restarts and foxweb die.

When we restart the service from Control Panel\Administrative Tools\Services applet the situation is:

From Control panel we can see 3 fwserver.exe but from scripts/foxweb.exe/show_channels we can see sometimes 2 channels sometimes 1 channel.

Only when we reboot the server all 3 channels are active .

We have try also with 2 channels with the same behaviour. ( not all channels come back)

 

If the above is not working, then try the following:
  1. Log into the system through the console (not through a Remote Desktop, or Terminal Services session).
  2. Open the properties of the FoxWeb service in the Control Panel\Administrative Tools\Services applet.
  3. In the Log On tab, check the box labeled "Interact with the desktop".
  4. Restart the FoxWeb service.  You should now be able to see the FoxWeb icon in the tray area of the task bar.
  5. Right click on the icon and uncheck the Hide Channels option.  You should not be able to see an icon for each channel.
  6. Kill one of the channels by right-clicking on its icon and selecting the "Close" option.  Does the channel come back?  If not, do you see any pop up messages, or other indication of what the problem may be?
  7. Don't forget to re-enable the Hide Channels option and disable the "Interact with the desktop" check box.  You will need to restart the FoxWeb service for this to take effect. (In general, you should never run the FoxWeb service with the Interact with the desktop option enabled, unless you are troubleshooting a problem).

In this case everything really work, in your test there is no delay, all channels go ready quickly, fwserver.exe and channel are the same number, but in our test we saw something wrong. In fact when a channel is restarted another foxweb.exe window appear and in it there is an error message. This window appear for while a then disappear, after that the channel restarts.

The error message (that is written also in C:\WINDOWS\system32\VFP7Rerr.log) says :

Fatal error: Exception code=C0000005 @ 25/02/2005 11:41:13. Error log file: C:\WINDOWS\system32\VFP7Rerr.log

Called from -  fwmain line 185  {c:\program files\foxweb\fwserver\progs\start.prg c:\program files\foxweb\fwserver.exe}

Called from -  start line 32  {c:\program files\foxweb\fwserver\progs\start.prg c:\program files\foxweb\fwserver.exe}

What's does go wrong?

If possible that, when foxweb can't interact with desktop, it cannot close error message and then not to restart the channel?

 

FoxWeb Support Team
support@foxweb.com email