Mem- leak with object factory (ORBit2)



I'm having problems with the factory object (Session_Manager).

I'm experiencing a slow leak in the server which occurs with repeated 
login/logout calls (It takes about a 100 login/logouts to show a noticable 
mem leak).

I'm using ORBit2 (2.3.106 - serial 19) on solaris.

The create/destroy/init and fini are as produced by orbit-idl-2.

What am I doing wrong?

-----------------------------------------------------

idl-file:-


module TEST{
		
	interface Applications{
		void logout();
	};
 	
	interface Session_Manager{
		Applications login();	
	
 	};	

};
-----------------------------------------------------

main server file:-



/*** epv structures ***/
static PortableServer_ServantBase__epv impl_EMBOSS_Applications_base_epv = {
   NULL,			/* _private data */
   NULL,			/* finalize routine */
   NULL,			/* default_POA routine */
};
static POA_EMBOSS_Applications__epv impl_EMBOSS_Applications_epv = {
   NULL,			/* _private */
   (gpointer) & impl_EMBOSS_Applications_logout,
};
static PortableServer_ServantBase__epv impl_EMBOSS_Session_Manager_base_epv = 
{
   NULL,			/* _private data */
   NULL,			/* finalize routine */
   NULL,			/* default_POA routine */
};
static POA_EMBOSS_Session_Manager__epv impl_EMBOSS_Session_Manager_epv = {
   NULL,			/* _private */
   (gpointer) & impl_EMBOSS_Session_Manager_login,
};
/*** vepv structures ***/
static POA_EMBOSS_Applications__vepv impl_EMBOSS_Applications_vepv = {
   &impl_EMBOSS_Applications_base_epv,
   &impl_EMBOSS_Applications_epv,
};
static POA_EMBOSS_Session_Manager__vepv impl_EMBOSS_Session_Manager_vepv = {
   &impl_EMBOSS_Session_Manager_base_epv,
   &impl_EMBOSS_Session_Manager_epv,
};




main (int argc, char *argv[]){

Correctly fires up the session manager;

}


TEST_Applications
impl_TEST_Session_Manager_login(impl_POA_TEST_Session_Manager *servant,
				  CORBA_Environment * ev)
{
	TEST_Applications retval;
	retval=TEST_Applications__create(servant->poa,ev);  
	return retval;
}

void
impl_TEST_Applications_logout(impl_POA_TEST_Applications * servant,
				     CORBA_Environment * ev)
{
	TEST_Applications__destroy(servant,ev);
	return;
}

--------------------------------------------------------




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]