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

Having a pervasive/btrieve issue with Macola 2

Status
Not open for further replies.

viperman

IS-IT--Management
Nov 12, 2002
33
US
Hello,

We have a novell 5.1 server running btrieve 7.0, Macola 7.5.103f, and pervasive 7 on the workstations.

Long story made short: guy hears servers beeping(really the apc) and turns it off. Server comes back on fine, no errors or anything. Workstations(running win95/win98/win2000pro,winxppro), though, could not open Macola, it would say 'Btrieve not found'. I noticed the little Pervasive window would not flash up real quick anymore either. I reinstalled the pervasive client and then the macola client on the workstations(I set this up 3+ yrs ago so I can't remember the exact settings for the pervasive client). <Note: when installing the client, the connection test with the server passes everytime.>Anyway, didn't work, same message 'Btrieve not found'. I started the btrieve microkernel 6.15 manually on the workstations and then it worked. But now the only problem is when trying to enter a P.O. I get a '081 error file <file>.BTR Lock table is full'. It seems to be ok until multiple people get into the module, then 'boom', they both get this error and its hosed until everything is rebooted. Please help.

J.
 
You shouldn't be running btrieve on both the server and the workstations. Your workstations should be configured to use server only. You shouldn't be mixing 6.15 on the workstations with 7 on the server. Btrieve 7 hasn't been supported for years & 2000i is no longer supported, either. You need to first determine if btrieve is running properly on the server, check the configuration there, try to see if btrieve maintenance connects from the workstations to the server for both the transactional & relational engines. It sounds like you have a connectivity issue between WS & server. You may need to uninstall or manually remove macola and pervasive from the workstations & reinstall once you are sure the server is working correctly. You also need to determine if you are using SPX or TCPIP on the novell server for btrieve. Sometimes you need a host file on the WS to connect to a novell 5.1 server. Probably shutting off the server did something to your connectivity & that will have to be resolved before macola can properly access the btrieve engine.
 
MacolaHelp, thanks for the post.

Yes, btrieve maintenance connects from the workstations to the server for both the transactional & relational engines. I've reinstalled the pervasive and the macola client to no avail. The server btrieve is using SPX.
 
By loading btrieve locally, you are going into single user mode & that user is locking everyone else out of the files. Turn off local btrieve on the workstations whether it be 6.15 or 7 & resolve the server level conflict first, then we can try to find out why the workstations won't connect. Maybe the SPX communication layer is the culprit. Be sure the client configuration is set to server only or server then workstation. Be sure your client is set to use SPX as the communications protocol. Check the server settings for files, handles, communications protocol & cache allocation. These all had to be manually configured and optimized in pervasive 7.

As for btrieve maintenance, I am talking about the btrieve maintenance utility, not the testing that is done during client install. Open the maintenance utility, choose options, show information editor, load information, browse to a btr file on the server & open. If it returns a record count & information about the indexes, etc., you have transactional connectivity. If you can open a crystal report, access report, etc. which use btr files on the server, then you have relational connectivity. Check pervasive monitor to be sure there are no users & macola users folder to be sure there are no tmp files. When you go to the server console and type modules b*., does it return the btrieve nlm version & date? If so, what is it? Did you try the bstop/bstart on the server without a reboot?? Or it may be mgrstop/mgrstart... I haven't used btrieve 7 for at least 5 years, so I don't remember the syntax. However, you can check the server level stop & start syntax in your btrieve manual. Also check server console modules to be sure what SPX is loading. Your pervasive monitor will tell you how many files & handles you have set in the pervasive server. SPX can behave more or less better depending on the network card as well. If something went bad on the card when the beeping started and the server was rebooted, that may be your problem. It may only be apparent in macola because that is probably your only app using SPX. There should also be a pervasive log file in the pvsw directory on the server that may give additional information as to the source of the problem. I suspect that the pervasive engine is still not properly loaded on the server. The maintenance utility test and monitor test will tell us whether the server or the workstations are the problem.
 
I didn't get to look at it today but I will try what you suggest tomorrow. You're right about the connectivity, it was during install that it worked. I have not done the maintenance test yet. I will let you know tomorrow.
 
Hello again,

Ok, the maintenance checks out fine as I'm able to get stats on btr files:

<snip>
File Statistics for m:\macola70\data_10\poordhdr.btr

File Version = 6.00
Page Size = 1024
Page Preallocation = No
Key Only = No
Extended = No

Total Number of Records = 17116
Record Length = 457
Data Compression = No
Variable Records = No

Available Linked Duplicate Keys = 0
Balanced Key = No
Log Key = 0
System Data = No
Total Number of Keys = 3
Total Number of Segments = 8

Key Position Type Null Values* ACS
Segment Length Flags Unique Values
0 1 1 8 String -- 17116 --
<snip>

Btrieve is obviously loaded on the server:

<snip>
BTRIEVE.NLM v7.0.600 Version 7.00
Date May 15, 1999
Copyright
Address Space OS
Module Handle D30319C0
Code Address D5F29000
Code Size 4687
Data Address D5F2C000
Data Size 1744
Message Size 4096
Message Count 3
Help Size 0
Module Flags 1004

Modules currently using BTRIEVE.NLM:CSAUDIT.NLM CSSYSMSG.NLM CSL.NLM
<snip>


Spx is also loaded on the server. I've made sure the workstations are set to 'local=no, requester=yes' in registry. The problem still arises when 2 people go to get in same module. Once the 2nd person tries to enter something in purchase order module they get the 'poordhdr.btr lock' issue or 'poordhdr: btrieve page locked please wait'. Then the PO module must be alt+ctl+del to close and even when both people close completely out of macola32, the server stills shows both connections with open files:

<snip>
Connection = Deniese

Open Files VOL1:/macola70/Screens/SYEVENT.LCK
VOL1:/macola70/Screens/SYEVENT.BTR
VOL1:/macola70/DATA_10/IMRECHST.LCK
VOL1:/macola70/DATA_10/IMRECHST.BTR
VOL1:/macola70/DATA_10/IMINVTRX.LCK
VOL1:/macola70/DATA_10/IMINVTRX.BTR
VOL1:/macola70/DATA_10/IMDISFIL.LCK
VOL1:/macola70/DATA_10/IMDISFIL.BTR
VOL1:/macola70/DATA_10/IMLSTRX.LCK
VOL1:/macola70/DATA_10/IMLSTRX.BTR
VOL1:/macola70/DATA_10/IMBINTRX.LCK
VOL1:/macola70/DATA_10/IMBINTRX.BTR
VOL1:/macola70/DATA_10/ARCUSFIL.LCK
VOL1:/macola70/DATA_10/ARCUSFIL.BTR
VOL1:/macola70/DATA_10/IMORDBLD.LCK
VOL1:/macola70/DATA_10/IMORDBLD.BTR
VOL1:/macola70/DATA_10/IMORDHST.LCK
VOL1:/macola70/DATA_10/IMORDHST.BTR
VOL1:/macola70/DATA_10/SYACTFIL.LCK
VOL1:/macola70/DATA_10/SYACTFIL.BTR
VOL1:/macola70/DATA_10/POLNDCST.LCK
VOL1:/macola70/DATA_10/POLNDCST.BTR
VOL1:/macola70/DATA_10/POITMVND.LCK
VOL1:/macola70/DATA_10/POITMVND.BTR
VOL1:/macola70/DATA_10/JOBFILE.LCK
VOL1:/macola70/DATA_10/JOBFILE.BTR
VOL1:/macola70/DATA_10/IMTYPLOC.LCK
VOL1:/macola70/DATA_10/IMTYPLOC.BTR
VOL1:/macola70/DATA_10/IMLSMST.LCK
VOL1:/macola70/DATA_10/IMLSMST.BTR
VOL1:/macola70/DATA_10/IMITMTXT.LCK
VOL1:/macola70/DATA_10/IMITMTXT.BTR
VOL1:/macola70/DATA_10/IMITMNOT.LCK
VOL1:/macola70/DATA_10/IMITMNOT.BTR
VOL1:/macola70/DATA_10/IMITMIDX.LCK
VOL1:/macola70/DATA_10/IMITMIDX.BTR
VOL1:/macola70/DATA_10/IMINVLOC.LCK
VOL1:/macola70/DATA_10/IMINVLOC.BTR
VOL1:/macola70/DATA_10/IMINVBIN.LCK
VOL1:/macola70/DATA_10/IMINVBIN.BTR
VOL1:/macola70/DATA_10/POBUYERP.LCK
VOL1:/macola70/DATA_10/POBUYERP.BTR
VOL1:/macola70/DATA_10/SYPRDFIL.LCK
VOL1:/macola70/DATA_10/SYPRDFIL.BTR
VOL1:/macola70/DATA_10/SYCDEFIL.LCK
VOL1:/macola70/DATA_10/SYCDEFIL.BTR
VOL1:/macola70/DATA_10/POLINHST.LCK
VOL1:/macola70/DATA_10/POLINHST.BTR
VOL1:/macola70/DATA_10/POHDRHST.LCK
VOL1:/macola70/DATA_10/POHDRHST.BTR
VOL1:/macola70/DATA_10/POSHPFIL.LCK
VOL1:/macola70/DATA_10/POSHPFIL.BTR
VOL1:/macola70/DATA_10/POPURCST.LCK
VOL1:/macola70/DATA_10/POPURCST.BTR
VOL1:/macola70/DATA_10/POORDLIN.LCK
VOL1:/macola70/DATA_10/POORDLIN.BTR
VOL1:/macola70/DATA_10/POORDHDR.LCK
VOL1:/macola70/DATA_10/POORDHDR.BTR
VOL1:/macola70/DATA_10/POLINAUD.LCK
VOL1:/macola70/DATA_10/POLINAUD.BTR
VOL1:/macola70/DATA_10/POHDRAUD.LCK
VOL1:/macola70/DATA_10/POHDRAUD.BTR
VOL1:/macola70/DATA_10/POCTLFIL.LCK
VOL1:/macola70/DATA_10/POCTLFIL.BTR
VOL1:/macola70/DATA_10/POCOMFIL.LCK
VOL1:/macola70/DATA_10/POCOMFIL.BTR
VOL1:/macola70/DATA_10/IMLOCFIL.LCK
VOL1:/macola70/DATA_10/IMLOCFIL.BTR
VOL1:/macola70/DATA_10/IMCTLFIL.LCK
VOL1:/macola70/DATA_10/IMCTLFIL.BTR
VOL1:/macola70/DATA_10/APVENFIL.LCK
VOL1:/macola70/DATA_10/APVENFIL.BTR
VOL1:/macola70/DATA_10/APALTADR.LCK
VOL1:/macola70/DATA_10/Apaltadr.btr
VOL1:/macola70/DATA_10/APCTLFIL.LCK
VOL1:/macola70/DATA_10/APCTLFIL.BTR
VOL1:/macola70/DATA_10/SYSNOTES.LCK
VOL1:/macola70/DATA_10/SYSNOTES.BTR
VOL1:/macola70/Screens/SYSMESSG.LCK
VOL1:/macola70/Screens/Sysmessg.btr
VOL1:/macola70/programs/SYPROGUP.LBR
VOL1:/macola70/programs/SYPROG01.LBR
VOL1:/macola70/Macexe.lbr
VOL1:/macola70/Macexe.exe
VOL1:/macola70/programs/POPROGUP.LBR
VOL1:/macola70/programs/POPROG01.LBR
VOL1:/macola70/programs/INQPRGUP.LBR
VOL1:/macola70/programs/INQPRG01.LBR
VOL1:/macola70/Screens/SYSPASS.LCK
VOL1:/macola70/Screens/SYSCOMP.LCK
VOL1:/macola70/USERS/USER0006.TMP
VOL1:/macola70/Screens/SYSCOMP.BTR
VOL1:/macola70/Screens/Syspass.btr
VOL1:/macola70/W32BTICM.DLL
VOL1:/macola70/WBTRV32.DLL
VOL1:/macola70/Macole.dll
VOL1:/macola70/Reg7532.dll
VOL1:/macola70/Mbitmp32.dll
VOL1:/macola70/Pan2nt.dll
VOL1:/macola70/Cob32api.dll
VOL1:/macola70/Guilib32.dll
VOL1:/macola70/Mfrtscal.dll
VOL1:/macola70/Mfinterp.dll
VOL1:/macola70/BFH-W32.Lbr
VOL1:/macola70/Mac32up.Lbr
VOL1:/macola70/Run732.lbr
VOL1:/macola70/Macola32.Lbr
VOL1:/macola70/Mfrts32.dll
VOL1:/macola70/Macola32.exe
<snip>

I tried to update pervasive 7 srv pack 3 to srv pack 5 but I get an '00036wpt error' everytime. I know your right about the single mode thing but I'm at a lose.

J.
 
For the heck of it, run delbtdll.exe in the Macola root directory.
 
Have everyone get out of macola. Delete all *.lck files. Delete all *.tmp files. Check for po*.prt files. If you have more than 99, that could be a problem. As keain suggests, run the delbtdll. Also check your workstations to be sure you have only btrieve components in the pvsw\bin folder. You need to be sure your btrieve server engine is using v6x btrieve file format, not version 7. This had to be manually set after the btrieve install. Service pack 6 was the last release for pervasive 7, available to download from pervasive's web site. The lck files are coming from loading local btrieve. You also have btrieve dlls loading from the macola root directory that are a problem. Initialize the pobuyerp file as well. Since btrieve does page locking as opposed to record locking, you can occasionally get the page locked message, but I'm betting this is all related to the fact that local btrieve was enabled & it's leaving the lck files behind. When everyone is out of macola, make sure the pervasive monitor is empty. Novell 5x shipped with a limited edition (2 user) license for pervasive 7. You always had to completely remove it from the server before installing the full version of pervasive. Also, try to unload and reload btrieve at the server. You may not be able to since other nlms are using btrieve. There is a way to do it, but I'm not remembering right now. If need be, I may be able to remember how to do it if nothing else we've suggested helps.
 
Thank you keain (MIS) and especially MacolaHelp (Instructor). Deleting the *tmp, *lck, and running delbtdll fixed the issue. I'm most grateful to you, thanks.
 
If you had btrieve 6 components in the Macola root directory, I bet your cleints also have some 6 files. If you are working now I would not mess with it. But you may want to do a find for WBTR*.* and check your versions on your clients or a client and see.
 
We are running Macola 6.2 with Btrieve 6.15. We have one workstation that will not load the Btrieve module from the server. Mapping to M in place. We get "a cannot load protected mode pm switch". Several other workstations work fine. Running on both XP and 2000.

Any suggestions would be appreciated.
Thanks

Bill
 
Whyme100,

I would suggest you start a new thread for this new question.

Thanks

Andy Baldwin

"Testing is the most overlooked programming language on the books!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top