Hi,
we have recently deployed a .NET Service application to a client, which
connects to an Informix database at polling intervals of 5 seconds
During the course of integration testing the client is consistently
getting the following memory allocation error:
ERROR [HY001] [Informix][Informix ODBC Driver]Memory allocation failure
>From our service, we are making ODBC calls ALWAYS passing in-line SQL
statements.
The error occurs as little as 1-3hrs after the service has started
running. The client has observed this error both an Windows Server 2000
and Server 2003 setup. In either case they are running the ODBC Driver:
Informix 3.34 32 BIT ICLIT09B.DLL
I have found the following post on the same problem, but it never
received any reply.
http://groups.google.co.uk/group/comp.databases.informix/browse_frm/thread/4daab
e1835263363/48b6b02eecb0cb91?q=memory+allocation+error+odbc+informix&rnum=1&hl=e
n#48b6b02eecb0cb91
Any help would be greatly appreciated.
Thanks
Mauro Ciaccio
Paul Watson - 27 Jun 2005 10:34 GMT
sounds like you are not closing the connections, that's what I'd check first
> Hi,
>
[quoted text clipped - 25 lines]
>
> Mauro Ciaccio

Signature
Paul Watson #
Oninit Ltd # Growing old is mandatory
Tel: +44 1436 672201 # Growing up is optional
Fax: +44 1436 678693 #
Mob: +44 7818 003457 #
www.oninit.com #
mauroc@beacon-ct.co.uk - 27 Jun 2005 15:15 GMT
Hi,
thanks for the rapid reply. As far as closing the connections is
concerned, I am declaring them as follows
using (OdbcConnection con = new OdbcConnection(ConnectionString))
with the "using" statement which means they will be disposed of when I
exit my method. Should I instead be closing and setting to nothing
explicitly? Is there any chance that the System.Data.ODBC is not
working correctly with the "using" statement.
Thanks for your help
Paul Watson - 28 Jun 2005 00:44 GMT
Can't comment 'cos I don't use ODBC, but it must be worth a try, you
should be able to test this easily by stepping through the code and
monitoring the memory usage under onstat -g ses
> Hi,
>
[quoted text clipped - 8 lines]
>
> Thanks for your help

Signature
Paul Watson #
Oninit Ltd # Growing old is mandatory
Tel: +44 1436 672201 # Growing up is optional
Fax: +44 1436 678693 #
Mob: +44 7818 003457 #
www.oninit.com #
mauroc@beacon-ct.co.uk - 29 Jun 2005 11:21 GMT
Thanks for that. Could you please clarify if "onstat -g ses" is an
informix process that I can monitor from Windows, or can it be
monitored only from within informix?
Thanks for your help
mauroc@beacon-ct.co.uk - 29 Jun 2005 11:24 GMT
Hi, I just googled "onstat" and found it is an Informix utility. What I
would ideally like is something I can access from within the Windows
O/S. Any ideas?
Thanks
Paul Watson - 29 Jun 2005 12:40 GMT
> Hi, I just googled "onstat" and found it is an Informix utility. What I
> would ideally like is something I can access from within the Windows
> O/S. Any ideas?
>
> Thanks
No having a Windows box with IDS on it I can't check but I think you
should find onstat there. Run onstat -g ses and look at the memory usage

Signature
Paul Watson #
Oninit Ltd # Growing old is mandatory
Tel: +44 1436 672201 # Growing up is optional
Fax: +44 1436 678693 #
Mob: +44 7818 003457 #
www.oninit.com #
Obnoxio The Clown - 29 Jun 2005 14:25 GMT
mauroc@beacon-ct.co.uk said:
> Hi, I just googled "onstat" and found it is an Informix utility. What I
> would ideally like is something I can access from within the Windows
> O/S. Any ideas?
How about onstat?

Signature
Bye now,
Obnoxio
"C'est pas parce qu'on n'a rien à dire qu'il faut fermer sa gueule"
- Coluche
A smile is a gift that is free to the giver and precious to the recipient.
But giving someone the finger is free too, and I find it more personal and
sincere.
sending to informix-list
Obnoxio The Clown - 30 Jun 2005 13:13 GMT
mauroc@beacon-ct.co.uk said:
> Obviously I'm not an Informix programmer so I didn't know that onstat
> is also available on Windows.
[quoted text clipped - 4 lines]
> Informix internally. In other words, if the problem is due to the fact
> that the driver is not releasing memory, will onstat highlight that?
onstat -g ses will tell you.

Signature
Bye now,
Obnoxio
"C'est pas parce qu'on n'a rien à dire qu'il faut fermer sa gueule"
- Coluche
A smile is a gift that is free to the giver and precious to the recipient.
But giving someone the finger is free too, and I find it more personal and
sincere.
sending to informix-list
Bill Dare - 30 Jun 2005 15:46 GMT
> -----Original Message-----
> From: owner-informix-list@iiug.org [SMTP:owner-informix-list@iiug.org]
[quoted text clipped - 19 lines]
>
> onstat -g ses will tell you.
[Bill Dare]
Are you sure about that? I always thought the memory
information in onstat was strictly the memory allocated in the database
server for the user threads in that session. Is there data sent from
the client side to the server regarding memory allocation on the client?
Bill
sending to informix-list
Obnoxio The Clown - 30 Jun 2005 17:05 GMT
Bill Dare said:
>> On Behalf Of Obnoxio The Clown
>>
[quoted text clipped - 18 lines]
> server for the user threads in that session. Is there data sent from
> the client side to the server regarding memory allocation on the client?
I may have misunderstood the question: what I have seen is ODBC sessions
hogging server-side memory that never gets released, and onstat -g ses
will show how much memory a session is using server-side. If that's not
the question, then sorry, I've wasted your time.

Signature
Bye now,
Obnoxio
"C'est pas parce qu'on n'a rien à dire qu'il faut fermer sa gueule"
- Coluche
A smile is a gift that is free to the giver and precious to the recipient.
But giving someone the finger is free too, and I find it more personal and
sincere.
sending to informix-list
Obnoxio The Clown - 01 Jul 2005 00:06 GMT
Captain Pedantic said:
>> .... then sorry, I've wasted your time.
>
> In these times of turbulence and uncertainty, where even the very planet
> is
> undergoing catastrophic change (unless of course, dear reader, you are in
> the United States) it's reassuring to have things that never change.
My response to this, in full, can be found at http://amishrakefight.org/gfy/

Signature
Bye now,
Obnoxio
"C'est pas parce qu'on n'a rien à dire qu'il faut fermer sa gueule"
- Coluche
A smile is a gift that is free to the giver and precious to the recipient.
But giving someone the finger is free too, and I find it more personal and
sincere.
sending to informix-list