none
File Corruption on File Share (dbf files) RRS feed

  • Question

  • I have a 2008 server setup for testing, we have a FoxPro database that is
    served off a server share on this box.  It is simply files ( .dbf + index files ) that
    exist on a normal share, not DFS, just plain old share.  This application
    was living on a 2003 server, but testing it on the 2008 server - we are
    getting corruption.  The indexes will randomly corrupt about 10 times a day.

    I have RDC turned off, it really is just a plain jane server.  What changed
    with plain old file servering between 2003 and 2008?

    The client PCs are either XP or Vista.

    Tuesday, March 4, 2008 8:43 PM

Answers

  • Hi,

     

    Please understand SMB 2.0 is also backwards-compatible with SMB1. So this issue should be unrelated with SMB protocol.

     

    To solidly resolved this kind of issue, I strongly recommend that you review the code to ensure it is fully compatible with Windows Server 2008. Also, for coding related issues, please post them in our MSDN forum for further assistance, where engineers specialize in develop relevant issues. I believe they will assist you with this more efficiently.

     

    MSDN Forum

    http://forums.microsoft.com/MSDN/default.aspx?SiteID=1

     

    Morgan

    Monday, March 17, 2008 10:05 AM
    Moderator

All replies

  • Hi,

     

    <This application was living on a 2003 server, but testing it on the 2008 server - we are getting corruption.>

     

    Please contact this application provider to make sure this application is compatible with Windows Server 2008. If you test it on Windows server 2003, may I know if this issue still persists? Besides, could you please explain to me more about the file corruption? It's better to give an example and descript the symptom when corruption occurring. Is there any error messages in the Event viewer?

     

    <What changed with plain old file service between 2003 and 2008?>

     

    There some significant improvement about file service on Window server 2008, such as use SMB (Server Message Block)2.0 protocol, Transactional File IO etc.

     

    Prior to Vista, SMB has an architectural limitation in the form of a 64KB buffer size limit which cannot be overcome through the use of TCP window scaling. SMB 2.0 in Vista is a new and redesigned protocol which removes this limitation (Vista is also backwards-compatible with SMB1).

     

    About more improvement about file server on Windows server 2008, please take a look at the following resource:

     

    http://whitepapers.techrepublic.com.com/webcast.aspx?docid=336898

     

    If anything is unclear, please post back.

     

    Morgan

    Wednesday, March 12, 2008 12:41 PM
    Moderator
  • We are the application provider, however it is just a Foxpro application.  As I said before, the application was and has been working fine on Windows 2003, we are just in the process of evaluating 2008.  This is an internal application we developed.

     

    In short, this is a multi user Foxpro application, 10 or so users, and the main corruption was in the index files that VFP creates.  The user would simply be prompted after an hour or so that one of the indexes was corrupted.  This would effect all users once this happened.

     

    What is strange is that this is just a file share with the database files on it.  The server itself isnt doing anything but sharing the data.

     

    Can I force 2008 to use SMB 1.0 while the bugs are worked out?

    Wednesday, March 12, 2008 9:24 PM
  • Hi,

     

    Please understand SMB 2.0 is also backwards-compatible with SMB1. So this issue should be unrelated with SMB protocol.

     

    To solidly resolved this kind of issue, I strongly recommend that you review the code to ensure it is fully compatible with Windows Server 2008. Also, for coding related issues, please post them in our MSDN forum for further assistance, where engineers specialize in develop relevant issues. I believe they will assist you with this more efficiently.

     

    MSDN Forum

    http://forums.microsoft.com/MSDN/default.aspx?SiteID=1

     

    Morgan

    Monday, March 17, 2008 10:05 AM
    Moderator
  • I understand that SMB 2.0 should be backwards compatible, I would also like you to understand that I have used products like Vista and Outlook 2007 and have learned that things dont always work the first time, in fact they can be (and are) still brutal.

     

    It could easily just be an issue with SMB 2.0 as we do have Vista clients.

     

    There is NOTHING I can change in the code to fix this problem.  Perhaps you can have someone familiar with Microsoft FoxPro help you out on this.  I realize it is an older product, and I would love to be rid of it, however it is still in production use at my company.  It isnt just "my" foxpro application, its ANYONES.

     

    Is Microsoft FoxPro incompatible with SMB 2.0?  And again, is there a way I can shut it off, and just force the server to use 1.0?

    Monday, March 17, 2008 4:06 PM
  • Hi Ryan,

    we are developing software with vfp8 and have the same problems with corrupt index files when the tables are located on a windows 2008 server - as you described.

    Did you find out a solution for this problem?

    You can send a direct message to stefan.marschall@mks-ag.de

    Thank you.
    Wednesday, November 19, 2008 12:50 PM
  • Hi there,

    I'm haviing the same problem with a DBase III + Clipper application. Anybody found a solution yet?


    Jeroen
    Thursday, December 11, 2008 7:48 AM
  • Hi all,

    It is possible that you all found the solution for this. I'm working at a company that use xBase files a lot. From the international development we got a message about file corruption that are SMB2 related.  Allthough I do not get in depth I thing this 'old' protocoll isn't suitable for SMB2.
    To disable SMB2 read this message:

    http://www.caseware.com/support/caseknowledge/file-corruption-when-using-windows-vista-windows

    Als I found simmilar on:
    http://www.petri.co.il/how-to-disable-smb-2-on-windows-vista-or-server-2008.htm

    Perhaps this is what your looking for.

    Joost

    Tuesday, March 31, 2009 1:36 PM
  • Good Morning,

    I just finished install our brand NEW W2K 8 R2 server, and I'm planning to move some application from our W2K3 server (oplock disabled) to our new W2K8 server, I'm really disappointed to see that Microsoft didn't fixe the OPLOCK problem on W2K8 that made application using ISAM tables, unstable whit corruption issue !

     Is this fixed in W2K8 R2 or we will still have to disable SMB2 and the OPLOCK again !?

     Thank you,

     Sylvain
    • Proposed as answer by maxdeveloper Thursday, May 6, 2010 6:57 PM
    Wednesday, September 9, 2009 3:36 PM
  • Hi

    I'm using AcuCobol and my client just did an upgrade from Windows 2003 to 2008 (with SP2). One server hosts the data file (Vision ISAM) locally and a Terminal Server accesses the files remotely using a mapped drive (share). It is pretty standard. We had file corrution issues and the above link on how to turn off oplocks was NOT a solution. We didn't try turning off SMB 2 if that is different and may be a solution.

    Basically, it seems to mean that out-of-the-box Windows 2008 is not industry compatible. Here is the list of products reported with the problem - Foxpro, Dataflex, vfp8, DbaseIII + Clipper, AcuCobol V5.2 and V8.0. It would seem any product that uses remote file sharing is in trouble.

    Surely it means that Microsoft has the problem. If turning off Oplocks or SMB 2 is a solution then they should be turned off on installation or fixed.  One should not have to edit the registry to disable things to make it work. It is so serious that Windows 2008 server fails on industry standard and client critical applications. ISAM files are standard fare It may be a shock but Microsoft products (e.g. SQL server)are not the only ones that drive business critical applications.

    Now AcuCobol has an AcuServer product that runs on the server with the local files and this configuration would not give the problem as all files access becomes in effect local even from the remote server (or workstation). But it should not be necessary just to circumvent an OS that has a glitch.

    It's two days since I posted the above so here is an update. We disabled oplocks on the local server and the remote Terminal server (Win2008) as per Microsofts instructions (edit registry) and we still got file corruptions. It only happens when we are live as during testing we could not simulate the problem and there were no corruptions. There was one particular file that became corrupt only once per day at around 7:30am when this file is most busy. 

    Today we have had a successful morning after changing to use a product called Acuserve. Basically it uses a port for the remote computer to 'talk' to the local computer and all file I-O occurs on the local computer. So the solution so far has been to just not use remote file sharing on Windows 2008. 

    Regards Max

     

     

    • Proposed as answer by maxdeveloper Tuesday, May 11, 2010 10:48 PM
    Thursday, May 6, 2010 7:11 PM
  • Max,

        I am dealing with  the same issues trying to migrate an Acucobol app from Windows 2000 -  2008 R2.

    Trying acuserver, but can not tell who has records locked.  Do you know of a way to  Tell who has Records locked ?

    I am Ready to go to WIndows 2003

    Tony

    Friday, March 18, 2011 2:40 AM
  • I think this article explains the problem: http://www.dataaccess.com/whitepapers/opportunlockingreadcaching.html

    Yes SMB2 is supposed to be backwards compatible with SMB but SMB2 must be turned off to allow you to turn off oplocks which corrupts ISAM type files. 

    Wednesday, April 20, 2011 2:43 PM
  • After reading all that over there I have come to know that the indexes of your database file are corrupted. And after turning off remote desktop connection you find it just like a Plain Jane Server. Well all you need to do just repair the FoxPro database file. Repairing is one and only solution of your problem.................... 

    Do it............!!!!!!

    Friday, May 25, 2012 9:35 AM
  • To repair your database you can use sysinfo tools' recovery program. I have read about it. It's very effective. The software is sysinfotools DBF recovery and you can get it from here: Get me.

    Thank you!

    Martina Meza!

    Friday, May 25, 2012 9:38 AM
  • We are having the same issue.    SMB 2.0 and opportunistic locking supported by Windows Server 2008 appear to be the culprit.   Older applications are having this issue and the response seems to be to upgrade.   We have hundreds of clients and are trying to upgrade them as fast as possible but they still have do business while we do this.     For now, we are downgrading them to SMB 1.0 without opportunistic locking.

    By the way, we have always been a Microsoft shop....so this lack of backwards compatibility with MS applications is troubling.


    Friday, September 21, 2012 6:44 PM
  • We are having the same issue.    SMB 2.0 and opportunistic locking supported by Windows Server 2008 appear to be the culprit.   Older applications are having this issue and the response seems to be to upgrade.   We have hundreds of clients and are trying to upgrade them as fast as possible but they still have do business while we do this.     For now, we are downgrading them to SMB 1.0 without opportunistic locking.

    By the way, we have always been a Microsoft shop....so this lack of backwards compatibility with MS applications is troubling.


    No need to downgrade

    For Win2008

    http://support.microsoft.com/kb/2028965 & http://support.microsoft.com/kb/2461645

    For Win2008R2

    http://support.microsoft.com/kb/2618096 & http://support.microsoft.com/kb/2028965


    MCP | MCTS 70-236: Exchange Server 2007, Configuring

    Want to follow me ?  |  Blog: http://www.jabea.net | http://blogs.technet.com/b/wikininjas/


    Friday, September 21, 2012 8:29 PM
    Moderator
  • Hi,

    We have migrated our file server  in january 2013 from a Windows 2003 server to a Windows 2008 R2 server and installed every patch and SP.

    Regardind clients, they are the same then before the migration : Windows XP PRO clients with SP3 and Windows 7 Pro clients whith SP1 (each client OS is up to date).

    Since this migration, we have issues with 1 big file from our ISAM database stored on this new server (PCSoft database). Sometimes, client applications crash because of an index corruption of this file.

    Before the migraiton, we never experienced this issue!

    I know that Microsot published hotfix regarding SMB issues but I wonder if I need to install them because my server is very recent with SP1  and no more update seems to be necessary ?

    Can someone help me to understand this issue ? When we were using 2003 server, we never had this problem and no need to disable oplocks for instance on the machines ?

    Thanks in advance.

    Monday, March 18, 2013 4:25 PM
  • That works

    Sean

    Saturday, October 5, 2013 1:06 AM
  • Hi

    Try both link I gave last year, they got registry key you can add too. I didn't check the SP1 and SP2 what it install, but you could try to install the update in worst case asit will told you if already present.

    Thanks


    MCP | MCTS - Exchange 2007, Configuring | Member of the TechNet Wiki Community Council | Member of the TechNet Wiki International Council | French Moderator on TechNet Wiki (Translation Widget)| Citrix Certified Administrator : XenApp | Citrix Certified Administrator : XenDesktop

    Saturday, October 5, 2013 2:50 AM
    Moderator