Possible Network Data Corruption If Locking Not Used
ID: Q152186
|
The information in this article applies to:
IMPORTANT: This article contains information about editing the registry.
Before you edit the registry, make sure you understand how to restore it if
a problem occurs. For information about how to do this, view the "Restoring
the Registry" Help topic in Regedit.exe or the "Restoring a Registry Key" Help
topic in Regedt32.exe.
SYMPTOMS
When you use certain programs to access a common data file over the
network from multiple workstations, the data may be read incorrectly or
may become damaged.
CAUSE
The Microsoft Client for Microsoft Networks and Microsoft Client for
NetWare Networks cache some network data on the client computer for
enhanced network performance. If the program does not use locking calls to
guarantee data synchronization and integrity, this cached data may not be
kept in synchronization with the data on the network server.
If an opened file is not locked, it may be cached by the client. If the
file is then modified by a second client, the first client may read
incorrect file data from the cache, instead of reading the current file
data from the network server. Subequent writes by the first client may
result in incorrect data being written to the file, and damage to the file
data.
RESOLUTION
WARNING: Using Registry Editor incorrectly can cause serious problems that
may require you to reinstall your operating system. Microsoft cannot
guarantee that problems resulting from the incorrect use of Registry Editor
can be solved. Use Registry Editor at your own risk.
For information about how to edit the registry, view the "Changing Keys and
Values" Help topic in Registry Editor (Regedit.exe) or the "Add and Delete
Information in the Registry" and "Edit Registry Data" Help topics in
Regedt32.exe. Note that you should back up the registry before you edit it.
If you are running Windows NT, you should also update your Emergency
Repair Disk (ERD).
Contact the program's manufacturer for additional information about using
the program with Windows 95.
When you create a multiple-user program that allows for multiple users
concurrently accessing and modifying a common data source, use locking
calls when reading and writing data to ensure data integrity.
For existing programs that do not employ locking to ensure data
integrity, this issue can be resolved by one of the following updated
files for Windows 95, and later versions of these files:
- For the Bindery (non-NDS) version of the Microsoft Client for NetWare
Networks:
NWREDIR.VXD version 4.00.954 dated 5/20/96 123,987 bytes
- For the NDS version of the Microsoft Client for NetWare Networks
(Microsoft Service for NetWare Directory Services):
NWREDIR.VXD version 4.00.969 dated 7/30/96 174,618 bytes
- For the Microsoft Client for Microsoft Networks:
VREDIR.VXD version 4.00.957 dated 4/26/96 140,403 bytes
These updates address this issue by modifying the caching algorithm to
better handle situations in which a program may cause data
corruption by not implementing locking.
NOTE: As a possible test, read caching by NWRedir can be disabled by using Registry Editor to add the following one-byte BINARY value to the registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\NWREDIR\ReadCaching=00
STATUS
Microsoft has confirmed this to be a problem in Microsoft Windows 95 and
OEM Service Release 2 (OSR2). An update to address this problem is now
available, but is not fully regression tested and should be applied only
to computers experiencing this specific problem. Unless you are severely
impacted by this specific problem, Microsoft does not recommend
implementing this update at this time. Contact Microsoft Technical Support
for additional information about the availability of this update.
This issue is resolved in Microsoft Windows 98.
MORE INFORMATION
When locking calls are not used, the integrity of data cannot be
guaranteed by a network client that employs caching for enhanced
performance. Such network clients include the Microsoft Client for
NetWare Networks and the Microsoft Client for Microsoft Networks included
in Windows 95.
If a program locks the file or range of bytes that it intends to read from
or write to, the server locks that file, or that range of the file. This
denies access to that data to other users, and forces the client to read
the current data from the server instead of from the cache. This technique
is advised for maintaining data integrity when required, while providing
the performance benefits of caching when it is safe to do so.
For additional information about issues resolved by updates to the
NWREDIR.VXD component, please see the following articles in the Microsoft
Knowledge Base:
Q177222
NetWare Printers or Volumes Unavailable in Windows 95
Q165402
Windows 95 Update to Encrypt Passwords in Memory
Q163673
"Exception 0E" Using MSNDS Over Dial-Up Connection
Q160897
NWRedir Reports Incorrect Free Space If Limited by Admin
Q160824
MSNDS Drops Connections to More Than Eight Servers
Q158058
MSNDS Client Does Not Prompt to Log On
Q153470
Incorrect Error Code Returned for Locked Files
Q151912
NWRedir Returns Cached File Size Information
Q149606
Fatal Exception 0E in VNETBIOS Using NetWare Login
Script
Q147838
Cannot Access Folders with Long File Names on NetWare
Servers
Q143282
No Documents Appear in the File Open Dialog Box
Q139747
MS-DOS-Based Program Reports Not Enough NetWare
Server Space
Q136303
Connecting to Schedule+ 1.0 Calendar File Drops
Connections
Q132786
Known Issues with MS Print Agent for NetWare (MSPSRV)
For additional information about issues resolved by updates to the
VREDIR.VXD component, please see the following articles in the Microsoft
Knowledge Base:
Q183493
Batch File Calling CD Command May Not Run on HPFS
Q174371
Possible Database File Damage When Data Is Appended
Q172594
Cannot Connect to Server with 15 Characters and Period
in Name
Q167712
Fatal Exception Error in VREDIR with DCOM Program
Q165403
Windows 95 Update Prevents Sending Clear-Text Password Over
Net
Q165402
Windows 95 Update to Encrypt Passwords in Memory
Q161100
File May Be Truncated When Copied to a Full Network Drive
Q160807
Cannot Connect to Windows NT Server with Many Shares
Q157114
"Access Denied" Attempting to Run File on LM/X Server
Q156497
Duplicate Print Output on PC-LAN Server from Windows 95
Client
Q150215
Disabling Automatic Network Shortcut Resolution
Q148367
Possible Network File Corruption with Redirector
Caching
Q142803
Locking Error or Computer Hangs Accessing Network
Database Files
Q140558
Deleting Files on Samba Servers May Delete Local Files
Instead
Q138249
Updated Vredir.vxd Corrects Errors Running Files on LMX
Q138014
File May Be Truncated to Zero Bytes When Copied Onto Itself
Q136834
Error Copying Read-Only Files to Core SMB Server
For additional information about Windows 95 updates, please see the
following article in the Microsoft Knowledge Base:
Q161020 Implementing Windows 95 Updates
Additional query words:
Keywords : win95
Version : WINDOWS:95
Platform : WINDOWS
Issue type :