It's not quite a bug , but rather a performance-related choice from the VFP developers. Packing FPT files is a time and I/O-intensive process, which should be employed only when necessary. Unpacked tables can get quite large, but do not cause performance issues for the most part.
In any case, FoxWeb automatically packs the session table when it starts up.
FoxWeb Support Team
Sent by Martin Martin on 08/01/2012 04:52:36 PM:
In fact, the bug is in foxpro itself.
to reproduce this you just have to :
1- add 1 record to any table with a memo field.
2- Add any text to memo CTRL+W to save it. Then, re-open the same record and delete the text in the memo field and then CTRL+W again.
Redo this 2 step many many time.
At the end, you finish with an empty record and empty memo field but... the FPT is getting more and more bigger each time.
The only way to reduce the FPT file is by packing the file when open exclusively.
The maximum size for FPT/DBF/CDX foxpro file is 2 gig.
so my question is: Do you pack this file ? at reboot or at any other situation?
Sent by FoxWeb Support on 08/01/2012 02:51:10 PM:
It sounds like the table where FoxWeb stores its session variables got corrupted. In general, data tables can get damaged when VFP processes crash, or are killed abnormally. There is nothing you can do about this, other than monitor your server with dedicated software or one of the many online server monitoring services.
Regarding the size of the table, FoxWeb reuses records associated with expired sessions. This works better than deleting and creating new records, because it negates the need to lock and pack the table, which would be difficult on a busy server. A 2GB session table is certainly strange. How long is your session timeout and how busy is your server? It would be interesting to find out how many sessions were stored in the table and the distribution of the dates stored in the "lasthit" field.
I wouldn't necessarily be worried about an oversized session table. VFP can handle extremely large data tables and performance should not be affected.
FoxWeb Support Team
Sent by Martin Martin on 08/01/2012 01:46:24 PM:
Last night, the server do not respond. Foxweb Broken problem.
After investigation, this entry was in the FoxWeb Error Log :
Memo file c:\foxtempfiles\_fwsession.fpt is missing or is invalid.
Then I located the file " _fwsession.FPT" in the folder.
The FPT was more than 2gig so, I deleted the "DBF, CDX and FPT" and the system return instantly to normal.
Is there a way to prevent this?