Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations gkittelson on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

TPS File Corruption

Status
Not open for further replies.

wchestnut

Programmer
Aug 9, 2010
79
US
It's been almost 2 months since I last compiled an EXE or DLL from our Clarion 5 system yet we're have problems with corrupted TPS files:

Error: ( ()) attempting to access a record from the FILENAME file. Returning to previous window.

The corruptions seem to happen randomly and affect around 4 of the more common TPS files that are used. We can go a week without incident or have it happen a couple of times in a day with average use. It was quiet for the first 4 or so weeks since the last compile, but then they started a couple of weeks ago all of the sudden.

TPSFIX.EXE does not fix the problem. The only resolution is to replace the TPS file from a backed up copy (which now we're doing hourly backups).

Would anyone have any idea why this might be happening? The file server is a Netgear ReadyNAS with a CIFS Share. We have "Opportunistic Locking" turned off ("Opportunistic locking (oplocks) can enhance CIFS performance by allowing files residing on this ReadyNAS to be cached locally on the Windows client, eliminating network latency when files are repeatedly accessed.").
 
Hi!

Do these machines in question use the free Microsoft anti-virus solution Microsoft Security Essentials? MSE is known to cause TPS file corruptions.

Regards
 
Wow... really? Yes, we have Version 1.x installed on the clients now, but plan to move to Sophos shortly. We'll remove it immediately and try your suggestion. I'll keep you posted. THANKS!
 
FYI - I uninstalled MSE and replaced it with AVG for the time being.

I think your suggestion may have solved the file corruption problem. However, this morning, one of the users reported an error we haven't seen before:

"Corrupt block/Unknown block type freed. This is probably caused by freeing a static variable or bad pointer. Do you want to GPF?"

The only thing I found Googling referred to a circular reference in a DLL file. But the user was just opening a record from a browse to a form like everyone else and I couldn't duplicate the problem so it doesn't appear to be a code or corrupted file this time.

The only thing I noticed was the user's computer was maxing out on physical memory (2GB in Windows 7) with a lot of windows open (IE, Word, etc.). I wonder if this happened because Windows was swapping out some physical memory to the page file?
 
Hi!

That is a MEMORY corruption error and not a database related error.

Unluckily, Windows still screws up when it starts using Virtual memory.

But the increased memory usage COULD indicate that there may be a MEMORY LEAK in your program caused by your code or a 3rd party code. Do some testing on your machine with the Task Manager open to double check. Sometimes, Windows will not release allocated memory to an application until the application is closed. If you are testing under XP, you could minimize/restore your app and that should release unwanted memory.

Regards

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top