[omniORB] resolve_initial_references and ref counting : bug ?

Brecht Vermeulen brecht.vermeulen@rug.ac.be
Tue, 23 Oct 2001 11:43:22 +0200


Duncan,

> The counting is correct. The two references present at shutdown are the
> Echo object and the root NamingContext. The Echo is still there since
> its _var hasn't gone out of scope when shutdown() is called. The
> NamingContext is more interesting.
> 
> What happens is that the first time you call
> resolve_initial_references for a particular key, the resulting object
> reference is remembered for future use. This saves repeatedly
> performing the resolution, which might be quite costly. These stored
> references are not released until the ORB is being destroyed, which
> happens after shutdown, so shutdown reports the presence of the
> references. It's nothing to worry about.
> 
> I've added some extra tracing at traceLevel 25 that prints out the
> repository id and identity of the objects remaining at shutdown, to
> give slightly more of a hint about what's going on.
> 

Thanks for the information. Everything is indeed working as you
describe. There is one remaining object reference now in my program
which is the original reference returned by resolve_initial_references()
and it is only created the first time you call
resolve_initial_references().


The omniORB4 snapshot of yesterday is also compiling fine now !

This speed of answer and fix is the strength of open source software !

regards,
Brecht