logo       

Re: how do I debug dgc?: msg#00022

java.sun.rmi

Subject: Re: how do I debug dgc?

> I have an rmi server that won't go away after I unbind it. No other
> java process is running except it and rmiregistry.

> I have no threads of my own running, so only rmi is keeping the jvm
> alive.

Just to be sure, does this VM stay alive even beyond a period of time
on the order of the DGC lease duration (which is by default ten
minutes)? ["Client" VMs that abruptly terminate, including by
System.exit, may not have the opportunity to send the appropriate DGC
message to indicate their release of a live remote reference, and then
the server-side DGC implementation can only conclude this fact after
the client VM's DGC lease has expired (without renewal).]

Just to be sure, have you tried killing the rmiregistry process (and
waiting beyond the DGC lease duration)?

If your remote object's class happens to implement the
java.rmi.server.Unreferenced interface, does its unreferenced() method
get invoked around when you would expect the VM to go away? If so,
that would show that it's a local reference keeping the remote object
exported, not a remote one (through DGC).

> I set sun.rmi.dgc.logLevel=VERBOSE but I the output is not
> meaningful to me.

Can you post the output of this logging, or send it to me off list?

-- Peter

===========================================================================
To unsubscribe, send email to listserv@xxxxxxxxxxxx and include in the body
of the message "signoff RMI-USERS". For general help, send email to
listserv@xxxxxxxxxxxx and include in the body of the message "help".

For a list of frequently asked RMI questions please refer to:
http://java.sun.com/j2se/1.3/docs/guide/rmi/faq.html

To view past RMI-USERS postings, please see:
http://archives.java.sun.com/archives/rmi-users.html



<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise