[omniORB] IDL structure memory leak

Qi, Fong FQi at tkusa.com
Fri Oct 24 14:30:47 BST 2008


Duncan,

Thank you for your help!

I did see where the memory increased. The place was generated by
"omniidl" tool, which I cannot change it. I wonder if there is a way to
fix the problem from IDL file.

Thank you,
Fong

 
// Local call call-back function.
static void
_0RL_lcfn_42d435b25cabde4f_30000000(omniCallDescriptor* cd, omniServant*
svnt)
{
  _0RL_cd_42d435b25cabde4f_20000000* tcd =
(_0RL_cd_42d435b25cabde4f_20000000*)cd;
  GSXIDL::_impl_GsxIssueInterface* impl =
(GSXIDL::_impl_GsxIssueInterface*)
svnt->_ptrToInterface(GSXIDL::GsxIssueInterface::_PD_repoId);
  tcd->result = impl->getFullIssue(tcd->arg_0, tcd->arg_1.out());


}

-----Original Message-----
From: Duncan Grisby [mailto:duncan at grisby.org] 
Sent: Friday, October 24, 2008 1:17 PM
To: Qi, Fong
Cc: omniorb-list at omniorb-support.com
Subject: Re: [omniORB] IDL structure memory leak 

On Thursday 23 October, "Qi, Fong" wrote:

> I use omniORB for reference look up. My client side has about 1
million
> records that need to do the look up. My IDL interface uses
"struct{...}"
> data. I see a few KB size memories leak each time my CORBA client
call.
> But 1 million of small memories leak could be huge. I have attached my
> IDL file. 
> 
> Any hints or guesses are greatly appreciated!

Run your program under a memory checking tool like Purify or Valgrind.
That will show where the memory leaks from. It's possible that it's a
bug in omniORB, but it's also possible it's in your code.

Cheers,

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan at grisby.org     --
   -- http://www.grisby.org --



More information about the omniORB-list mailing list