Jump to content

my ADO-Toolkit for LabVIEW 8


Recommended Posts

  • Replies 61
  • Created
  • Last Reply

Top Posters In This Topic

Guy's, I'd really like to thank you!

The ADO-Toolkit Downloads reached a new maximum in February:

471 DOWNLOADS in one month!

I'm glad that you like my tool :D - this is a great encouragement to keep on developing and improving!

Link to comment
  • 2 weeks later...

QUOTE(Mike Ashe @ Mar 12 2007, 08:48 PM)

Very nice! Thanks again for contributing this to the community. I think the license change to Creative Commons was a great move. To really get a package wide acceptance I think it needs either BSD or Creative Commons licensing these days.

:thumbup:

thanks :)

yes, I think the CC is the right license, because most users do not want to be forced to publish their code as Open Source and I don't want to force anyone to use a specific license.

Link to comment
  • 2 weeks later...

isdx:

I have noticed memory leaks in ADO <Connection Execute> method when used with repeated SQL or Stored Procedure calls on SQL Server. The Connection Object <Create Method> may help resolve this if the property settings shown on the attachment are included. I figured that the connection object <Connection Execute> method also runs faster when this is done. I have seen memory leaks especially with large insert SQL queries.

.... Any thoughts on your experience with memory leaks and ways to resolve the same?

Anthony Lukindo

Link to comment

QUOTE(alukindo @ Mar 22 2007, 08:58 PM)

isdx:

I have noticed memory leaks in ADO <Connection Execute> method when used with repeated SQL or Stored Procedure calls on SQL Server. The Connection Object <Create Method> may help resolve this if the property settings shown on the attachment are included. I figured that the connection object <Connection Execute> method also runs faster when this is done. I have seen memory leaks especially with large insert SQL queries.

.... Any thoughts on your experience with memory leaks and ways to resolve the same?

Anthony Lukindo

hmm, it's the first time someone is reporting a memory leak, I never got bug reports in this direction before. I'll start a search at the MSDN, maybe there is a known issue with ADO and SQL Server, but it may take a while. Therefore I have no solution at the moment.

Maybe you can check, if you have installed the latest version of MDAC? MDAC 2.8 is the current version, and if we are lucky, this issue is allready solved :)

Link to comment

Hi i2dx:

Thanks for helping to follow-up on this. Yes, I have ADO 2.8. and I made sure that I reference the connection object from this latest library. The applications I run make SQL calls every 5 seconds or so and the connection remains open all along. I was suspecting that the cursor type used when a connection is opened without any property settings is one with a high overhead. The recordest returned is the one that may carry this overhead. I have also tried closing the connection after each SQL call but the results are the same.

... For less frequent SQL calls and for queries that insert values in few columns (2 to 3) the memory leak problem is not noticeable. If you insert to something like 12 to 24 columns then it is more prevalent.

Thanks

Anthony Lukindo

Link to comment

QUOTE(alukindo @ Mar 23 2007, 04:51 AM)

Hi i2dx:

Thanks for helping to follow-up on this. Yes, I have ADO 2.8. and I made sure that I reference the connection object from this latest library. The applications I run make SQL calls every 5 seconds or so and the connection remains open all along. I was suspecting that the cursor type used when a connection is opened without any property settings is one with a high overhead. The recordest returned is the one that may carry this overhead. I have also tried closing the connection after each SQL call but the results are the same.

... For less frequent SQL calls and for queries that insert values in few columns (2 to 3) the memory leak problem is not noticeable. If you insert to something like 12 to 24 columns then it is more prevalent.

Thanks

Anthony Lukindo

ok, that's really strange. I have an application (written with ADO Toolkit 1.5.x and LV 7.1.1) running at my customer, which is a "DB Proxy" where up to 30 Clients connect via TCP/IP and send up to 60 (peak) SQL-Queries (SELECT, INSERT, UPDATE) per cecond. I have implementet all Queries as Stored Procedures on the MS SQL Server and I did not experience a memory leak. The DB connection is open from "Server Start" till "Server Shutdown" ...

Which LV Version are you using, and which Version of the ADO-Toolkit? Please make sure, that you are using the latest version, because I will only debug (of course) the latest one ;)

Link to comment

ok, I just tried it out, and I can not find a memory leak:

I have used this vi: http://forums.lavag.org/index.php?act=attach&type=post&id=5267 on LV 8.2, with ADO-Tool 1.6.3 for LV 8.2

Memory usage before the start:

http://forums.lavag.org/index.php?act=attach&type=post&id=5268

Menory usage while running:

http://forums.lavag.org/index.php?act=attach&type=post&id=5269

Memory usage the VI finished:

http://forums.lavag.org/index.php?act=attach&type=post&id=5270

I have inserted 5000 rows at 20 Hz and there was no significant increase of the used memory during the VIs run.

This is the table, I inserted in:

QUOTE

USE [test]

GO

/****** Objekt: Table [dbo].[tbl_tdata] Skriptdatum: 03/23/2007 08:22:34 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_PADDING ON

GO

CREATE TABLE [dbo].[tbl_tdata](

[id_tdata] [int] IDENTITY(1,1) NOT NULL,

[nf1] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf1] DEFAULT ((-1)),

[nf2] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf2] DEFAULT ((-1)),

[nf3] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf3] DEFAULT ((-1)),

[nf4] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf4] DEFAULT ((-1)),

[nf5] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf5] DEFAULT ((-1)),

[nf6] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf6] DEFAULT ((-1)),

[nf7] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf7] DEFAULT ((-1)),

[nf8] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf8] DEFAULT ((-1)),

[nf9] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf9] DEFAULT ((-1)),

[nf10] [float] NOT NULL CONSTRAINT [DF_tbl_tdata_nf10] DEFAULT ((-1)),

[st11] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_st11] DEFAULT ('void'),

[st12] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_st12] DEFAULT ('void'),

[st13] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_st13] DEFAULT ('void'),

[st14] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_sr14] DEFAULT ('void'),

[st15] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_st15] DEFAULT ('void'),

[st16] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_st16] DEFAULT ('void'),

[st17] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_st17] DEFAULT ('void'),

[st18] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_st18] DEFAULT ('void'),

[st19] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_st19] DEFAULT ('void'),

[st20] [varchar](100) NOT NULL CONSTRAINT [DF_tbl_tdata_st20] DEFAULT ('void')

) ON [PRIMARY]

GO

SET ANSI_PADDING OFF

Can you please use the attached VI, run this test on your machine and tell me the results? Maybe you have noticed the "sawtooth" in the CPU usage. The increase of the CPU-load occurs, when a memory block is freed ...

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.