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!

Possible Memory Leak

Status
Not open for further replies.

noodles1

Programmer
Oct 31, 2001
58
0
0
I seem to be encountering a memory leak with my Win32 application using P.SQL2000i SP3.
This application opens a nominated database file, reads through each record, closes the file and issues a Btrieve stop call. The application can be called so that it performs this procedure serially a nominated number of times.
I have noticed through the Windows NT Performance Monitor that the Working Set Size & Virtual Bytes for this application steadily increase. When I substitute a mock up Btrieve API source module that I developed, which replicates for the applciation the open, read & close operations but using simple text files to retrieve the dat from, the above mentioned objects do not change in size.
I have also used the CrtDumpMemoryLeaks function & associated functions to confirm that there are no memory leaks in my application code.
Has anyone else found similar behaviour?
 
What development environment, interface, DLLs, and headers are you using? Wbtrcall.dll, Wbtrv32.dll, W3btrv7.dll????

It's certainly possible that you have run into a memory leak, but not terribly probable since there are literally thousands of developers using Pervasive.SQL 2000 and 2000i that don't have memory leaks. You didn't include enough infomation for anyone to research this to find out if there is a known issue though. The best way to go about this is always to contact Pervasive Support. Though they will probably charge you for an 'incident' if you don't have a Support contract in place, if you have the SDK you would have a coupon for two complimentary incidents or there is a form to enter suspected defects for free on the site, though it does not guarantee any timely response like calling Support.

I suspect that you probably are using the Btriev 6.15 SDK to develop this, but hopefully I'm wrong.

Pervasivite
 
The application is a C application developed using Visual C++ 6.0 (no service packs).

The applications uses the W3btrv7.dll and Btrapi.c ( and associated header files) from Pervasive.SQl 2000.

As the testing is done using a Pervasive.SQL 2000 Server Engine for Windows NT, many supporting DLLs are obviously also loaded (TCP/IP support Network API etc) I suspect that the problem could very well be in one of those, not necessarily the Pervasive Requester.
 
I have performed some more testing of this scenario and have found the following:
Running application on Win NT4 W/S SP5 using P.SQL 2000i SP3 Workstation Engine - No memory leak.

Running application on same Win NT4 W/S SP5 but using database engine on Win NT4 Server SP5 with P.SQL 2000 SP1 Engine - Memory Leak

Running application locally on Win NT4 Server SP5 with P.SQL 2000 SP1 Engine - No Memory Leak

Running application locally on Win 2K Server with P.SQL 2000i SP3 Engine - Memory Leak

So far, this appears to confirm some suspicions about the supporting DLLs for comms etc being involved in the problem.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top