Network Configuration
This page discusses issues that affect networking Superbase Classic (and older versions) database systems using its normal (LAN or distributed LAN) networking functionality. It does not apply to PPCS-style networking.
The Issues
In the recent past, the computer software market has seen the release of a number of new operating system (OS) and network operating system (NOS) versions. Among these is Windows 95, Windows 98, Windows Me, Windows NT 4.0 Workstation, Windows NT 4.0 Server, Windows 2000 Professional, Windows 2000 Server, Windows XP, Windows Vista, and Windows 7. In the process, new network client software has also been created to work with the new operating systems, both for existing and newly-released NOSs. This has resulted in a number of problems.
Most (if not all) of the new network client software has been pre-configured to run in such a way that it is faster, but not necessarily safe for client-side locking control of a database, such as is typical of products like Superbase, Paradox, dBase, FoxPro, etc. These problems would not be demonstrated by products such as word processors or spreadsheets because they generally do not allow more than one person to work on the same document at the same time. Also, true client-server applications would not be affected, since there would only be one process actually accessing the data files, the server application.
We have identified the issues for the two most common NOSs, Novell Netware and Microsoft NT Server LAN Manager. The following should be taken as a guide to the proper approach to using these two NOSs and how to configure potential clients thereof.
Not making the appropriate changes can result in data corruption and/or destruction of the database to a degree that it may not be recoverable.
Some of our customers have told us that they feel that such a move that is specific to Superbase is to drastic to do in their networks and cannot be justified. We feel that it is important to make clear that this problem does not affect only Superbase, but is a general problem that affects any database application where the client controls data access and concurrency (or other application with concurrent collaboration support). The article that is linked here was posted to the comp.lang.clipper newsgroup in December of 2002 and does the best job we have yet seen to explain the issues.
Warning!
This document contains instructions for editing the registry. If you make any error while editing the registry, you can potentially cause Windows to fail or be unable to boot, requiring you to reinstall Windows. Edit the registry at your own risk. Always back up the registry before making any changes. If you do not feel comfortable editing the registry, do not attempt these instructions. Instead, seek the help of a trained computer specialist.
Client OS | Network OS | Configuration Notes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows 95, Windows 98, Windows Me, Windows NT 4.0, Windows 2000, Windows XP, Windows Vista, or Windows 7 (or later) using Novell Client32 or later | Netware | The following settings can be made in the Novell client under Windows itself. There are only 4 settings that appear to be of issue on Client32 for Novell. They are:
Some of these settings may not appear in the version of Client32 in use, since Novell have removed some of them in the interim. If the setting doesn’t appear, then don’t worry about it (much). A sign, that |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Windows 95, Windows 98, Windows Me, Windows NT 4.0, Windows 2000, Windows XP, Windows Vista, or Windows 7 (or later) using theMicrosoft client for Netware | Netware | Client has not been tested but is generally not recommended by Novell. If any settings would have to be changed, they are likely to also be buried in the registry somewhere, with the actual values unknown to everyone but Microsoft. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Windows 95, Windows 98, Windows Me, all versions of: Windows NT, Windows 2000, Windows XP, Windows Vista, Windows 7 (and later) | NT Server 4.0, Windows 2000, Windows XP, Windows Vista, or Windows 7 (or later) acting as a server, Windows Server 2003, Windows Server 2008 (or later) | Server Settings Data corruption appears to be caused by the opportunistic locking setting. To resolve this, the following change must be made to the registry on the server: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet It will be necessary to add the following value as it is listed below, with the proper data type and the value listed. Once these changes are made, the server must be restarted.
The default value of this parameter is 1 (true) and is set even if the parameter is not physically present in the registry. To disable it, the parameter must be added and set to 0. Special Notes for Server 2008 and Vista or Windows 7 Acting as a Server
The default value of this parameter is 1 (true) and is set even if the parameter is not physically present in the registry. To disable it, the parameter must be added and set to 0. This setting specifies whether the server allows clients to use opportunistic locking on files. Opportunistic locking is supposed to provide a significant performance enhancement, but is unsafe where client-side locking is involved and in the case of networked databases like Superbase actually can slow down database access! If you are using Superbase in LAN or Distributed LAN mode then this setting is required to set to 0 as shown above to prevent data loss. If you are using Superbase’s PPCS (Peer-to-Peer Client/Server), then it may be safe to leave this setting enabled, since only one application, the server, is writing to the data files. Still, there is no real advantage in leaving this setting enabled. Client Settings for Windows 9.x or Earlier Client Settings for Windows NT 4 Acting as a Workstation or Client It will be necessary to add the following values as they are listed below, with the proper data type and the value listed (0 in all cases):
Client Settings for Windows 2000, XP, 2003, Vista, 2008, Windows 7 – Acting as a Workstation or Client It will be necessary to add the following values as they are listed below, with the proper data type and the value listed (0 in all cases):
Opportunistic locking is controlled differently in the newer versions of Windows than was done in Windows NT. The following registry key path is the location of the desired entry and that must be present and set to the associated value.
|
Additional Notes for NT Workstation, Windows 2000, XP, 2003, Vista, and Windows 7
In addition to the possible changes required on the client settings, NT-based client machines have a special change that is required. This is because the NTVDM in these machines appears to represent remote drives as if they were local (at least to the Win16 subsystem). That causes Superbase to open all files in a special mode known as LOCAL. You can see this immediately if you open a file for RW/RW access interactively on a remote drive. In the title bar will be something like: Superbase – F:\myfile.sbf (L0)
. The L0 is an immediate giveaway that LOCAL mode is in use. In this mode Superbase opens all files exclusively, regardless of the requested open mode. To stop Superbase from opening the files exclusively on NT-based operating systems, add the environment variable SBLOCAL with the value NONE to the environment settings. This can be found in the System applet of the Control Panel on the Environment tab. Alternatively, you can place the entry in the SB30.INI
file in the Superbase section:
[Superbase]
sblocal=none
It is also possible to use Superbase.LocalFileLocking = False
in the Superbase program, but this setting should be made before any files are opened and should never be changed once the program is running.
The above information was compiled in part using the articles listed below, all of which are copyright Microsoft Corporation.
- WFW 3.11 Clients Hang Accessing Windows NT Server
Last reviewed: August 8, 2001
Article ID: Q123029 - Some Client Applications Fail When Writing to WindowsNT
Last reviewed: August 8, 2001
Article ID: Q124916 - PC Ext: Explanation of Opportunistic Locking on WindowsNT
Last reviewed: August 8, 2001
Article ID: Q129202 - REG: Workstation Service Entries
Last reviewed: February 28, 2002
Article ID: Q102981 - REG: Server Service Entries, PART 1
Last reviewed: August 6, 2002
Article ID: Q102967 - REG: Server Service Entries, PART 2
Last reviewed: February 27, 2002
Article ID: Q102969 - How to Disable Network Redirector File Caching
Last reviewed: June 11, 2002
Article ID: Q163401 - Configuring Opportunistic Locking in Windows
Last reviewed: March 14, 2003
Article ID: Q296264