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 Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Paradox 4.5 for DOS - Library / Record Locking Bug

Status
Not open for further replies.

majet

Programmer
Nov 6, 2000
5
US
We have about 20 users each running a local copy of Paradox 4.5 for DOS under Windows 95.The databases and scripts reside on a Novel network. Each of our installations look at a common network file.
We started crashing after we had added Library procedures. It looks like if a user runs a script that calls a library procedure which looks at Database-A, another user will crash if he runs a script that calls a library procedure that also looks at database-A. We see that the first users Paradox executable placed a 'prevent full lock' on database-A. That sounds reasonable. But something associated with the library must be screwing up the record locking because we can solve this problem by removing the library calls from the scripts and moving the code from the library routines into the scripts. Everything worked fine when we tried that. Unfortunately, we have many other scripts that are also using libraries. So that solution would require that we copy all of our library procedures into hundreds of scripts - a lot of work. i'd greatly appreciate any suggestions of a simpler solution. Thanks... Majet
 
Majet,

This doesn't sound like the way I recall Paradox/DOS working. How are you generating the library in question? Make sure that the application is using the library you think is being created and not an older version.

Also, verify that everyone is in fact sharing the same NET FILE and NET FILE directory _and_ that everyone has a unique private directory that is different than the netfile directory.

Finally, if you're using Microsoft Networking to connect your workstations, you may need to load the SHARE utility to ensure that Windows actually has the ability to lock files. this may or may not be necessary, depending on the version of Windows you're using.

Also, make sure that any optimistic locking has been disabled and that read-ahead chaching has likewise been disabled.

Hope this helps...

-- Lance
 
Majet,
Everything FootPad says makes a lot of sence, especially checking NETFILE and SHARE. It is still surprising that you can have two users in the same table using scripts, since this is all about table access.

You could put "debug" at the start of the problem procedure, then step through to the point where the problem occurs - you may get a better error message, and can use ERRORINFO to get the last error message.

Hope you have solved your problem, but nothing else readily comes to mind. We also run Win98, Paradox 4.0 with about 10-15 concurrent users. System went live in 1992, using procedures called from libraries (+ a few scripts) without any problems.

Phil
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top