RE: Error 1104

Author: Kent Belan

Posted: 2011-09-03 at 09:30:05

Hello Ted,

Thanks for responding. This is not one of those "easy" problems to fix.

This may not be a unique setup, but it is very complex (for me at least).

Yes, all the VFP EXE's are running on the same computer, a Windows Server

2003, Web Edition SP2.

The VFP EXE is listening on a IP:Port to receive the incoming request string

from the VB "traffic cop". It processes the string and then returns the

answer string on the same port. There is a custom hand shake that takes

place that the VFP EXE sends to the VB program on that port to let the VB

traffic cop know it is ready for another transaction.

I have added a mini close/open routine that now will close the open tables

and reopen after each transaction to see if this helps. We had this at the

beginning of the project, but turned it off so the tables would stay open to

increase speed.

Will have to wait and see if this helps. This weekend should be a good test.

Go DAWGS !!!

-----Original Message-----

From: profox-bounces@leafe.com [mailto:profox-bounces@leafe.com] On Behalf

Of Ted Roche

Sent: Friday, September 02, 2011 8:04 PM

To: profox@leafe.com

Subject: Re: Error 1104

On Fri, Sep 2, 2011 at 4:33 PM, Kent Belan <kbelan@mchsi.com> wrote:

> I have an application that stays running 24/7 and during some parts of

> the day can have very heavy volume.

>

> Every once in a while and not at the same place in the code, the

> program will error with 1104 - Error reading file. "The operating

> system returned an error while VFP was attempting to read the specified

file"

>

> If I stop the EXE and start it right back up, everything is good.

>

> Nothing is done to the computer, no reboot or remapping of network

> drives, just restart the VFP EXE.

>

> This is a very unique setup.

Kent:

You may be surprised to learn that it's not. Many VFP developers have

implemented similar farms of VFP apps feed by job queues. I've worked on a

couple of projects that used something similar.

It's a dirty little secret that apps that support pools of worker threads

like IIS or MySQL terminate the threads after so many calls, or so much

time, in order to avoid them failing in the various modes long-running

threads do: memory bloat, failed garbage collection, etc.

> Since VFP is not multi-threaded, there is a VB program that receives

> requests from a TCP/IP socket and then passes the request to one of

> many VFP EXE's waiting for a transaction.

>

> There can be 2 to 20 VFP EXE's running at the same time waiting and

> processing requests.

Are they all running on the same machine? Which OS (es)?

>

> Everything works great, until the 1104 error starts happening and then

> all VFP EXE's get the same error and all have to be shut down and

restarted.

>

> It does not happen very often, but when it happens it is a real hassle

> and shuts down the operations.

>

> Any ideas on what may cause the 1104 and a possible solution ?

Yeah, something broke the shared file handle and all the apps lose the

connection. How is VFP getting the new job? Is is trying to read a file or a

DBF it keeps open long-term? Try closing it and opening it only when needed.

Google's got a couple of useful hits on "VFP Error 1104"

--

Ted Roche

Ted Roche & Associates, LLC

http://www.tedroche.com

[excessive quoting removed by server]

_______________________________________________

Post Messages to: ProFox@leafe.com

Subscription Maintenance: http://leafe.com/mailman/listinfo/profox

OT-free version of this list: http://leafe.com/mailman/listinfo/profoxtech

Searchable Archive: http://leafe.com/archives/search/profox

This message: http://leafe.com/archives/byMID/profox/159BACEF335F4F25823B48FF8775F636@LaptopW7

** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.

©2011 Kent Belan